2.5. 挂载硬盘和分区

2.5.1. mount命令

mount命令中的参数以及作用
参数          作用
-a          挂载所有在/etc/fstab中定义的文件系统
-t          指定文件系统的类型
字段                  意义
设备文件        一般为设备的路径+设备名称,也可以写唯一识别码(UUID,Universally Unique Identifier)
挂载目录        指定要挂载到的目录,需在挂载前创建好
格式类型        指定文件系统的格式,比如Ext3、Ext4、XFS、SWAP、iso9660(此为光盘设备)等
权限选项        若设置为defaults,则默认权限为:rw, suid, dev, exec, auto, nouser, async
自检            若为1则开机后进行磁盘自检,为0则不自检
优先级          若“自检”字段为1,则可对多块硬盘进行自检优先级设置

2.5.2. fdisk命令

在Linux系统中,管理硬盘设备最常用的方法就当属fdisk命令了。
fdisk命令用于管理磁盘分区,格式为“fdisk [磁盘名称]”,
它提供了集添加、删除、转换分区等功能于一身的“一站式分区服务”。
fdisk命令中的参数以及作用
参数      作用
m       查看全部可用的参数
n       添加新的分区
d       删除某个分区信息
l       列出所有可用的分区类型
t       改变某个分区的类型
p       查看分区信息
w       保存并退出
q       不保存直接退出
[root@localhost ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   40G  0 disk
├─sda1            8:1    0  600M  0 part /boot
└─sda2            8:2    0 39.4G  0 part
  ├─centos-root 253:0    0 37.4G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sdb               8:16   0   20G  0 disk
sr0              11:0    1 1024M  0 rom

输入参数n尝试添加新的分区。 系统会要求您是选择继续

输入参数p来创建主分区

输入参数e来创建扩展分区

[root@localhost media]# fdisk -l

磁盘 /dev/sda:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000dc0a0

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     1230847      614400   83  Linux
/dev/sda2         1230848    83886079    41327616   8e  Linux LVM

磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


磁盘 /dev/mapper/centos-root:40.2 GB, 40168849408 字节,78454784 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
[root@localhost media]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0xdd592f34 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
分区号 (1-4,默认 1):
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):20000000
分区 1 已设置为 Linux 类型,大小设为 9.5 GiB

命令(输入 m 获取帮助):n
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): p
分区号 (2-4,默认 2):
起始 扇区 (20000001-41943039,默认为 20000768):
将使用默认值 20000768
Last 扇区, +扇区 or +size{K,M,G} (20000768-41943039,默认为 41943039):
将使用默认值 41943039
分区 2 已设置为 Linux 类型,大小设为 10.5 GiB

命令(输入 m 获取帮助):
命令(输入 m 获取帮助):
命令(输入 m 获取帮助):
命令(输入 m 获取帮助):
命令(输入 m 获取帮助):
命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。

输入partprobe命令手动将分区信息同步到内核,而且一般推荐连续两次执行该命令,效果会更好。 如果使用这个命令都无法解决问题,那么就重启计算机吧,这个杀手锏百试百灵,一定会有用的。

[root@localhost media]# partprobe
[root@localhost media]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   40G  0 disk
├─sda1            8:1    0  600M  0 part /boot
└─sda2            8:2    0 39.4G  0 part
  ├─centos-root 253:0    0 37.4G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sdb               8:16   0   20G  0 disk
├─sdb1            8:17   0  9.5G  0 part
└─sdb2            8:18   0 10.5G  0 part
sr0              11:0    1 1024M  0 rom
# 格式分区为XFS的文件系统,则命令应为mkfs.xfs
mkfs.xfs /dev/sdb1

# 格式分区为ext4的文件系统,则命令应为mkfs.ext4
[root@localhost media]# mkfs.ext4 /dev/sdb1

[root@localhost media]# mkfs.ext4 /dev/sdb2

[root@localhost media]# mkdir -p /new/disk2
[root@localhost media]# mount /dev/sda1 /new/disk2/
[root@localhost media]# mkdir -p /new/disk2_2
[root@localhost media]# mount /dev/sda2 /new/disk2_2/

[root@localhost media]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   38G  4.8G   33G   13% /
devtmpfs                 475M     0  475M    0% /dev
tmpfs                    487M     0  487M    0% /dev/shm
tmpfs                    487M  8.0M  479M    2% /run
tmpfs                    487M     0  487M    0% /sys/fs/cgroup
/dev/sda1                597M  141M  457M   24% /boot
tmpfs                     98M     0   98M    0% /run/user/0

[root@localhost media]# mkdir -p /new/disk2_2
[root@localhost media]# mount /dev/sdb2 /new/disk2_2/
[root@localhost media]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   38G  4.8G   33G   13% /
devtmpfs                 475M     0  475M    0% /dev
tmpfs                    487M     0  487M    0% /dev/shm
tmpfs                    487M  8.0M  479M    2% /run
tmpfs                    487M     0  487M    0% /sys/fs/cgroup
/dev/sda1                597M  141M  457M   24% /boot
tmpfs                     98M     0   98M    0% /run/user/0
/dev/sdb2                 11G   41M  9.6G    1% /new/disk2_2
[root@localhost media]# mount /dev/sdb1 /new/disk2
[root@localhost media]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   38G  4.8G   33G   13% /
devtmpfs                 475M     0  475M    0% /dev
tmpfs                    487M     0  487M    0% /dev/shm
tmpfs                    487M  8.0M  479M    2% /run
tmpfs                    487M     0  487M    0% /sys/fs/cgroup
/dev/sda1                597M  141M  457M   24% /boot
tmpfs                     98M     0   98M    0% /run/user/0
/dev/sdb1                9.3G   37M  8.8G    1% /new/disk2
/dev/sdb2                 11G   41M  9.6G    1% /new/disk2_2
[root@localhost media]# cp -rf /etc/* /new/disk2
[root@localhost new]# du -sh /new/disk2
45M /new/disk2

#让这个设备文件的挂载永久有效,则需要把挂载的信息写入到配置文件中
[root@localhost new]# cat /etc/fstab

#
# /etc/fstab
# Created by anaconda on Wed Jan 30 21:29:08 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=9d17d78f-ff3c-48ea-a33e-2a177655588a /boot                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0
/dev/sdb1                   ext4    defaults       0  0
/dev/sdb2                   ext4    defaults       0  0

2.5.3. 添加交换分区

[root@localhost new]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   40G  0 disk
├─sda1            8:1    0  600M  0 part /new/disk2
└─sda2            8:2    0 39.4G  0 part
  ├─centos-root 253:0    0 37.4G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sdb               8:16   0   20G  0 disk
├─sdb1            8:17   0  9.5G  0 part
└─sdb2            8:18   0 10.5G  0 part
sr0              11:0    1 1024M  0 rom

[root@localhost new]# mkswap /dev/sdb2

[root@localhost new]# free -m
              total        used        free      shared  buff/cache   available
Mem:            972         143         580           7         248         651
Swap:          2047           0        2047

[root@localhost new]# swapon /dev/sdb2

[root@localhost new]# free -m
              total        used        free      shared  buff/cache   available
Mem:            972         151         572           7         248         643
Swap:         12761           0       12761

#开机自动挂起swap交换分区
[root@localhost new]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Wed Jan 30 21:29:08 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=9d17d78f-ff3c-48ea-a33e-2a177655588a /boot                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0
/dev/sdb2                   swap    defaults   swap   0 0

2.5.4. Linux VPS主机硬盘扩容方法-VPS新硬盘分区挂载和硬盘动态扩容