目录
一、文件系统
二、添加磁盘
三、查看磁盘信息(块设备)
四、分区
1、格式
1)MBR分区
2)GPT分区
2、管理分区
1)使用fdisk
2)使用gdisk
3)使用parted
a.交互式
b.非交互式
3、格式化分区
五、挂载
1、格式:
2、取消挂载
3、自动挂载
六、查看磁盘空间使用量
1、df
2、du
七、实操(分区+格式化+挂载)
Windows常见的文件系统:nfs、fat32
Linux常见的文件系统:ext4,xfs,vfat
nfs(Windows Network File System) :电脑使用的新式的文件系统,只能在Windows上用
fat32:跨平台,兼容性强,稳定性好,一般用于U盘,但大小有限制
ext4:配置了日志系统,软件数据容易恢复,注重稳定性
xfs:更注重性能,性能更强
vfat:类似fat32,为跨平台而设计的
如何再添加一块磁盘?
选择要配置的虚拟机(关机状态),打开虚拟机设置,硬件下 “添加” ,点击后,硬件类型选择硬盘,然后一直下一步就,最后记得“完成”+"确定"
磁盘类型推荐选择NVMe(V)[专门兼容固态盘],磁盘大小不要给太大,20G左右就足够了
[root@localhost ~]# lsblk
[root@localhost ~]# lsscsi
分区空间最大支持2.2TB;支持的分区数量:4个主分区或者3个主分区1个扩展分区
主分区(primary partition):一块硬盘最多4个主分区,主分区不可以再进行二次分区。 主分区可以直接建立文件系统,存放数据 可以用来引导、启动操作系统
扩展分区(extended partition):一块硬盘最多一个扩展分区,加主分区最多4个,不能创建文件系统;扩展分区可以划分逻辑分区(logical partition),逻辑分区可以创建文件系统,存放数据逻辑分区的数量没有限制。
——比MBR分区更先进、更灵活的磁盘分区模式
在默认情况下,GPT最多可支持128个分区
支持大于2.2TB的总容量及大于2.2TB的分区,最大支持18EB(1EB=1024PB,1PB=1024TB)
GPT分区表自带备份;向后兼容,GPT分区表上包含保护性的MBR区域
——默认将磁盘划分为mbr格式的分区;以交互方式进行操作,在菜单中选择相应功能键即可
命令:fdisk 设备名
[root@localhost ~]# fdisk /dev/sda #对sda进行分区
Command (m for help): # 进入fdisk交互界面进行分区
Command (m for help): m #输入m可查看帮助信息
Command (m for help): n #输入n创建新分区
Select (default p): p #输入p创建主分区
Command (m for help): p #输入p查看分区信息
Command (m for help): w #所有分区设置完成后,输入w保存,即可退出fdisk交互界面
——默认将磁盘划分为GPT格式的分区
[root@localhost ~]# gdisk /dev/sda #进入gdisk交互界面
Command (? for help): ? #输入?可查看帮助信息
Command (? for help): n #输入n创建新分区
Command (? for help): p #输入p查看分区情况
Command (? for help): w #输入w保存分区并退出gdisk交互界面
Do you want to proceed? (Y/N): y
[root@localhost ~]# parted /dev/sda #进入parted交互界面
(parted) help #输入help查看帮助信息
(parted) mklabel #创建一个分区表
New disk label type? yes
New disk label type? gpt
#默认为msdos形式的分区,我们要正确分区大于2TB的磁盘,应该使用gpt方式的分区表,输入gpt后回车
(parted) mkpart #进行分区操作
Partition name? []? dp2 #输入分区名称
File system type? [ext2]? #文件系统 (类型:ext4,ext3,ext2,xfs,其他...... )
Start? 0
#开始位置 (0:设定当前分区的起始点为磁盘的第一个扇区;1G:设定当前分区的起始点为磁盘的1G处开始)
End? 10G
#结束位置(-1:设定当前分区的结束点为磁盘的最后一个扇区;10G:设定当前分区的结束点为磁盘的10G处)
(parted) p #查看分区信息
(parted) quit #退出parted交互界面
——可将命令行写在脚本中,运行脚本实现一键创建;适用于远程批量管理多台主机的场景。 设置分区格式为gpt/mbr
格式: parted 设备 mkpart PART-TYPE [FS-TYPE] START END
PART-TYPE:分区类型,primary(主分区)logical(逻辑分区)extended(扩展分 区)
FS-TYPE:可选项,文件系统类型,ext4、ext3、xfs等等
START:设定磁盘分区起始点;可以为0或者numberMiB/GiB/TiB
END:设定磁盘分区结束点;可以为-1或者numberMiB/GiB/Ti
[root@localhost ~]# parted /dev/sda mklabel gpt
[root@kongd ~]# parted /dev/sda mklabel msdos
#创建1G大小的分区
[root@localhost ~]# parted /dev/sda mkpart primary 0 1G
#删除分区
[root@kongd ~]# parted /dev/sda rm 1
格式化的目的: 是为了形成文件系统,文件系统是操作系统用于明确存储设备或分区上的文件的方法和 数据结构;即在存储设备上组织文件的方法。
格式: mkfs|mkfs.xfs|mkfs.ext4 [选项] 分区的设备名
选项:
-t 文件系统类型——当命令名为mkfs时,指定要创建的文件系统的类型(如:xfs、ext4、vfat等)。 当命令名为mkfs.xfs、mkfs.ext4等时,不需要该选项。
-c——建立文件系统前先检查坏块。
-V——输出建立文件系统的详细信息。
如果已有其他文件系统创建在此分区,必须在 mkfs.xfs 命令中加上选项 -f 强行进行格式化
[root@localhost ~]# mkfs.xfs /dev/sda1
[root@localhost ~]# mkfs.ext4 /dev/sda2
[root@localhost ~]# blkid # 查看格式化后的磁盘分区信息
——将一个分区或者设备挂载至挂载点目录。
mount [-t 文件系统类型] 设备名 挂载点目录
[root@localhost ~]# mkdir /Redhat_1v_one # 创建挂载点目录
[root@localhost ~]# mount /dev/RedHat/RedHat_1v1 /Redhat_1v_one # 挂载
# 查看挂载信息
[root@localhost ~]# mount | grep /dev/mapper/RedHat-RedHat_1v1
/dev/mapper/RedHat-RedHat_1v1 on /Redhat_1v_one type xfs (rw,relatime,seclabel,attr2,inode64,logbufs=8,logbsize=32k,noquota)
umount 挂载点目录或存储设备名
[root@localhost ~]# umount /dev/sda1
手动挂载的分区会在系统重启后失效,若用户需要永久挂载分区,则需要通过编辑 /etc/fstab 文件来实现。当系统启动的时候,系统会自动地从这个文件读取信息,并且会自动将此文件中指定的 文件系统挂载到指定的目录
[root@localhost ~]# vim /etc/fstab
字段解释:
——列出文件系统的磁盘空间占用情况
格式:df [-ahikHTm] [目录或文件名]
选项:
-a:列出所有的文件系统,包括系统特有的/proc等文件系统
-k:以KB的容量显示各文件系统
-m:以MB的容量显示各文件系统
-h:以人们较易阅读的GB,MB,KB等格式自行显示
-H:以M=1000K替代M=1024K的进位方式
-T:连同该分区的文件系统名称(例如ext3)也列出
-i:不用硬盘容量,而以inode的数量来显示
df . 查看当前文件夹的占用
——显示磁盘空间使用量(统计目录或文件所占磁盘空间大小),在默认情况下,文件大小的单位是KB。
格式:du [-ahskm] 文件或目录名称
选项:
-a : 列出所有的文件与目录容量,因为默认仅统计目录下面的文件量而已;
-h : 以人们较易读的容量格式(G/M)显示;
-s : 列出总量,而不列出每个个别的目录占用了容量;
-S : 不包括子目录下的总计,与-s有点差别;
-k : 以KB列出容量显示;
-m : 以MB列出容量显示。
# 使用fdisk进行分区
Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): p # 主分区
Partition number (1-4, default 1): # 默认
First sector (2048-41943039, default 2048): # 默认
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-41943039, default 41943039): +5G
# 分配5G的内存
Created a new partition 1 of type 'Linux' and of size 5 GiB.
Command (m for help): p # 显示磁盘分区信息
Disk /dev/nvme0n2: 20 GiB, 21474836480 bytes, 41943040 sectors
Disk model: VMware Virtual NVMe Disk
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x80389886
Device Boot Start End Sectors Size Id Type
/dev/nvme0n2p1 2048 10487807 10485760 5G 83 Linux
Command (m for help): n # 再进行一次分区
Partition type
p primary (1 primary, 0 extended, 3 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2):
First sector (10487808-41943039, default 10487808):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (10487808-41943039, default 41943039): +1G
Created a new partition 2 of type 'Linux' and of size 1 GiB.
查看磁盘信息
对nvme0n2进行分区
[root@localhost ~]# pvcreate /dev/nvme0n2p1 # 创建物理卷
[root@localhost ~]# pvscan # 查看系统中的物理卷信息
[root@localhost ~]# pvcreate /dev/nvme0n2p2
# 卷组创建,RedHat是自定义的卷组名称,由/dev/nvme0n2p1 和 /dev/nvme0n2p{1,2} 构成
[root@localhost ~]# vgcreate RedHat /dev/nvme0n2p{1,2}
[root@localhost ~]# vgscan # 查看系统中的卷组信息
[root@localhost ~]# vgdisplay RedHat # 指定卷组详情
# 从卷组RedHat中创建逻辑卷,-n 后接名称, -L 后接指定大小
[root@localhost ~]# lvcreate -n RedHat_1v1 -L +1.5G RedHat
[root@localhost ~]# lvscan
# 格式化
[root@localhost ~]# mkfs.xfs /dev/RedHat/RedHat_1v1
[root@localhost ~]# mkdir /Redhat_1v_one
# 挂载
[root@localhost ~]# mount /dev/RedHat/RedHat_1v1 /Redhat_1v_one
[root@localhost ~]# cd /Redhat_1v_one/
[root@localhost Redhat_1v_one]# df .
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/RedHat-RedHat_1v1 1562624 43940 1518684 3% /Redhat_1v_one
[root@localhost Redhat_1v_one]# df . -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/RedHat-RedHat_1v1 1.5G 43M 1.5G 3% /Redhat_1v_one