磁盘挂载操作
参考连接:
https://blog.csdn.net/qq_35916684/article/details/88555315
https://blog.csdn.net/zqixiao_09/article/details/51417432
(1),查看当前磁盘状态
fdisk -l
# 结果:当前未挂载盘的名称为--vda
Disk /dev/vda: 42.9 GB, 42949672960 bytes, 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000d2717
Device Boot Start End Blocks Id System
/dev/vda1 * 2048 83884031 41940992 83 Linux
(2),进入硬盘操作界面
fdisk -u /dev/vda
# 结果
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x4ea06564 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):
(3),创建分区
1),基础步骤
# 第一行是命令
fdisk /dev/vdb
# 第二行开始就是输入的参数命令
n
p
1
回车使用默认值
回车使用默认值
2),步骤解析
- 输入
n
再按enter
开始创建一个新的分区,出现两个菜单e表示扩展分区,p表示主分区
分区号 (1-4,默认 1):1
起始 扇区 (2048-104857599,默认为 2048):2048
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-104857599,默认为 104857599):
将使用默认值 104857599
- p 查看分区,按"p"键出现提示:"Partition number(1-4)" 选择主分区号;继续输入"1" 表示第一个主分区。
命令(输入 m 获取帮助):p
磁盘 /dev/vdb:53.7 GB, 53687091200 字节,104857600 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x89f2e8d4
设备 Boot Start End Blocks Id System
/dev/vdb1 2048 104857599 52427776 83 Linux
- w 保存退出
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
(4),格式化刚刚创建的磁盘
# 根据此时生成的名称进行判断
mkfs.ext4 /dev/vdb1
# 可以在创建的时候指定 inode的个数:使用 -N 参数,示例中的数字创建出的inode的大小刚好是128M
mkfs.ext4 /dev/vdb1 -N 133307691312
(5),创建挂载目录并挂载
mkdir /vdb1
- 挂载目录
mount /dev/vdb1 /vdb1
- 查看挂载结果:
df -h
(6),配置开机自动挂载
因为mount挂载在重启服务器后会失效,所以需要将分区信息写到/etc/fstab文件中让它永久挂载:
# 先查看对应磁盘的UUID,比如vdb的,查看到的结果替换下边的xxx
ls -l /dev/disk/by-uuid
# 修改对应的内容
vi /etc/fstab
UUID=xxx /当前磁盘挂载的目录 ext4 defaults 0 0
(7),解除磁盘挂载
# 0,大前提: /dev/sdd1 是磁盘的名称,/app 是挂载的目录名称;这两者在操作中是等价的.
# 1,直接 umount 的方式卸载
umount /dev/sdd1
# 2,强制卸载
umount -f /TomcatLog
# 3,如果此时无法卸载并报如下错误
umount2: Device or resource busy
umount: /TomcatLog: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
umount2: Device or resource busy
# 解决方法:
# 步骤1:
fuser -cu /TomcatLog/
/TomcatLog/: 9590c(root)
# 步骤2:
fuser -ck /TomcatLog/
# 步骤3:
umount /TomcatLog
# 可以正常卸载了,另外附参数详解:
-c表示显示所有挂载该设备的进程;
-u表示显示正在操作该设备的用户名;
-k表示杀死所有访问该设备的进程(注意:这将杀死访问该设备的进程,如果有其他设备也在用这个进程,记得卸载后重启该服务进程避免影响正常业务);