Skip to content

Centos 7 磁盘挂载

小于2T磁盘挂载

查看当前硬盘

bash
fdisk -l

执行样例

shell
$ fdisk -l

磁盘 /dev/xvda:53.7 GB, 53687091200 字节,104857600 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000bba15

    设备 Boot      Start         End      Blocks   Id  System
/dev/xvda1   *        2048     2099199     1048576   83  Linux
/dev/xvda2         2099200   104857599    51379200   8e  Linux LVM

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

磁盘 /dev/xvdf:1073.7 GB, 1073741824000 字节,2097152000 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

此板块以 磁盘 /dev/xvdf 为例进行操作

创建硬盘分区

对磁盘 /dev/xvdf进行操作

bash
$ fdisk /dev/xvdf

根据提示,依次输入“n”、“p”、“1”、回车两次、“wq”,分区就开始了,通常完成很快的

注:在为执行wq时操作只在内存中记录,如果不想修改了,可以输入q退出,如果确认执行过程,输入wq

执行样例

bash
$ fdisk /dev/xvdf
欢迎使用 fdisk (util-linux 2.23.2)。

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

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

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

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

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

格式化分区

bash
$ mkfs.ext4 /dev/xvdf1

注意:

格式化分区,注意不是格式化磁盘

格式化磁盘:mkfs.ext4 /dev/xvdf 与 格式化分区的区别在于:分区多了后面的编号

怎么知道是:/dev/xvdf1

使用fdisk -l命令,在结果中找到对应的磁盘信息:

bash
磁盘 /dev/xvdf:1073.7 GB, 1073741824000 字节,2097152000 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x758820fa

    设备 Boot      Start         End      Blocks   Id  System
/dev/xvdf1            2048  2097151999  1048574976   83  Linux

就可以看到 磁盘 /dev/xvdf 他有一个分区:/dev/xvdf1

执行样例

bash
$ mkfs.ext4 /dev/xvdf1
mke2fs 1.42.9 (28-Dec-2013)
Discarding device blocks: 完成                            
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536000 inodes, 262143744 blocks
13107187 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2409627648
8000 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
        4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
        102400000, 214990848

Allocating group tables: 完成                            
正在写入inode表: 完成                            
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成

创建需要挂载的目录【可选】

bash
$ mkdir /data/data

挂载硬盘到目录

bash
# mount 分区路径     挂载目录
$ mount /dev/xvdf1 /data

开机自动挂载

查看逻辑分区UUID

bash
# blkid 分区路径
$ blkid /dev/xvdf1

如:

bash
$ blkid /dev/xvdf1
/dev/xvdf1: UUID="1c522d3b-f70f-4e35-976e-ad06fb40d33a" TYPE="ext4"

编辑配置文件,推荐使用UUID,因为重启后逻辑分区号有改变的风险

bash
$ vi /etc/fstab

挂载方式一【逻辑分区号】:

bash
# /etc/fstab
# Created by anaconda on Tue Nov 17 17:32:39 2020
#
# 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=d0fa4d11-be35-4259-adea-3f08ae0334f5  /boot                   xfs      defaults        0 0
/dev/xvdf1                                 /data                   ext4     defaults        1 1

挂载方式二【UUID 推荐】:

bash
# /etc/fstab
# Created by anaconda on Tue Nov 17 17:32:39 2020
#
# 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=d0fa4d11-be35-4259-adea-3f08ae0334f5  /boot                   xfs      defaults        0 0
UUID=1c522d3b-f70f-4e35-976e-ad06fb40d33a  /data                   ext4     defaults        1 1

重新加载配置文件

bash
$ mount -a

验证,有回显即为成功

bash
$ mount |grep /data

执行样例

bash
$ mount |grep /data
/dev/xvdf1 on /data type ext4 (rw,relatime,data=ordered)

2T—16T磁盘挂载

由于MBR分区支持最大容量只有2T 如果超过2T的话 就要使用gpt分区

首先使用parted命令把硬盘转换成gpt分区

如没有parted命令我需要安装,可以通过yum -y install parted命令安装

sh
[root@node1 ~]# parted /dev/sdb
GNU Parted 3.1
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.

# 由MBR转为GPT磁盘 
(parted) mklabel gpt                                                      
警告/Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue?

是/Yes/否/No? Yes

# 设定您要做的分区的type以及size(根据实际情况来) 
# 0 ,-1表示起点容量和终点容量,其差就是分区容量,单位是M 
# mkpart primary 0 -1 表示划分全部容量
(parted) mkpart primary 0 -1
警告/Warning: The resulting partition is not properly aligned for best performance.

忽略/Ignore/放弃/Cancel? Ignore 

(parted) p                                                                
Model: LSI LSI (scsi)
Disk /dev/sdb: 16.8TB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name     Flags
 1      17.4kB  16.8TB  16.8TB               primary

(parted) quit                                                             
信息/Information: You may need to update /etc/fstab.

格式化分区并挂载

sh
[root@node1 ~]# mkfs.ext4 /dev/sdb1                                       
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
512270336 inodes, 4098142471 blocks
204907123 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=4294967296
125066 block groups
32768 blocks per group, 32768 fragments per group
4096 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
        4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
        102400000, 214990848, 512000000, 550731776, 644972544, 1934917632, 
        2560000000, 3855122432

Allocating group tables: 完成                            
正在写入inode表: 完成                            
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成

挂载前

sh
[root@node1 ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                  63G     0   63G    0% /dev
tmpfs                     63G     0   63G    0% /dev/shm
tmpfs                     63G  9.9M   63G    1% /run
tmpfs                     63G     0   63G    0% /sys/fs/cgroup
/dev/mapper/centos-root   50G  1.3G   49G    3% /
/dev/sda1               1014M  150M  865M   15% /boot
/dev/mapper/centos-home  1.1T   33M  1.1T    1% /home
tmpfs                     13G     0   13G    0% /run/user/0

挂载

sh
# 新建目录(可选)
[root@node1 ~]# mkdir /data
# 挂载
[root@node1 ~]# mount /dev/sdb1 /data

挂载后

sh
[root@node1 ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                  63G     0   63G    0% /dev
tmpfs                     63G     0   63G    0% /dev/shm
tmpfs                     63G  9.9M   63G    1% /run
tmpfs                     63G     0   63G    0% /sys/fs/cgroup
/dev/mapper/centos-root   50G  1.3G   49G    3% /
/dev/sda1               1014M  150M  865M   15% /boot
/dev/mapper/centos-home  1.1T   33M  1.1T    1% /home
tmpfs                     13G     0   13G    0% /run/user/0
/dev/sdb1                 16T  9.2M   15T    1% /data

添加至fstab 让系统启动自动挂载

通过blkid /dev/sdb1 命令获取UUID

sh
[root@node1 ~]# blkid /dev/sdb1
/dev/sdb1: UUID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" TYPE="ext4"

打开fstab

sh
[root@node1 ~]# vi /etc/fstab

添加挂载信息指定文件系统ext4

sh
# /etc/fstab
# Created by anaconda on Wed Feb  1 01:51:47 2023
#
# 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=5a20a45d-78a9-4600-96da-802162852706 /boot                   xfs     defaults        0 0
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /data                   ext4    defaults        1 1
/dev/mapper/centos-home /home                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0

使挂载生效

sh
[root@node1 ~]# mount -a

验证,有回显即成功

sh
[root@node1 ~]# mount |grep /data
/dev/sdb1 on /data type ext4 (rw,relatime,seclabel,data=ordered)

ext4暂不支持16TB以上的单分区空间

超过16T的磁盘挂载

安装xfs

sh
[root@node1 ~]# yum install kmod-xfs xfsprogs

载入xfs文件系统模块

bash
[root@node1 ~]# modprobe xfs

查看是否载入了xfs模块

sh
[root@node1 ~]# lsmod |grep xfs

用xfs格式化并挂载

sh
[root@node1 ~]# mkfs.xfs /dev/sdb1 
[root@node1 ~]# mount /dev/sdb1 /data/

添加至fstab 让系统启动自动挂载

sh
# 通过blkid /dev/sdb1 命令获取UUID
[root@node1 ~]# blkid /dev/sdb1
/dev/sdb1: UUID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" TYPE="xfs"

打开fstab

sh
[root@node1 ~]# vi /etc/fstab

添加挂载信息指定文件系统xfs

sh
# /etc/fstab
# Created by anaconda on Wed Feb  1 01:51:47 2023
#
# 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=5a20a45d-78a9-4600-96da-802162852706 /boot                   xfs     defaults        0 0
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /data                   xfs     defaults        1 1
/dev/mapper/centos-home /home                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0

使挂载生效

sh
[root@node1 ~]# mount -a

验证,有回显即成功

sh
[root@node1 ~]# mount |grep /mnt/sdb1
/dev/sdb1 on /data type xfs (rw,relatime,seclabel,data=ordered)