目录
- 概念描述
- 一、磁盘介绍
- 二、分区介绍
- 三、常用文件系统
- 四、挂载
- 实际运用
- 一、lsblk 查看系统硬盘信息
- 二、df 查看分区使用情况
- 三、blkid查看块设备属性
- 四、MBR分区格式
- 五、格式化文件系统
- 六、mount挂载
- 七、umount卸载
- 八、开机自动挂载
- 九、GPT分区格式
概念描述
当我们本机空间不足需要添加新硬盘时,需要按照一定的步骤才能使新硬盘立刻投入使用:
一、磁盘介绍
在Linux当中常见的磁盘类型有:
- IDE接口类型:主要用于个人计算机方面,优点是价格便宜但是数据传输慢。
- SCSI接口类型:主要用于服务器领域,数据传输快而且支持热插拔。
- SATA接口类型:串口磁盘,主要用于个人计算机
- NVMe接口类型:固态硬盘接口,传输速度快,但是价格比较贵,利用内存的机制读写数据。
二、分区介绍
我们在Linux当中常用的分区格式有两种:
MBR分区格式:比较古老的分区格式,最初只能划分四个主分区,后来添加个了一个拓展分区功能,拓展分区可以换分出多个逻辑分区,最大支持2.2T磁盘容量的容量。
- IDE接口硬盘:最多可以划分59个逻辑分区。
- SCSI接口硬盘:最多可划分11个逻辑分区。
GPT分区格式: 一块硬盘最多可以划分128个主分区,最大支持18EB磁盘容量的磁盘。
注:1EB=1024PB,1PB=1024TB,1TB=1024GB
三、常用文件系统
文件系统又被称为文件管理系统,只有赋予了分区文件系统,分区才能够正常使用。
-
CentOS5:分区默认使用文件系统格式为ext3
-
CentOS6:分区默认使用文件系统格式为ext4
-
– ext4:有日志记录功能,当服务器意外宕机时,可以通过日志记录把没有保存的数据,在系统再次重启时快速恢复回来。
-
– ext4:单个文件系统最大支持1EB的分区容量,单个文件最大支持存储16TB容量的数据。
-
CentOS7:分区默认使用文件系统格式为xfs
– xfs:有日志记录功能,当服务器意外宕机时,可以通过日志记录把没有保存的数据,在系统再次重启时快速恢复回来,恢复速度比ext4快。
– xfs:单个文件系统最大支持8EB的分区容量,单个文件最大支持存储500TB容量的数据。
– xfs:单个文件读写数据的速度可达每秒4GB -
swap文件系统:交换分区,把硬盘的空间充当内存使用。
四、挂载
在Linux当中用户是无法直接使用硬件设备的,硬件设备在系统中都是以只读的形式存在,要想去使用它们,就必须进行挂载。
- 挂载就是给用户提供一个可以使用的接口。
- 挂载点必须是一个空目录
- 一个文件系统不允许重复挂载到多个目录下
- 一个目录不允许重复挂载多个文件系统
实际运用
一、lsblk 查看系统硬盘信息
lsblk(list block):用于列出当前系统内所有磁盘以及磁盘内的分区信息。
命令格式:lsblk [- 选项] [- 设备名]
常用选项:
- d: 仅显示磁盘本身,不会显示分区信息
- f:列出磁盘分区的文件系统类型
示例:
[root@jiangjiang ~]# lsblk //查看系统内的硬盘信息
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part ├─centos-root 253:0 0 17G 0 lvm /└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sr0 11:0 1 4.3G 0 rom
##sd代表SCSI硬盘,sda代表第一块硬盘,sda1代表第一个分区,
##解析
NAME 设备名
MAJ:MIN 主设备号:次设备号 内核根据主设备号识别磁盘
RM 是否为可卸载设备 1表示可以卸载,0表示不可卸载
SIZE 设备的容量大小
RO 表示设备是否为只读,1为只读,0为非只读
TYPE 设备类型 disk:硬盘 part:分区 lvm:逻辑卷 rom:只读
MOUNTPOINT 设备挂载点(swap没有挂载点)[root@jiangjiang ~]# lsblk -d /dev/sda // 查看指定硬盘的信息,不显示分区信息
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk[root@jiangjiang ~]# lsblk -f //列出所有磁盘分区内使用的文件系统类型
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs dbfac77f-f4d8-4f16-a6ba-ae40649d37ff /boot
└─sda2 LVM2_memb hmeeIn-qCOt-hqTM-nOTV-Zz1t-8ke5-8XyMpa ├─centos-root xfs 19ff192c-11de-42e2-b30b-b50991041902 /└─centos-swap swap 9fce7b0b-82bd-453d-bda5-a7797ff7d123 [SWAP]
sr0 iso9660 CentOS 7 x86_64 2018-11-25-23-54-16-00 [root@jiangjiang ~]# lsblk -df /dev/sda1 //列出指定磁盘分区内使用的文件系统类型
NAME FSTYPE LABEL UUID MOUNTPOINT
sda1 xfs dbfac77f-f4d8-4f16-a6ba-ae40649d37ff /boot
二、df 查看分区使用情况
df命令用于查看正在使用中的文件系统使用情况
命令格式:df [-选项…] [-参数…]
常用选项:
- -T 显示文件系统类型
- -h 以人类易懂的方式显示(GB,MB,KB)
示例:
[root@jiangjiang ~]# df //查看当前正在使用中的文件系统使用情况
文件系统 1K-块 已用 可用 已用% 挂载点
/dev/mapper/centos-root 17811456 4775800 13035656 27% /
devtmpfs 914516 0 914516 0% /dev
tmpfs 931624 0 931624 0% /dev/shm
tmpfs 931624 10312 921312 2% /run
tmpfs 931624 0 931624 0% /sys/fs/cgroup
/dev/sda1 1038336 182892 855444 18% /boot
tmpfs 186328 12 186316 1% /run/user/42
tmpfs 186328 0 186328 0% /run/user/0[root@jiangjiang ~]# df -T //查看当前正在使用中的文件系统使用情况并显示其文件系统类型
文件系统 类型 1K-块 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 17811456 4775800 13035656 27% /
devtmpfs devtmpfs 914516 0 914516 0% /dev
tmpfs tmpfs 931624 0 931624 0% /dev/shm
tmpfs tmpfs 931624 10312 921312 2% /run
tmpfs tmpfs 931624 0 931624 0% /sys/fs/cgroup
/dev/sda1 xfs 1038336 182892 855444 18% /boot
tmpfs tmpfs 186328 12 186316 1% /run/user/42
tmpfs tmpfs 186328 0 186328 0% /run/user/0[root@jiangjiang ~]# df -Th //以人类易懂的方式查看当前正在使用中的文件系统使用情况并显示其文件系统类型
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 17G 4.6G 13G 27% /
devtmpfs devtmpfs 894M 0 894M 0% /dev
tmpfs tmpfs 910M 0 910M 0% /dev/shm
tmpfs tmpfs 910M 11M 900M 2% /run
tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 179M 836M 18% /boot
tmpfs tmpfs 182M 12K 182M 1% /run/user/42
tmpfs tmpfs 182M 0 182M 0% /run/user/0
三、blkid查看块设备属性
blkid命令用于查看块设备的简要属性信息
命令格式:blkid [-选项…] [-参数…]
常用命令:
- -U:通过UUID查找对应的分区
- -L:通过卷标查找对应的分区
- -s:指定显示块设备的某一项属性
–s UUID [-参数] :显示指定设备的UUID(没有参数的话默认显示所有设备的)
–s LABEL [-参数] :显示指定设备的LABEL(没有参数的话默认显示所有设备的)
–s TYPE [-参数] :显示指定设备的文件系统类型(没有参数的话默认显示所有设备的)
示例:
[root@jiangjiang ~]# blkid //查看所有块设备属性
/dev/mapper/centos-root: UUID="19ff192c-11de-42e2-b30b-b50991041902" TYPE="xfs"
/dev/sda2: UUID="hmeeIn-qCOt-hqTM-nOTV-Zz1t-8ke5-8XyMpa" TYPE="LVM2_member"
/dev/sr0: UUID="2018-11-25-23-54-16-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
/dev/sda1: UUID="dbfac77f-f4d8-4f16-a6ba-ae40649d37ff" TYPE="xfs"
/dev/mapper/centos-swap: UUID="9fce7b0b-82bd-453d-bda5-a7797ff7d123" TYPE="swap"[root@jiangjiang ~]# blkid -U 2018-11-25-23-54-16-00 //查找对应UUID的分区
/dev/sr0[root@jiangjiang ~]# blkid -L 'CentOS 7 x86_64' //查找对应卷标的分区
/dev/sr0[root@jiangjiang ~]# blkid -s UUID //查看所有块设备的UUID
/dev/mapper/centos-root: UUID="19ff192c-11de-42e2-b30b-b50991041902"
/dev/sda2: UUID="hmeeIn-qCOt-hqTM-nOTV-Zz1t-8ke5-8XyMpa"
/dev/sr0: UUID="2018-11-25-23-54-16-00"
/dev/sda1: UUID="dbfac77f-f4d8-4f16-a6ba-ae40649d37ff"
/dev/mapper/centos-swap: UUID="9fce7b0b-82bd-453d-bda5-a7797ff7d123" [root@jiangjiang ~]# blkid -s LABEL //查看所有块设备的卷标
/dev/sr0: LABEL="CentOS 7 x86_64" [root@jiangjiang ~]# blkid -s TYPE //查看所有块设备的文件系统类型
/dev/mapper/centos-root: TYPE="xfs"
/dev/sda2: TYPE="LVM2_member"
/dev/sr0: TYPE="iso9660"
/dev/sda1: TYPE="xfs"
/dev/mapper/centos-swap: TYPE="swap"
四、MBR分区格式
- fdisk用于查看磁盘的使用情况和 磁盘分区(MBR分区格式)
- 命令格式:fdisk [-选项…] [设备路径]
- 常用选项:-l 列出磁盘分区表类型以及分区信息
分区时常用的选项:
- m:获取命令帮助
- p:列出磁盘分区详情
- n:新建分区
- q:不保存操作退出(类似vim里不保存退出)
- w:保存退出
示例:
[root@jiangjiang ~]# fdisk /dev/sdb //将/dev/sdb设备分区
欢迎使用 fdisk (util-linux 2.23.2)。更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。Device does not contain a recognized partition table
使用磁盘标识符 0x54527eb1 创建新的 DOS 磁盘标签。命令(输入 m 获取帮助):p //查看当前设备分区详情磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x54527eb1设备 Boot Start End Blocks Id System命令(输入 m 获取帮助):n //新建一个分区
Partition type:p primary (0 primary, 0 extended, 4 free)e extended
Select (default p): //默认为主分区,直接回车就好
Using default response p
分区号 (1-4,默认 1): //分区号,无需修改直接默认回车
起始 扇区 (2048-41943039,默认为 2048): //起始扇区,无需修改直接默认回车
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+10G //指定扇区大小(K,M,G)
分区 1 已设置为 Linux 类型,大小设为 10 GiB命令(输入 m 获取帮助):p //查看当前设备分区详情磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x54527eb1设备 Boot Start End Blocks Id System
/dev/sdb1 2048 20973567 10485760 83 Linux命令(输入 m 获取帮助):
//按照以上操作第一个分区就已经分好了
五、格式化文件系统
mkfs 命令用于在分区上建立文件系统
常用文件系统:
- ext4
- xfs
命令格式:
mkfs.ext4 分区设备路径 //将分区格式化为ext4类型文件系统
mkfs.xfs 分区设备路径 //将分区格式化为xfs类型文件系统
[root@jiangjiang ~]# mkfs.xfs /dev/sdb1 //将sdb1分区格式化为xfs类型文件系统[root@jiangjiang ~]# blkid /dev/sdb1 //查看设备分区的文件系统类型
/dev/sdb1: UUID="6cf37dce-06e8-402c-97f0-85bf0eab12d6" TYPE="xfs"
六、mount挂载
mount命令用于挂载文件系统
常用格式:mount 设备路径 指定挂载点目录
示例:
[root@jiangjiang /]# mkdir print //创建挂载点目录
[root@jiangjiang /]# mount /dev/sdb1 /print/ //挂载文件系统
[root@jiangjiang /]# df -Th //查看正在使用中的分区信息
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 17G 4.6G 13G 27% /
devtmpfs devtmpfs 894M 0 894M 0% /dev
tmpfs tmpfs 910M 0 910M 0% /dev/shm
tmpfs tmpfs 910M 11M 900M 2% /run
tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 179M 836M 18% /boot
tmpfs tmpfs 182M 12K 182M 1% /run/user/42
tmpfs tmpfs 182M 0 182M 0% /run/user/0
/dev/sdb1 xfs 10G 33M 10G 1% /print[root@jiangjiang /]# df -Th /dev/sdb1
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/sdb1 xfs 10G 33M 10G 1% /print
七、umount卸载
umount命令用于卸载文件系统
命令格式:umount 文件系统挂载点目录
示例:
[root@jiangjiang /]# umount /print/ //卸载文件系统
[root@jiangjiang /]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 17G 4.6G 13G 27% /
devtmpfs devtmpfs 894M 0 894M 0% /dev
tmpfs tmpfs 910M 0 910M 0% /dev/shm
tmpfs tmpfs 910M 11M 900M 2% /run
tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 179M 836M 18% /boot
tmpfs tmpfs 182M 12K 182M 1% /run/user/42
tmpfs tmpfs 182M 0 182M 0% /run/user/0
八、开机自动挂载
按照以上步骤挂载我们称之为临时挂载,虽然磁盘可以立刻投入使用但是当你服务器关机或重启之后又需要重新挂载,我们想要开机自动挂载就需要写入配置文件。
/etc/fstab目录:用于系统存放文件系统信息,当系统启动时,系统会读取里面的内容并将相应的设备进行自动挂载到相应的目录。
内容详解:
/dev/mapper/centos-root / xfs defaults 0 0
...
第一字段:设备路径
第二字段:挂载点目录
第三字段:文件系统类型
第四字段:挂载参数,deaults默认值即可(没有过多研究,见谅)
第五字段:是否对文件系统进行备份 0否 1是
第六字段:是否检查文件系统顺序 允许为0,1,2 ;0表示不检查,按照优先级排列 1最高
##最后两个字段没有必要太过研究,默认值就行 备份肯定有专门的备份服务器 挂载优先级直接放到当前内容的最下面就行
mount的两个常用命令
- -a :读取/etc/fstab文件 并将没有挂载的磁盘立即挂载
- -o :选项后可跟额外挂载参数
remount命令:重新挂载文件系统,在文件系统出错时或者重新挂载文件系统时可以用到。
九、GPT分区格式
gdisk用于查看磁盘分区详情和分区(GPT分区格式)
命令格式:gdisk [-选项] [-参数]
常用选项:-l 列出磁盘分区表及分区详情
分区时常用的选项:
- ?:查看命令帮助
- p:查看分区列表
- n:新建分区
- d:删除分区
- w:保存退出
- q:不保存退出
示例:
[root@jiangjiang /]# gdisk /dev/sdc
GPT fdisk (gdisk) version 0.8.10Partition table scan:MBR: not presentBSD: not presentAPM: not presentGPT: not presentCreating new GPT entries.Command (? for help): p //查看分区表
Disk /dev/sdc: 20971520 sectors, 10.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): F2941291-8C93-4920-ABA6-816B94E0CFDD
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 20971486
Partitions will be aligned on 2048-sector boundaries
Total free space is 20971453 sectors (10.0 GiB)Number Start (sector) End (sector) Size Code NameCommand (? for help): n //新建分区
Partition number (1-128, default 1): //分区号,无需修改,回车
First sector (34-20971486, default = 2048) or {+-}size{KMGTP}: //起始扇区,无需指定,回车
Last sector (2048-20971486, default = 20971486) or {+-}size{KMGTP}: +1G //结束扇区,也就是指定分区容量 +{KMGTP}
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): //输入分区类型,可以不用管直接回车就行
Changed type of partition to 'Linux filesystem'Command (? for help): p //查看分区表
Disk /dev/sdc: 20971520 sectors, 10.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): F2941291-8C93-4920-ABA6-816B94E0CFDD
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 20971486
Partitions will be aligned on 2048-sector boundaries
Total free space is 18874301 sectors (9.0 GiB)Number Start (sector) End (sector) Size Code Name1 2048 2099199 1024.0 MiB 8300 Linux filesystemCommand (? for help):
同样的,在用GPT分区格式分区后,格式化文件系统然后挂载就可以直接使用了。