该项仅在虚拟机下进行测试,与实体机有一定区别。
准备环境
- 虚拟机:VirtualBox(6.0.10)
新增磁盘工作
事情的开始你需要有一块磁盘。
1. 操作步骤
- 打开虚拟机;
- 在界面中点击设置并选中存储;
- 可以选择已有的控制器也可以新建控制器,点击添加存储附件(虚拟硬盘);
- 控制器选项有 SAS、SATA、IDE(古老的存在,现在很少用了),控制器即对应不同类型的硬盘;
- 创建新的虚拟盘,默认 VDI 文件类型,动态分配;
- 分配期望的大小;
- 确认创建。
磁盘进行 RAID
为了数据更安全,更快捷,需要进行 RAID。
此处缺乏 RAID 实践,以后可能会补上,参考资料:
需要补充的是,虽然很多资料都说明硬件 RAID 更具优势,但是在现在高速 Nvme 硬盘的情况下是否依然效率更高呢 👦?
磁盘分区工作
磁盘是按柱面进行分区的,磁盘分区信息登记的地点为磁盘分区表open in new window,磁盘分区表存放位置为 0 磁道 0 柱面 1 扇区。
该扇区(1 扇区)划分为,前 446 字节为系统引导信息,中间 64 字节为分区表,后 2 字节为分区结束标识。
修改磁盘分区常用工具为:
- fdisk:处理 MBR 分区,MBR 分区小于 2T;
- parted:处理 GPT 分区,GPT 分区大于 2T。
1. 操作步骤
- 首先添加一块虚拟硬盘到系统中;
- 使用
fdisk -l
获取新增硬盘的信息; - 确认以
3P+1E(3L)
分区为示例; - 根据新增硬盘信息输入
fdisk /dev/sdb
; - 可以输入
m
查看帮助; - 输入
n
新增分区; - 输入
p
选择主分区; - 分区 number,default 为 1,回车即可;
- first sector,default 2048,回车即可;
- last sector,设置 1G 大小,即输入
+1G
; - 输入
p
查看结果,确认无误后继续; - 循环上面的步骤,开始第二个主分区;
- 输入
n
新增分区; - 输入
p
选择主分区; - 分区 number,default 为 2,回车即可;
- first sector,default 2099200,回车即可;
- last sector,设置 1G 大小,即输入
+1G
; - 输入
p
查看结果,确认无误后继续; - 循环上面的步骤,开始第三个主分区;
- 输入
n
新增分区; - 输入
p
选择主分区; - 分区 number,default 为 3,回车即可;
- first sector,default 4196352,回车即可;
- last sector,设置 1G 大小,即输入
+1G
; - 输入
p
查看结果,确认无误后继续; - 循环上面的步骤,开始扩展分区;
- 输入
n
新增分区; - 输入
e
选择主分区; - first sector,default 6293504,回车即可;
- last sector,default 12582911,回车选择剩余所有空间即可;
- 输入
p
查看结果,确认无误后继续; - 接下来在扩展分区中新建逻辑分区;
- 输入
n
新增分区; - first sector,default 6293504,回车即可;
- last sector,设置 1G 大小,即输入
+1G
; - 输入
p
查看结果,确认无误后继续; - 循环上面的步骤,开始第二个逻辑分区;
- 输入
n
新增分区; - first sector,default 6293504,回车即可;
- last sector,设置 1G 大小,即输入
+1G
; - 输入
p
查看结果,确认无误后继续; - 循环上面的步骤,开始第三个逻辑分区;
- 输入
n
新增分区; - first sector,default 6293504,回车即可;
- last sector,default 12582911,回车选择剩余所有空间即可;
- 输入
p
查看结果,确认无误后继续; - 输入
w
保存分区结果; - 输入
partprobe /dev/sdb
通知分区信息修改了,或者重启虚拟机。
磁盘分区类型
磁盘的分区类型往往决定该分区具体的作用。
1. 操作步骤
- 使用
fdisk -l
获取新增硬盘的信息; - 根据硬盘信息选择
fdisk /dev/sdb
; - 输入
m
查看帮助; - 输入
l
查看分区类型; - 输入
t
修改分区 system Id; - 输入
7
选择第七个分区; - 根据提示输入
L
查看 codes; - 输入
8e
; - 输入
p
查看结果,确认无误后继续; - 输入
w
保存分区结果; - 输入
partprobe /dev/sdb
通知分区信息修改了,或者重启虚拟机。
分区文件系统
磁盘需要借助文件系统open in new window才能实现磁盘管理,数据存取。
1. 操作步骤
- 使用
fdisk -l
获取新增硬盘的信息; - 根据硬盘信息选择
fdisk /dev/sdb
; - 输入
mkfs -t ext4 /dev/sdb1
来创建 ext4 文件系统; - 或输入
mkfs.xfs /dev/sdb2
来创建 xfs 文件系统; - 查看输入,可以观察到生成了一定数量的 inodes 和 blocks,这是关键所在。
inode 作用,存储文件的属性信息,同时存放指向文件实体的指针。
当存放文件提示:no space left on device,可能是 inodes 数量满了。
排查二连:
df -h
,df -i
。
挂载磁盘分区
挂载分区前需要完成以上工作。
挂载分区分为临时挂载和永久挂载。
1. 临时挂载分区操作步骤
- 输入
mount -t ext4 /dev/sdb1 /mnt
; - 创建文件测试
echo hello > /mnt/hello.txt
; - 验证
cat /mnt/hello.txt
; - 查看挂载结果
cat /proc/mounts
; - 卸载
umount /mnt
。
2. 永久挂载分区操作步骤
- 永久实际上是开机自动挂载;
- 输入
cat /etc/fstab
查看输入格式; - 输入
blkid
查看 /dev/sdb2 的 UUID; - 编辑
/etc/fstab
; - 追加
UUID=8c0514b8-70a9-4389-a17c-823e55ff8789 /mnt xfs defaults 0 0
; - 或使用分区也可
/dev/sdb2 /mnt xfs defaults 0 0
; - 重启输入
cat /proc/mounts
或df -h
挂载结果。
补充:扩展 swap
发现 swap 早期分配的太小了不够用可以追加。
1. 操作步骤
- 输入
free -m
查看 swap 大小; - 输入
fdisk -l
查看可用的分区; - 无可用分区就按照 磁盘分区工作 新建一个分区;
- 输入
mkswap /dev/sdb3
格式化分区为 swap; - 输入
swapon -a /dev/sdb3
启用 swap 分区; - 输入
free -m
验证结果。