Ubuntu格式化硬盘,并实现自动挂载

需求/背景:Ununtu系统安装在sda,硬盘sdb上安装了另一个系统,但该硬盘上还保留有1T左右的未使用为格式的硬盘空间,
现在要对其进行格式化为ext4,并将其设置为开机启动时自动挂载在/data目录下,硬盘使用情况如图:
Ubuntu格式化硬盘,并实现自动挂载
1.执行$ fdisk /dev/sdb
Ubuntu格式化硬盘,并实现自动挂载
输入m,可以查看支持的操作模式:
Ubuntu格式化硬盘,并实现自动挂载
输入p,查询当前硬盘分区:
Ubuntu格式化硬盘,并实现自动挂载
或者 输入F,查询硬盘中未分区的磁盘空间:
Ubuntu格式化硬盘,并实现自动挂载
输入n,用未分配的磁盘空间 创建新的分区,同时键入 必要的硬盘信息,如 4 - 该磁盘分区在硬盘中的序号,5366642688 - 磁盘起始位置,7814037134 -磁盘终止位置。如果默认不需要修改时,可以直接回车
Ubuntu格式化硬盘,并实现自动挂载
输入p,查询新的硬盘分区情况:
Ubuntu格式化硬盘,并实现自动挂载
输入w或者退出磁盘命令
输入$ mkfs.ext4 /dev/sdb4 格式化新的磁盘
Ubuntu格式化硬盘,并实现自动挂载
此过程中可能会报错 sdb4未找到或者 大小不明确,这是因为系统没有读到磁盘分区修改造成的,运行$ ls -l /dev/sdb* 可以看到并没有出现sdb4的盘
Ubuntu格式化硬盘,并实现自动挂载
解决方法: 执行 $ partprobe,让系统重新读取分区表,识别到sdb4,即可格式化该磁盘
Ubuntu格式化硬盘,并实现自动挂载
执行$ mount /dev/sdb4 /data, 将格式化后的磁盘 挂载在/data目录下
Ubuntu格式化硬盘,并实现自动挂载
执行 df -h 查看挂载情况
Ubuntu格式化硬盘,并实现自动挂载

自动挂载磁盘
方法一:编辑 /etc/fstab文件,在fstab文件最后增加 /dev/sdb4 /data ext4 defaults 0 0
0 0 表示开机不检查磁盘。
Ubuntu格式化硬盘,并实现自动挂载
但实践中发现这个方法有可能造成 Ubuntu启动时,系统检查项不通过,原因不明。

方法二:添加系统启动脚本
在/etc/init.d/ 目录下,新建脚本auto_Configuration.sh,脚本内容如下:

#!/bin/sh
#chkconfig:2345 80 90
#description:Mount the hard disk automatically
mount /dev/sdb4 /data

chkconfig的解释:
chkconfig有几个等级:
0:表示关机
1:表示单用户模式
2:表示无网络链接多用户命令行模式
3:表示有网络链接多用户命令行模式
4:表示不可用情况
5:表示带图形界面的多用户模式
6:表示重新启动

所以chkconfig:2345就代表在2345的等级下启动这个服务
后面的80 90分别是启动优先级和关闭优先级

为该脚本增加运行权限$ chmod +x /etc/init.d/auto_Configuration.sh
执行$ chkconfig --add auto_Configuration.sh 添加该脚本到启动项中即可。

chkconfig可能需要手动安装
Ubuntu格式化硬盘,并实现自动挂载
Ubutun 安装完chkconfig后,需要执行$ sudo ln -s /usr/lib/insserv/insserv /sbin/insserv
否则执行chkconfig时会报错 /sbin/insserv: No such file or directory
Ubuntu格式化硬盘,并实现自动挂载
正确运行时应该显示如下内容:
Ubuntu格式化硬盘,并实现自动挂载
完成后 重启查看自动挂载是否生效。