当前位置:首页 » 编程软件 » 磁盘分区脚本案例

磁盘分区脚本案例

发布时间: 2023-05-04 00:49:41

㈠ 求教,如何使用shell脚本实现自动分区

用fdisk 的脚本自动执行可以参考如下shell脚本:

#makepartition
ddif=/dev/zeroof=/dev/mmcblk1bs=1024count=1024
fdisk/dev/mmcblk1<<EOF
n
p
1
2048
+100M
n
p
2


t
1
c
a
1
w
EOF

㈡ 求一个linux下单个硬盘自动分区,格式化,删除分区并重启的脚本

脚本可以写,但你这个需求会不会有问题?
1、因为是开机后自动执行,执行完成后又自动重启,那么脚本写好后,你电脑就会不停的自动重启,周而复始,而且不好恢复。
2、建立分区、格式化、删除完全没有顺序吗?分区大小是多少?建立多少个分区?

㈢ 请问怎么用脚本给Linux系统分区

代码如下:
#!/bin/bash
#Author: MOS
#Script name: funPart.sh
#Date & Time: 2012-10-10/12:20:53
#Version: 1.0.1
#Description:
# Disk_Mod(){
#使用if匹配模式,使用for循环判断是否存在,如果有,则取其绝对路径,跳出循环,如果不匹配或文件不存在,跳出函数,返回66
if [[ -n $1 && $1 =~ "/dev/sd[a-z]" ]];
then local Darray=(ls /dev/sd[a-z])
for i in ${Darray[*]};do
[[ "$i" == "$1" ]] && Sd=$i && break
done
else
return 66
fi
#当匹配成功,进入选择,告诉用户,是否继续,输错的话进入无限循环,当用户选择Y,则清空目标分区,且跳出while循环
while :;do
read -p "Warning!!!This operation will clean $Sd data. Next=y,Quit=n [y|n]: " Choice
case $Choice in
y)
dd if=/dev/zero of=$Sd bs=512 count=1 &> /dev/null && break || return 67 ;; n)
exit 88 ;;
*)
echo "Invalid choice,please choice again." ;;
esac
done
#使用echo传递给fdisk进行分区,如果此命令失败,则跳转出去,错误值68,需要注意的是,有时候这个返回值很诡异,笔者之前成功与否都是返回的1,后来重启之后,就好了,如果慎重的话,可以对创建的分区,进行判断,不过就需要使用其他工具截取相关字段了,虽有些小麻烦,但无大碍 echo -e "n\np\n1\n\n+100M\nn\np\n2\n\n+1024M\nw\n"|fdisk /dev/sdb &> /dev/null || return 68 #格式化之前,让内核重新读取磁盘分区表,值得注意的是,有的系统版本,使用partprobe无效,譬如笔者的环境是rhel5.8,而rhel6.0以后,这个命令就很危险了,而使用partx -a /dev/sdb则效果更好...此项需慎重,如果格式化失败,则告知把失败的分区定义成变量,且跳出函数,并带出错误值69
partprobe Part=fdisk -l /dev/$Sd|tail -2|cut -d" " -f1`
for M in ${Part[*]};do
! mke2fs -j $M &> /dev/null && ErrorPart=$M && return 69
done
return 0
}
#下面代码,调用函数,接收函数返回值,根据返回值进行判断哪里出错。
Disk_Mod $1
Res=$?
[ $Res -eq 0 ] && exit 0
[ $Res -eq 66 ] && echo "Error! Invalid input."
[ $Res -eq 67 ] && echo "Error! Command -> dd <- Faild."
[ $Res -eq 68 ] && echo "Error! Command -> fdisk <- Faild."
[ $Res -eq 69 ] && echo "Error! Command -> mke2fs <- Faild."
如果有什么不懂的话可以去看看《Linux就该这么学》这本书,非常适合新手学习Linux。

㈣ 怎么用shell脚本 对磁盘进行分区管理

用shell脚本基本无法实现。
首先,shell脚本方便管理的方面是比如监控磁盘使用情况,定期删除无用文件等这些工作。而你想要的是扩容,这基本和shell script的使用不怎么沾边。
其次,如果非要说用shell可以实现你想要的功能的话,那就是用script编写一个扩容工具,而直接扩容是有很大的危险性的,所以你写的script要很完善。
最后,综上述,干嘛不直接上网down一个扩容工具?

热点内容
oracle测试sql 发布:2025-07-08 03:16:54 浏览:973
php壁纸源码 发布:2025-07-08 03:04:26 浏览:320
android应用层 发布:2025-07-08 02:42:32 浏览:301
大唐存储销量 发布:2025-07-08 02:41:11 浏览:582
脚本怎么打开 发布:2025-07-08 02:41:06 浏览:822
贵州电信iPtv升级服务器地址 发布:2025-07-08 02:38:48 浏览:412
电脑怎么链接本地服务器 发布:2025-07-08 02:34:22 浏览:147
android调试webview 发布:2025-07-08 02:26:28 浏览:358
压缩袋鞋子 发布:2025-07-08 02:21:30 浏览:752
为什么安卓打吃鸡感觉有延迟 发布:2025-07-08 02:09:32 浏览:168