Appearance
磁盘操作
基本操作
为了进行本章学习,我们在虚拟机中添加一个新的磁盘。
以易识别的单位查看分区情况
df -h
显示结果如下
$ df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 8.5M 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/mapper/cl-root 6.2G 1.8G 4.5G 28% /
/dev/sda1 976M 129M 781M 15% /boot
tmpfs 378M 0 378M 0% /run/user/1000
查看计算机中硬盘与分区信息
fdisk –l
显示结果如下
- /dev/sdb 为第二个磁盘
$ sudo fdisk -l
Disk /dev/sda:8 GiB,8589934592 字节,16777216 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xf38e7418
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/sda1 * 2048 2099199 2097152 1G 83 Linux
/dev/sda2 2099200 16777215 14678016 7G 8e Linux LVM
Disk /dev/sdb:4 GiB,4294967296 字节,8388608 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘分区
下面来对新增的磁盘 /dev/sdb
进行分区操作
创建第一个 2G 的主分区
$ sudo fdisk /dev/sdb [sudo] hj 的密码: 欢迎使用 fdisk (util-linux 2.32.1)。 命令(输入 m 获取帮助):n 分区类型 p 主分区 (0个主分区,0个扩展分区,4空闲) e 扩展分区 (逻辑分区容器) 选择 (默认 p):p 分区号 (1-4, 默认 1): 1 第一个扇区 (2048-8388607, 默认 2048): 上个扇区,+sectors 或 +size{K,M,G,T,P} (2048-8388607, 默认 8388607): +2G 创建了一个新分区 1,类型为“Linux”,大小为 2 GiB。 命令(输入 m 获取帮助):p Disk /dev/sdb:4 GiB,4294967296 字节,8388608 个扇区 单元:扇区 / 1 * 512 = 512 字节 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0xc7c91aa0 设备 启动 起点 末尾 扇区 大小 Id 类型 /dev/sdb1 2048 4196351 4194304 2G 83 Linux 命令(输入 m 获取帮助):
将剩余空间分给扩展分区
命令(输入 m 获取帮助):n 分区类型 p 主分区 (1个主分区,0个扩展分区,3空闲) e 扩展分区 (逻辑分区容器) 选择 (默认 p):e 分区号 (2-4, 默认 2): 第一个扇区 (4196352-8388607, 默认 4196352): 上个扇区,+sectors 或 +size{K,M,G,T,P} (4196352-8388607, 默认 8388607): 创建了一个新分区 2,类型为“Extended”,大小为 2 GiB。 命令(输入 m 获取帮助):p 设备 启动 起点 末尾 扇区 大小 Id 类型 /dev/sdb1 2048 4196351 4194304 2G 83 Linux /dev/sdb2 4196352 8388607 4192256 2G 5 扩展
将扩展分区分出一个 1G 的逻辑分区
命令(输入 m 获取帮助):n 所有主分区的空间都在使用中。 添加逻辑分区 5 第一个扇区 (4198400-8388607, 默认 4198400): 上个扇区,+sectors 或 +size{K,M,G,T,P} (4198400-8388607, 默认 8388607): +1G 创建了一个新分区 5,类型为“Linux”,大小为 1 GiB。 命令(输入 m 获取帮助):p 设备 启动 起点 末尾 扇区 大小 Id 类型 /dev/sdb1 2048 4196351 4194304 2G 83 Linux /dev/sdb2 4196352 8388607 4192256 2G 5 扩展 /dev/sdb5 4198400 6295551 2097152 1G 83 Linux
将剩下的扩展分区再分配给逻辑分区(直接回车)
命令(输入 m 获取帮助):n 所有主分区的空间都在使用中。 添加逻辑分区 6 第一个扇区 (6297600-8388607, 默认 6297600): 上个扇区,+sectors 或 +size{K,M,G,T,P} (6297600-8388607, 默认 8388607): 创建了一个新分区 6,类型为“Linux”,大小为 1021 MiB。 命令(输入 m 获取帮助):p 设备 启动 起点 末尾 扇区 大小 Id 类型 /dev/sdb1 2048 4196351 4194304 2G 83 Linux /dev/sdb2 4196352 8388607 4192256 2G 5 扩展 /dev/sdb5 4198400 6295551 2097152 1G 83 Linux /dev/sdb6 6297600 8388607 2091008 1021M 83 Linux
将分区写入磁盘
命令(输入 m 获取帮助):w
查看分区结果
$ sudo fdisk /dev/sdb -l 设备 启动 起点 末尾 扇区 大小 Id 类型 /dev/sdb1 2048 4196351 4194304 2G 83 Linux /dev/sdb2 4196352 8388607 4192256 2G 5 扩展 /dev/sdb5 4198400 6295551 2097152 1G 83 Linux /dev/sdb6 6297600 8388607 2091008 1021M 83 Linux
格式化
磁盘进行了分区,并不能直接使用,必须进行格式化创建文件系统后才可使用。下面依次对主分区与逻辑分区进行格式化。
$ sudo mkfs -t ext4 /dev/sdb1
$ sudo mkfs -t ext4 /dev/sdb5
$ sudo mkfs -t ext4 /dev/sdb6
磁盘挂载
磁盘分区、格式化后要挂载后才可以使用。一个目录就是挂载点,我们通过这个目录来访问磁盘分区。
创建目录/www
来挂载 /dev/sdb1
$ sudo mkdir /www
$ sudo mount /dev/sdb1 /www
查看挂载点
$ sudo mount | grep sdb
也可以使用 df 命令操作
sudo df
结果如下
文件系统 1K-块 已用 可用 已用% 挂载点
devtmpfs 1916944 0 1916944 0% /dev
tmpfs 1934568 0 1934568 0% /dev/shm
tmpfs 1934568 8668 1925900 1% /run
tmpfs 1934568 0 1934568 0% /sys/fs/cgroup
/dev/mapper/cl-root 6486016 1794984 4691032 28% /
/dev/sda1 999320 131696 798812 15% /boot
tmpfs 386912 0 386912 0% /run/user/1000
/dev/sdb1 1998672 6144 1871288 1% /www
取消挂载
$ sudo umount /dev/sdb1
自动挂载
手动挂载后重起计算机后,还需要重新挂载,可以通过修改/etc/fstab 来让系统启动时自动挂载。
编辑文件
sudo vim /etc/fstab
修改内容如下
...
/dev/sdb1 /www ext4 defaults 0 0
...
使用 mount –a 进行测试,mount -a 命令是根据/etc/fstab 设置挂载分区
sudo mount -a
执行命令没有错误提示即表示配置正确