版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
作为其他部门的驻场技术员,小乔利用df命令检测了各个目录的磁盘空间占用情况,发现服务器空间已经所剩无几。凭借丰富的经验,小乔清理了一些临时文件、日志文件,但发现并不能有效改善当前的状况,于是小乔考虑扩展磁盘空间。对于扩充磁盘空间,小乔在学校学习过,但是现在印象模糊,她通过简单的搜索、查询了解到VMwareWorkstationPro17支持为虚拟机配置多种类型的虚拟磁盘控制器,包括IDE、SCSI、SATA和NVMe。随着IDE接口在物理硬件中逐渐被淘汰,SATA已成为消费级及普通商用场景的主流选择;而专业服务器和工作站则普遍采用基于SCSI协议的高性能接口(如SAS),以满足高吞吐量与高可靠性的需求。因此,小乔决定通过虚拟SCSI控制器添加一块高性能虚拟磁盘。掌握Linux系统中磁盘分区的原则及创建磁盘分区命令fdisk。掌握Linux系统中文件系统的创建与检查,能够使用相关命令执行文件系统的创建与检查等任务。掌握Linux系统中文件系统的手动挂载、卸载与自动挂载等,能够使用相关命令执行文件系统的挂载等任务。掌握磁盘配额的设置方法,能够使用相关命令执行磁盘配额的管理等任务。能够使用相关命令创建、扩展、缩小和删除逻辑卷。具备独立解决问题的能力和精益求精的工匠精神1创建磁盘分区2创建与检查文件系统3开机自动挂载文件系统手动挂载与卸载文件系统456管理磁盘配额管理逻辑卷9.1创建磁盘分区9.1.1了解磁盘分区的概念和原则安装Linux系统之前,需要根据实际情况划分磁盘空间。1.磁盘分区的概念磁盘分区是指在磁盘的自由空间(指磁盘上没有被分区的部分)上创建的分区,将一块物理磁盘划分成多个能够被格式化和单独使用的逻辑单元。就像在Windows系统中使用的C、D、E、F盘一样。划分磁盘分区的目的是使各分区各司其职,方便用户使用,因此磁盘分区的划分并不是对磁盘的物理功能的划分,只是一种软件上的划分。在Linux系统中需要有多个磁盘分区,比如,根分区、/boot分区、swap分区(交换分区)等。9.1.1了解磁盘分区的概念和原则2.磁盘分区的格式常见的磁盘分区格式包括MBR和GPT两种,两者具有不同的特点。(1)主引导记录(MasterBootRecord,MBR)分区的特点。最多支持4个主分区。在Linux系统中使用扩展分区和逻辑分区最多可以创建15个分区。由于分区中的数据以32bit存储,所以使用MBR分区支持的最大空间为2TB。(2)全局唯一标识分区表(GUIDPartitionTable,GPT)分区的特点。是统一可扩展固件接口(UnifiedExtensibleFirmwareInterface,UEFI)标准的一部分,主板必须支持UEFI标准。
GPT分区支持的最大空间为128PB(1PB=1024TB)。可以定义128个分区。没有主分区、扩展分区和逻辑分区等概念,所有分区都能被格式化。
gdisk管理工具可以创建GPT分区。9.1.1了解磁盘分区的概念和原则3.磁盘分区的类型Linux系统中的磁盘分区有3种类型:主分区、扩展分区、逻辑分区。(1)主分区:一种可以直接使用的分区类型,可以被用作引导分区来启动操作系统。(2)扩展分区:实际上在磁盘中是看不到扩展分区的,也无法直接使用。在扩展分区上可以划分逻辑分区。(3)逻辑分区:相当于一块存储介质,在扩展分区上可以创建多个逻辑分区,用来存储数据。4.MBR格式磁盘分区的原则在为磁盘创建分区时,各种类型的分区数量并不是无限的,需要遵循以下几个原则。(1)主分区:最多只能有4个。(2)扩展分区最多只能有一个;主分区加扩展分区最多有4个;不能写入数据,只能包含逻辑分区。(3)逻辑分区:用来写入数据。图9-1磁盘分区示意9.1.2了解硬件设备的命名规则我们知道,Linux系统中“一切皆文件”,硬件设备也不例外。Linux系统对各个常用的硬件设备都有规范的命名规则,目的是让用户通过设备文件的名称大致了解设备的属性及分区信息。Linux系统常见的硬件设备及文件名称如表9-1所示。表9-1
Linux系统常见的硬件设备及文件名称硬件设备文件名称IDE(IntegratedDrireElectronics,电子集成驱动器)磁盘/dev/hd[a-d],字母a~d代表系统中第一~第四个IDE磁盘SCSI(SmallComputerSystemInterface,小型计算机系统接口)/SATA(SerialAdvancedTechnologyAttachment,串行ATA)磁盘/dev/sd[a-z],字母代表不同的磁盘,sda表示第一个SATA/SCSI磁盘,sdb表示第二个,以此类推NVMe(Non-VolatileMemoryExpress,非易失性存储器标准)磁盘/dev/nvme[0-9]n[1-9],第一个数字表示控制器的编号,n是固定字符,第二个数字表示该控制器下的命名空间编号。例如,nvme0n1表示第一个NVMe控制器下的第一个命名空间,即第一个NVMe磁盘光驱/dev/cdrom鼠标/dev/mouse9.1.2了解硬件设备的命名规则执行fdisk-l命令可以查看当前系统中的所有硬件设备,那么返回的文件名称/dev/hda5包含哪些信息?具体含义如图9-2所示。图9-2硬件设备文件名称的含义下面基于IDE类型的磁盘和SCSI类型的磁盘来详细讲解分区数量及表示方法。/dev/hda1表示第一个IDE磁盘的第一个主分区。/dev/hda2表示第一个IDE磁盘的第二个主分区。/dev/hda5表示第一个IDE磁盘的第一个逻辑分区。/dev/hda8表示第一个IDE磁盘的第四个逻辑分区。/dev/hdb1表示第二个IDE磁盘的第一个主分区。/dev/sda1表示第一个SCSI磁盘的第一个主分区。9.1.3查看系统中的块设备与分区:lsblk命令lsblk命令用于以树状图形式列出块设备信息,包括磁盘、分区以及挂载点等信息,命令格式如下。lsblk[选项]lsblk命令的常用选项如表9-2所示。选项说明-l以列表形式显示所有设备名称-S获取SCSI磁盘的列表-b设备名称用于列出指定设备的信息-m显示磁盘和分区的归属账号权限信息9.1.3查看系统中的块设备与分区:lsblk命令【例9-1】
使用lsblk命令查看当前系统中所有可用的块设备。[root@Server
~]#
lsblkNAME
MAJ:MIN
RM
SIZE
RO
TYPE
MOUNTPOINTsda
8:0
0
40G
0
disk├─sda1
8:1
0
1G
0
part
/boot└─sda2
8:2
0
39G
0
part
├─klas-root
253:0
0
37.4G
0
lvm
/
└─klas-swap
253:1
0
1.6G
0
lvm
[SWAP]9.1.3查看系统中的块设备与分区:lsblk命令该命令返回信息中各个参数的解释如下。NAME:块设备名。MAJ:MIN:主要和次要设备号。RM:设备是否为可移动设备。注意,在本例中,设备sr0的RM值为1,说明它是可移动设备。SIZE:设备容量。RO:设备是否为只读。在本例中,所有设备的RO值为0,表明它们不是只读的。TYPE:块设备是否是磁盘或磁盘上的一个分区。在本例中,sda为磁盘(disk),而sr0为只读存储器(rom)。MOUNTPOINT:设备挂载的挂载点。9.1.4磁盘分区:fdisk命令fdisk命令是Linux系统中常用的磁盘分区命令,其常用的功能有两个。(1)使用fdisk-l命令查询当前系统中已有分区的详情。(2)使用fdisk命令加上要分区的磁盘作为参数,完成磁盘分区操作。本节主要介绍如何利用fdisk命令对新增磁盘进行分区。9.1.4磁盘分区:fdisk命令1.在虚拟机上新增3块SCSI磁盘(1)打开VMwareWorkstationPro17,选择“虚拟机”→“设置”命令,打开“虚拟机设置”对话框,单击“添加”按钮,如图9-3所示。(2)弹出“添加硬件向导”对话框,在“硬件类型”列表中选择“硬盘”,如图9-4所示,单击“下一步”按钮。
图9-3
单击“添加”按钮图9-4
选择“硬盘”9.1.4磁盘分区:fdisk命令(3)选择“虚拟磁盘类型”为“SCSI”,如图9-5所示,单击“下一步”按钮。注意,如果虚拟机没有关闭,则“虚拟磁盘类型”不能选择“IDE”。(4)选择磁盘,默认选中第一个选项“创建新虚拟磁盘”,如图9-6所示,单击“下一步”按钮。图9-5
选择磁盘类型图9-6
选中“创建新虚拟磁盘”9.1.4磁盘分区:fdisk命令(5)指定磁盘容量,默认为20GB,可以根据实际情况设置,这里设置“最大磁盘大小”为10GB,如图9-7所示,单击“下一步”按钮。(6)指定磁盘文件,默认的文件名是虚拟机的名称加上扩展名.vmdk,可以根据实际情况设置,如图9-8所示,单击“完成”按钮。图9-7
设置磁盘大小图9-8
指定磁盘文件名称(7)完成以上步骤后,新磁盘添加成功。9.1.4磁盘分区:fdisk命令从以上信息可以看出,磁盘/dev/sdb还未划分分区。磁盘添加成功之后,重启Linux系统。重启后,使用fdisk
-l命令可查看到新添加的磁盘文件的名称为/dev/sdb。
[root@Server
~]#
fdisk
-lDisk
/dev/sdb:10
GiB,10737418240
字节,20971520
个扇区磁盘型号:VMware
Virtual
S单元:扇区
/
1
*
512
=
512
字节扇区大小(逻辑/物理):512
字节
/
512
字节I/O
大小(最小/最佳):512
字节
/
512
字节......设备
启动
起点
末尾
扇区
大小
Id
类型/dev/sda1
*
2048
2099199
2097152
1G
83
Linux/dev/sda2
2099200
83886079
81786880
39G
8e
Linux
LVMDisk
/dev/mapper/klas-root:37.38
GiB,40131100672
字节,78381056
个扇区单元:扇区
/
1
*
512
=
512
字节扇区大小(逻辑/物理):512
字节
/
512
字节I/O
大小(最小/最佳):512
字节
/
512
字节Disk
/dev/mapper/klas-swap:1.64
GiB,1740636160
字节,3399680
个扇区单元:扇区
/
1
*
512
=
512
字节扇区大小(逻辑/物理):512
字节
/
512
字节I/O
大小(最小/最佳):512
字节
/
512
字节……3.使用fdisk命令分区在终端中执行fdisk/dev/sdb命令,结果如下。[root@Server~]#fdisk/dev/sdb欢迎使用fdisk(util-linux2.35.2)。更改将停留在内存中,直到您决定将更改写入磁盘。使用写入命令前请三思。设备不包含可识别的分区表。创建了一个磁盘标识符为0x47b17185的新DOS磁盘标签。命令(输入m获取帮助):提示后输入相应的命令并按Enter键,fdisk命令的常用子命令如表9-3所示。9.1.4磁盘分区:fdisk命令9.1.4磁盘分区:fdisk命令表9-3
fdisk命令的常用子命令子命令功能a开关可启动标志d删除分区l列出已知分区类型m输出此菜单n添加新分区p输出分区表q退出而不保存更改t更改分区类型u更改显示/记录单位w将分区表写入磁盘并退出x更多功能(仅限专业人员)(2)输入p,按Enter键,列出当前分区表,从执行结果可以看出,在磁盘/dev/sdb上还没有任何分区。命令(输入m获取帮助):pDisk/dev/sdb:10GiB,10737418240字节,20971520个扇区磁盘型号:VMwareVirtualS……命令(输入m获取帮助):9.1.4磁盘分区:fdisk命令(3)输入n,按Enter键,创建一个新分区,再输入p,按Enter键,表示此处选择创建主分区(也可分别输入e和l,表示选择创建扩展分区和逻辑分区)。再输入数字1,按Enter键,创建第一个主分区sdb1,并输入+1G,设置第一个主分区的大小为1GiB。命令(输入
m
获取帮助):n分区类型
p
主分区
(0
primary,
0
extended,
4
free)
e
扩展分区
(逻辑分区容器)选择
(默认
p):p分区号
(1-4,
默认
1):
1第一个扇区
(2048-20971519,
默认
2048):
<Enter>最后一个扇区,+/-sectors
或
+size{K,M,G,T,P}
(2048-20971519,
默认
20971519):
+1G创建了一个新分区
1,类型为“Linux”,大小为
1
GiB。命令(输入
m
获取帮助):9.1.4磁盘分区:fdisk命令(4)输入w,按Enter键,将第一个主分区的分区信息写入磁盘分区表并退出。命令(输入
m
获取帮助):w分区表已调整。将调用
ioctl()
来重新读分区表。正在同步磁盘。9.1.4磁盘分区:fdisk命令命令(输入
m
获取帮助):pDisk
/dev/sdb:10
GiB,10737418240
字节,20971520
个扇区磁盘型号:VMware
Virtual
S单元:扇区
/
1
*
512
=
512
字节……设备
启动
起点
末尾
扇区
大小
Id
类型/dev/sdb1
2048
2099199
2097152
1G
83
Linux/dev/sdb2
2099200
3123199
1024000
500M
83
Linux/dev/sdb3
3123200
13608959
10485760
5G
5
扩展9.1.4磁盘分区:fdisk命令要删除磁盘分区,在fdisk命令操作菜单中输入d,按Enter键,并选择相应的磁盘分区即可。删除后输入w,按Enter键,保存修改并退出。命令(输入
m
获取帮助):w分区表已调整。将调用
ioctl()
来重新读分区表。正在同步磁盘。9.1.4磁盘分区:fdisk命令9.2创建与检查文件系统9.2.1了解常见的文件系统文件系统(FileSystem)是指磁盘上有特定格式的一片物理空间。Linux系统支持多种文件系统。随着Linux系统的不断发展,它支持的文件系统类型也在迅速增加,达到了数十种,目前常见的类型有ext2、ext3、ext4、XFS、ISO9660、swap等。(1)ext2:为解决ext文件系统的缺陷而设计的可扩展的、高性能的文件系统类型。ext2类型文件系统又称为二级扩展文件系统。它是Linux系统支持的文件系统中使用较多的类型,并且在速度和CPU利用率上较为突出,ext2类型文件系统是Linux系统中标准的文件系统。ext2类型文件系统存取文件的性能极好,对于中、小型的文件更显优势。尽管Linux系统可以支持的文件系统种类繁多,但是2000年以前,几乎所有的Linux系统发行版本都以ext2类型文件系统作为默认的文件系统。(2)ext3:ext2的下一代,ext3类型文件系统是一款日志文件系统,能够在系统异常的情况下避免文件系统资料丢失,并且能够修复数据的不一致及错误。但是,当磁盘容量较大时,所需的修复时间也会延长,无法百分之百保证资料不会丢失,将整体磁盘的每个写入动作的细节预先记录,在发生异常时,可追踪到被中断的部分,尝试修复。(3)ext4:ext3的改进版本。ext4类型文件系统是RHEL6的默认文件管理系统,支持的存储容量高达1EB,还能够包含无限多的子目录。另外,该文件系统能够批量分配块,极大地提高了读写效率。9.2.1了解常见的文件系统(4)XFS:高性能的日志文件系统,优势在于发生意外可以快速恢复可能被破坏的文件。其强大的日志功能只需要较低的计算和存储性能即可实现,支持的最大存储容量达18EB,可以满足多种需求。(5)ISO9660:光盘使用的文件系统类型,Linux系统对光盘已有了很好的支持。它不仅提供对光盘的读写,还可以实现光盘刻录。(6)swap:在Linux系统中作为交换分区使用。为了使用户在读取或写入文件时不用关心底层的磁盘结构,Linux内核中的软件层为用户程序提供了一个虚拟文件系统(VirtualFileSystem,VFS)接口,这样,用户在实际操作文件时,就会统一对这个虚拟文件系统进行操作,而不用关注各种文件系统的不同。9.2.2为分区创建文件系统:mkfs命令9.1节讲解了在新的磁盘上创建分区的方法,但是,新建的分区还不能直接用于存储数据,需要在分区上创建文件系统,此操作也称为格式化。这个操作实际上类似于Windows系统中的格式化磁盘。由于在分区中创建文件系统会清除分区中的数据,并且不可恢复,因此在分区中创建文件系统之前,须确定分区中的数据不再使用。mkfs命令用于创建文件系统,命令格式如下。mkfs[选项]文件系统
9.2.2为分区创建文件系统:mkfs命令mkfs命令的常用选项如表9-4所示。选项说明-ttype指定要创建的文件系统的类型-c建立文件系统之前先检查坏块-lfile从文件file中读取磁盘坏块列表-V显示建立文件系统的详细信息表9-4
mkfs命令的常用选项【例9-2】
在分区/dev/sdb1上建立ext4类型的文件系统,并检查坏块和显示详细信息。[root@Server~]#mkfs-text4-V-c/dev/sdb1mkfs,来自util-linux2.35.2mkfs.ext4-c/dev/sdb1……写入超级块和文件系统账户统计信息:
已完成9.2.2为分区创建文件系统:mkfs命令9.2.3检查文件系统:fsck命令fsck命令主要用于检查文件系统的正确性,并对磁盘进行修复,该命令的命令格式如下。fsck[选项]文件系统fsck命令的常用选项如表9-5所示。表9-5
fsck命令的常用选项选项说明-t指定文件系统类型-s强制按顺序(串行)执行检查文件系统-C显示完整的检查进度-d列出fsck命令的debug结果-a如果检查中发现错误,则自动修复-r如果检查中发现错误,则询问是否修复9.2.3检查文件系统:fsck命令【例9-3】
检查/dev/sdb1分区是否有错误,如果有错误,则自动修复。[root@Server~]fsck-a/dev/sdb1fsck,来自util-linux2.35.2/dev/sdb1:没有问题,11/65536文件,12955/262144块9.3手动挂载与卸载文件系统9.3.1挂载文件系统:mount命令为了系统的安全,一般情况下,都是使用普通用户的身份完成各种操作,但是有时候,普通用户需要拥有root用户的权限,如在安装软件时。如果使用su命令切换为root用户,效率就会比较低,而且会暴露root管理员的密码,增大系统的安全风险,使用sudo命令可以避免这种问题。sudo是Linux系统的管理命令,通过给普通用户提升权限来完成原本只有root管理员才能完成的任务,命令格式如下。sudo[选项]命令名称sudo命令的常用选项如表8-4所示。表8-4sudo命令常用选项9.3.1挂载文件系统:mount命令创建好的文件系统需要挂载到Linux系统中才能使用,挂载文件系统的目录称为挂载点。Linux系统提供了两个专门的挂载点/mnt和/media。但是在一般情况下,会创建一个新的目录作为挂载点。可以在系统引导过程中自动挂载文件系统,也可以使用mount命令手动挂载,mount命令的命令格式如下。mount[选项]设备
挂载点mount命令的常用选项如表9-6所示。表9-6
mount命令的常用选项选项说明-t指定要挂载的文件系统的类型-r以只读方式挂载文件系统-w以可写的方式挂载文件系统-a挂载/etc/fstab文件中记录的设备9.3.1挂载文件系统:mount命令【例9-4】
把文件系统类型为ext4的分区/dev/sdb1挂载到新建目录/linux下。[root@Server~]#mkdir/linux[root@Server~]#mount/dev/sdb1/linux[root@Server~]#cd/linux/[root@Serverlinux]#lslost+found9.3.2卸载文件系统:umount命令可以使用umount命令卸载已经挂载的文件系统,命令格式如下。umount设备/挂载点
【例9-5】
将挂载的/linux目录卸载。[root@Serverlinux]#cd[root@Server~]#umount/linux注意
使用umount命令卸载目录之前,需退出挂载的目录,否则会提示“设备忙”。9.3.3显示挂载情况:df命令df命令用来显示文件系统的磁盘空间占用情况,显示磁盘被占用了多少空间、还剩多少空间等信息,还可以显示分区的挂载情况,命令格式如下。df[选项]df命令的常用选项如表9-7所示。表9-7
df命令的常用选项选项说明-a显示所有文件系统的磁盘空间使用情况-i显示i节点信息-k以KB为单位显示磁盘空间-h以合适的单位显示磁盘空间-T显示文件系统的类型-t显示指定类型的文件系统的磁盘空间使用情况9.3.2卸载文件系统:umount命令【例9-6】
使用df命令查看文件系统的挂载情况。[root@Server
~]#
df文件系统
1K-块
已用
可用
已用%
挂载点devtmpfs
4096
0
4096
0%
/dev……dev/sda1
1038336
178680
859656
18%
/boot9.3.4在新的分区上读写文件完成磁盘分区、创建文件系统、挂载文件系统等操作后,接下来就可以在新的分区上读写文件了。通过以下步骤在新的分区上读写文件,就像是在Windows系统中使用U盘或者移动磁盘存储文件一样。(1)执行mount命令将/dev/sdb1文件系统挂载到/linux目录下。[root@Server~]#mount/dev/sdb1/linux[root@Server~]#cd/linux/[root@Serverlinux]#lslost+found说明:进入/linux目录后,执行ls命令可以看到在工作目录下有lost+found文件夹,表明/dev/sdb1文件系统被成功挂载到/linux目录下。(2)在/linux目录下创建abc目录。[root@Serverlinux]#mkdirabc[root@Serverlinux]#lsabclost+found9.3.4在新的分区上读写文件(3)进入abc目录,创建study文件,并在该文件中输入一些信息,保存并退出。[root@Serverlinux]#cdabc[root@Serverabc]#touchstudy[root@Serverabc]#vimstudy[root@Serverabc]#catstudyEnglishChineseFrance(4)退出abc目录,执行卸载命令,然后查看/linux目录下是否还存在lost+found文件夹和abc目录。[root@Serverabc]#cd..[root@Serverlinux]#cd..[root@Server/]#umount/linux/[root@Server/]#cd/linux/[root@Serverlinux]#ls[root@Serverlinux]#从以上信息可以看出,abc目录是保存在分区/dev/sdb1的文件系统上的。9.3.4在新的分区上读写文件(5)再次执行mount命令,将/dev/sdb1文件系统挂载到/linux目录下,进入/linux目录即可看到之前创建的文件。[root@Server
/]#
mount
/dev/sdb1
/linux[root@Server
/]#
cd
/linux/[root@Server
linux]#
lsabc
lost+found[root@Server
linux]#
df
-h文件系统
容量
已用
可用
已用%
挂载点devtmpfs
4.0M
0
4.0M
0%
/dev……/dev/sdb1
976M
2.6M
907M
1%
/linux9.4开机自动挂载文件系统9.4.1认识/etc/fstab文件在设置自动挂载之前,先来认识/etc/fstab文件。这个文件记录了引导系统时需要挂载的文件系统及文件系统的类型和挂载参数等。因此,在系统启动过程中会读取该文件的内容,根据该文件的配置参数挂载相应的文件系统。执行cat/etc/fstab命令,得到的该文件的信息如下。#
/etc/fstab#
Created
by
anaconda
on
Sun
Jun
25
11:28:59
2023……#/dev/mapper/klas-root
/
xfs
defaults
0
0UUID=5a3132de-cc4c-46b7-ab8b-144b15311e17
/boot
xfs
defaults
0
0/dev/mapper/klas-swap
none
swap
defaults
0
09.4.1认识/etc/fstab文件以上信息中的每一行都代表一个文件系统,每一行又包含6列内容,各列内容的含义如下。第一列:device,磁盘设备文件或者该设备的Label(标签)或UUID(UniversalUniqueIdentifier,通用唯一标识符)。第二列:Mountpoint,磁盘设备的挂载点,即要挂载到哪个目录下。第三列:filesystem,文件系统的类型,包括ext2、ext3、reiserfs、nfs、vfat等。第四列:options,挂载选项,控制挂载后的文件系统行为。一般设置为defaults。其他比较常用的参数有auto和noauto等,auto表示在启动或执行mount-a命令时自动挂载,noauto表示只能通过手动输入mount命令挂载。第五列:dump,能否被dump命令(dump是一个用来备份的命令)作用。通常这个参数的值为0(不备份)或者1(备份)。第六列:pass,控制系统启动时
fsck
工具(文件系统检查修复)的检查顺序。通常这个参数的值为0(不检查)、1(优先检查)或者2(次优先检查)。9.4.2设置开机自动挂载文件系统【例9-7】
设置将类型为ext4的文件系统/dev/sdb1自动挂载到/linux目录下。[root@localhost~]#vim/etc/fstab/dev/sdb1/linuxext4defaults00在文件末尾添加如上内容,编辑完成后,保存并退出,然后重启Linux系统,就能实现/dev/sdb1的自动挂载了。注意
修改/etc/fstab文件时,一定要特别仔细,否则会影响系统的正常启动。建议读者在修改之前,先利用VMware的快照功能备份虚拟机9.5开机自动挂载文件系统9.5.1了解磁盘配额功能磁盘配额是一种磁盘空间管理机制,使用磁盘配额可限制用户或用户组在某个特定文件系统中能使用的最大空间。由于Linux是多用户、多任务操作系统,在使用系统时,会出现多用户共同使用一个磁盘的情况,如果有用户占用了大量的磁盘空间,势必会压缩其他用户的磁盘空间。可以通过限制索引节点数和磁盘区块数来限制用户和用户组对磁盘空间的使用。(1)限制用户和用户组的索引节点数:限制用户和用户组可以创建的文件的数量。(2)限制用户和用户组的磁盘区块数:限制用户和用户组可以使用的磁盘容量。9.5.2设置磁盘配额ext4类型的文件系统是KylinV10支持的标准文件系统,因此本小节介绍的磁盘配额是基于ext4类型的文件系统进行的。为ext4类型的文件系统设置磁盘配额大致分为5个步骤。(1)启动磁盘配额功能。(2)建立磁盘配额文件。(3)设置用户和用户组的磁盘配额。(4)启动与关闭磁盘配额功能。(5)检查磁盘空间的使用情况。9.5.2设置磁盘配额1.启动磁盘配额功能(1)将9.1.4节创建的主分区/dev/sdb2格式化为ext4类型的文件系统,并挂载到目录/disk1上。[root@Server~]#mkfs-text4-V-c/dev/sdb2mkfs,来自util-linux2.35.2mkfs.ext4-c/dev/sdb2……[root@Server~]#mkdir/disk1[root@Server~]#mount/dev/sdb2/disk1(2)针对目录/disk1增加其他用户的写权限,保证其他用户能正常写入数据。[root@Server~]#chmod-Rfo+w/disk19.5.2设置磁盘配额(3)查看系统中是否已经安装了quota软件包,实际上,麒麟V10系统中已经默认安装该软件包。[root@Server~]#rpm-qaquotaquota-4.05-1.ky10.x86_64(4)编辑/etc/fstab文件,在文件末尾增加如下内容,启动文件系统的磁盘配额功能,并重启系统使配置生效。[root@Server~]#vim/etc/fstab/dev/sdb2/disk1ext4defaults,usrquota,grpquota00[root@Server~]#reboot[root@Server~]#mount-oremount,usrquota,grpquota/disk1(5)重启系统后,使用mount命令查看磁盘配额是否生效。[root@Server~]#mount|grepdisk1/dev/sdb2on/disk1typeext4(rw,relatime,seclabel,quota,usrquota,grpquota)9.5.2设置磁盘配额2.建立磁盘配额文件磁盘配额通过分析整个文件系统中的每个用户(用户组)所拥有的文件总数与总容量,将这些数据记录放在文件系统顶层目录下的磁盘配额文件(aquota.user和aquota.group)中,然后比较磁盘配额文件中的限制值来限制用户或用户组的磁盘用量。quotacheck命令用于检查磁盘的使用空间和限制,并建立磁盘配额文件。该命令的命令格式如下。quotacheck[选项]9.5.2设置磁盘配额表9-8
quotacheck命令的常用选项选项说明-a扫描/etc/fstab文件,查看其中是否有加入磁盘配额设置的分区-v显示详细的执行过程-u用于检查用户的磁盘配额-用于检查用户组的磁盘配额-f强制执行m不试图以只读方式挂载文件系统9.5.2设置磁盘配额【例
9-8】
使用quotacheck命令,生成磁盘配额文件aquota.user(设置用户的磁盘配额)和aquota.group(设置用户组的磁盘配额)。[root@Server~]#quotacheck-cugmv/disk1……quotacheck:Scanning/dev/sdb2[/disk1]done……quotacheck:Checked3directoriesand0filesquotacheck:Oldfilenotfound.quotacheck:Oldfilenotfound.[root@repo桌面]#ls-l/disk1/aquota*-rw-------1rootroot61446月611:24/disk1/aquota.group-rw-------1rootroot61446月611:24/disk1/aquota.user9.5.2设置磁盘配额3.设置用户和用户组的磁盘配额对用户和用户组的磁盘配额限制分为两种。(1)软限制(SoftLimit),是指用户和用户组在文件系统中可以使用的磁盘空间和文件数量。超过软限制后,7天内(默认),用户仍可继续存储文件,但是系统会对用户提出警告,建议用户清理文件,释放空间。超过警告期限,即7天后,用户不能继续存储文件。(2)硬限制(HardLimit),是指用户和用户组可以使用的最大磁盘空间或最多的文件数量,超过硬限制之后,用户和用户组将无法再在相应的文件系统中存储文件。如果HardLimit的取值为0,则表示不受限制。可以使用edquota命令设置用户和用户组的磁盘配额。该命令的命令格式如下。edquota-u用户名edquota-g组名9.5.2设置磁盘配额【例9-9】
使用edquota-u命令,设置user1用户的磁盘配额,硬盘使用量(blocks)的软限制和硬限制分别为3MB(3072KB)和6MB(6144KB),索引节点数(inodes)的软限制和硬限制分别为3个和6个。[root@Server
~]#
useradd
user1[root@Server
~]#
edquota
-u
user1Disk
quotas
for
user
user1
(uid
1005):
Filesystem
blocks
soft
hard
inodes
soft
hard
/dev/sdb2
0
3072
6144
0
3
6
如果需要对多个用户进行设置,可以重复上面的操作。如果每个用户的设置都相同,可以使用“edquota-p参考用户
待设定用户”命令,把参考用户的设置复制给待设定用户。9.5.2设置磁盘配额【例9-10】
使用edquota-p命令,为user2用户设置与user1用户相同的磁盘配额。[root@Server~]#useradduser2[root@Server~]#edquota-puser1user2[root@Server~]#edquota-uuser29.5.2设置磁盘配额4.启动与关闭磁盘配额功能设置好用户及用户组的磁盘配额后,磁盘配额功能还不能立刻生效,需要使用quotaon命令启动磁盘配额功能。若要关闭该功能可以使用quotaoff命令。quotaon和quotaoff命令的常用选项如表9-9所示。表9-9
quotaon和quotaoff命令的常用选项选项说明-u针对用户启动(aquota.user)-g针对用户组启动(aquota.group)-v显示启动过程的相关信息-a根据/etc/mtab内设定的filesystem启动有关的磁盘配额功能9.5.2设置磁盘配额【例9-11】
使用quotaon命令启动磁盘配额功能。[root@Server~]#quotaon-avug……/dev/sda2[/disk1]:groupquotasturnedon/dev/sda2[/disk1]:userquotasturnedon9.5.2设置磁盘配额5.检查磁盘空间的使用情况管理员可以使用repquota命令生成完整的磁盘使用报告,以查看磁盘空间的使用情况。【例9-12】
使用user1用户在/disk1目录下创建文件sample.tar,再使用repquota命令查看/dev/sdb2上的磁盘空间使用情况。[root@Server
~]#
su
-
user1[user1@Server
~]$
cd
/disk1[user1@Server
disk1]$
lsaquota.group
aquota.user
lost+found[user1@Server
disk1]$
touch
sample.tar[user1@Server
disk1]$
exit注销9.5.2设置磁盘配额[root@Server
~]#
repquota
/dev/sdb2***
Report
for
user
quotas
on
device
/dev/sdb2Block
grace
time:
7days;
Inode
grace
time:
7days
Block
limits
File
limitsUser
used
soft
hard
grace
used
soft
hard
grace----------------------------------------------------------------------root
--
13
0
0
2
0
0
user1
--
0
3072
6144
1
3
6
用户名后的--用于判断该用户是否超出了磁盘空间限制及索引节点数限制。超出限制时,--会变成+。要想查看所有启用了磁盘配额功能的文件系统的磁盘空间使用情况,可以使用repquota-a命令。9.5.3测试磁盘配额经过9.5.2节的操作,我们已经成功设置了磁盘配额,接下来通过以下几个步骤测试磁盘配额功能是否能正常使用。(1)切换为user1用户并登录。[root@Server~]#su-user1(2)使用dd命令分别写入5MB和8MB的文件(dd命令是一个强大的复制、转换和处理数据命令)。[user1@Server~]$ddif=/dev/zeroof=/disk1/testfile1bs=5Mcount=1sda2:warning,userblockquotaexceeded.记录了1+0的读入记录了1+0的写出5242880字节(5.2MB,5.0MiB)已复制,0.0264479s,198MB/s9.5.3测试磁盘配额[user1@Server~]$ddif=/dev/zeroof=/disk1/testfile2bs=8Mcount=1sda2:writefailed,userblocklimitreached.dd:写入'/disk1/testfile2'出错:超出磁盘限额记录了1+0的读入记录了0+0的写出1048576字节(1.0MB,1.0MiB)已复制,0.00433171s,242MB/s[user1@Server~]$exit9.5.3测试磁盘配额从执行结果中可以看出,使用dd命令向/disk1/testfile1和/disk1/testfile2文件写入内容时,分别提示“warning,userblockquotaexceeded”和“writefailed,userblocklimitreached”,表示写入file时超出软限制,但是写入成功,而写入file2时,超出磁盘限额,写入失败。这说明之前关于磁盘配额的设置都是正确的,那为什么会提示这些信息?原因在于,在例9-9中设置的磁盘的软限制和硬限制分别为3MB和6MB。提示
测试完成后,为了避免影响其他实训操作,建议将环境恢复到初始状态后,重新启动Linux系统。将环境恢复到初始状态的方法如下。(1)执行vim/etc/fstab命令,删除或者注释该文件中的最后一行:/dev/sda2/disk1ext4defaults,usrquota,grpquota00。(2)执行reboot命令。9.6
管理逻辑卷9.6.1了解LVM的概念逻辑卷管理(LogicalVolumeManger,LVM)是Linux系统对磁盘分区进行管理的一种机制,逻辑卷是建立在磁盘和磁盘分区之上的逻辑层,可以提高磁盘分区管理的灵活性。逻辑卷相比传统分区,其好处是可以动态调整分区大小,而不会损坏分区中存储的数据。LVM将物理磁盘或者磁盘分区转换为物理卷(PhysicalVolume,PV),通过将物理卷划分为相同大小的物理盘区(PhysicalExtent,PE),再将一个或多个物理卷组合形成卷组(VolumeGroup,VG),最后进行分配形成逻辑卷(LogicalVolume,LV)。LVM的技术架构如图9-14所示。图9-14
LVM的技术架构9.6.1了解LVM的概念物理卷处于LVM中的底层,通常指的是物理磁盘、磁盘分区或者独立磁盘冗余阵列。一个卷组包含多个物理卷。逻辑卷与物理卷没有直接的关系,逻辑卷是指利用卷组中的空闲资源建立的,在建立之后可以动态扩展或缩小逻辑卷的空间。9.6.2创建逻辑卷创建逻辑卷时,需要分别配置物理卷、卷组和逻辑卷。常用的物理卷、卷组、逻辑卷管理命令分别如表9-10~表9-12所示。表9-10
常用的物理卷管理命令命令说明pvscan扫描pvcreate建立pvdisplay显示pvremove删除9.6.2创建逻辑卷表9-11
常用的卷组管理命令命令说明vgscan扫描vgcreate建立vgdisplay显示vgremove删除vgextend扩展vgreduce缩小9.6.2创建逻辑卷表9-12
常用的逻辑卷管理命令命令说明lvscan扫描lvcreate建立lvdisplay显示lvremove删除lvextend扩展lvreduce缩小9.6.2创建逻辑卷为了更好地展示LVM技术,下面新增3块磁盘来创建逻辑卷,具体步骤如下。(1)新增3块磁盘,大小分别为10GB、5GB和20GB。由于新增磁盘较多,需要防止磁盘启动顺序发生变化,导致磁盘标识变化(如/dev/sda变成/dev/sdb),影响原有的配置。添加磁盘和更改磁盘启动顺序的方法请参考9.1.4节,这里不赘述。其中,第三块磁盘是为9.6.3节做准备而新增的。(2)使用pvcreate命令为新增的两块磁盘创建物理卷。[root@Server
~]#
pvcreate
/dev/sdc
/dev/sdd
Physical
volume
"/dev/sdc"
successfully
created.
Physical
volume
"/dev/sdd"
successfully
created.9.6.2创建逻辑卷(3)创建group卷组,把两块磁盘加入group卷组中。[root@Server
~]#
vgcreate
group
/dev/sdc
/dev/sdd
Volume
group
"group"
successfully
created[root@Server
~]#
vgdisplay
---
Volume
group
---
VG
Name
group
……(4)建立一个300MB的逻辑卷l1。[root@Server
~]#
lvcreate
-n
l1
-L
300M
group
Logical
volume
"l1"
created.[root@Server
~]#
lvdisplay
---
Logical
volume
---
LV
Path
/dev/group/l1
……(5)格式化逻辑卷l1,然后挂载。[root@Server
~]#
mkfs
–t
ext4
/dev/group/l1
mke2fs
1.46.5
(30-Dec-2021)创建含有
307200
个块(每块
1k)和
76912
个inode的文件系统文件系统UUID:a0a4d2c9-61c6-421c-9f34-ddb571f5d751……[root@Server
~]#
mkdir
/group[root@Server
~]#
mount
/dev/group/l1
/group
9.6.2创建逻辑卷(6)查看挂载状态,验证后,卸载逻辑卷。[root@Server
~]#
df
-h文件系统
容量
已用
可用
已用%
挂载点……tmpfs
176M
88K
175M
1%
/run/user/0/dev/mapper/group-l1
272M
14K
253M
1%
/group[root@Server
~]#
umount
/group/9.6.2创建逻辑卷在9.6.2节中,卷组由两块磁盘组成,但是在实际使用时,用户并不能感受到磁盘的底层架构和布局,只要卷组中有足够的可分配空间,就可以一直为逻辑卷扩容。当卷组中没有足够的空间分配给逻辑卷时,可以通过增加物理卷的方法来增加卷组的空间。为逻辑卷扩容和缩容通常使用e2fsck检查文件系统,保证文件系统的完整性。该命令格式如下。e2fsck[选项]设备路径(分区/LV路径)9.6.3扩展和缩小逻辑卷e2fsck命令的常用选项如表9-13所示。表9-13
e2fsck命令的常用选项9.6.3扩展和缩小逻辑卷选项说明-f强制检查(即使文件系统显示“干净”,也强制执行检查,缩容前必加)-y自动回答所有修复问题为
“yes”,无须手动确认(批量修复、无人值守场景)-n只检查不修复(只读模式,仅报告问题,不修改文件系统,适合评估损坏程度)-F检查前先清空文件系统缓存(避免缓存数据干扰检查结果)-v详细输出模式(显示检查
/修复的全过程,便于排查问题)1.扩容逻辑卷(1)增加新的物理卷(/dev/sde)到卷组(group)。[root@Server~]#pvcreate/dev/sdePhysicalvolume"/dev/sde"successfullycreated.[root@Server~]#vgextendgroup/dev/sdeVolumegroup"group"successfullyextended[root@Server~]#vgdisplay---Volumegroup---……(2)将9.6.2节中逻辑卷l1的容量扩充至500MiB。[root@Server~]#lvextend-L500M/dev/group/l1Sizeoflogicalvolumegroup/l1changedfrom300.00MiB(75extents)to500.00MiB(125extents).Logicalvolumegroup/l1successfullyresized.9.6.3扩展和缩小逻辑卷(3)检查磁盘完整性,并重置磁盘容量。[root@Server~]#e2fsck-f/dev/group/l1e2fsck1.46.5(30-Dec-2021)第1步:检查inode、块和大小……[root@Server~]#resize2fs/dev/group/l1resize2fs1.46.5(30-Dec-2021)文件系统已经为307200个块(每块1k)。无须进一步处理!(4)挂载逻辑卷后,重新查看挂载状态,之后将逻辑卷卸载。[root@Server
~]#
mount
/dev/group/l1
/group/[root@Server
~]#
df
-h文件系统
容量
已用
可用
已用%
挂载点……tmpfs
183M
0
183M
0%
/run/user/0/dev/mapper/group-l1
477M
2.3M
446M
1%
/group[root@Server
~]#
umount
/dev/group/l19.6.3扩展和缩小逻辑卷2.缩容逻辑卷在对逻辑卷进行缩容时,需要防范数据丢失风险,缩容逻辑卷的步骤和扩容逻辑卷类似,只不过需要使用lvreduce命令减小逻辑卷的容量,具体步骤如下。(1)检查文件系统的完整性。[root@Server
~]#
e2fsck
-f
/dev/group/l1e2fsck
1.46.5
(30-Dec-2021)第
1
步:检查inode、块和大小第
2
步:检查目录结构……9.6.3扩展和缩小逻辑卷(2)把逻辑卷l1的容量减小到200MiB。[root@Server
~]#
resize2fs
/dev/group/l1
200Mresize2fs
1.46.5
(30-Dec-2021)将
/dev/group/l1
上的文件系统调整为
204800
个块(每块
1k)。/dev/group/l1
上的文件系统现在为
204800
个块(每块
1k)。[root@Server
~]#
lvreduce
-L
200M
/dev/group/l1
File
system
ext4
found
on
group/l1.
File
system
size
(200.00
MiB)
is
equal
to
the
requested
size
(200.00
MiB).……9.6.3扩展和缩小逻辑卷(3)挂载逻辑卷后,重新查看挂载状态。[root@Server
~]#
mount
/dev/group/l1
/group/[root@Server
~]#
df
-h文件系统
容量
已用
可用
已用%
挂载点……/dev/mapper/group-l1
186M
1.6M
171M
1%
/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新余学院《大学生身心健康与保健》2026-2027学年第一学期期末试卷含解析
- 新疆司法警官职业学院《美术文献检索与论文写作》2026-2027学年第一学期期末试卷含解析
- 云南财经职业学院《食品工厂设计及环境保护》2026-2027学年第一学期期末试卷含解析
- 新乡工程学院《东南亚法律制度概论》2026-2027学年第一学期期末试卷含解析
- 天津外国语大学《金属切削机床与刀具》2026-2027学年第一学期期末试卷含解析
- 无锡城市职业技术学院《外贸电子商务英语》2026-2027学年第一学期期末试卷含解析
- 四川音乐学院《证据法学及实务》2026-2027学年第一学期期末试卷含解析
- 武汉科技大学《水工基础工程》2026-2027学年第一学期期末试卷含解析
- 广播、电视和移动通信(教学课件)2025-2026学年人教版物理九年级全一册
- 2026应化求职面试题及答案大全
- 出纳员职业技能鉴定考试复习题库(附答案)
- 加油站风险辨识与安全管控培训
- 广东省安装工程综合定额(2018)Excel版
- 西安益新中学新初一分班数学试卷含答案
- 员工个人隐私与信息保护制度
- 统编版六年级下册道德与法治1-学会尊重-课件(54张课件)
- CJT 415-2013 城镇供水管网加压泵站无负压供水设备
- 生命哲学:爱、美与死亡智慧树知到期末考试答案章节答案2024年四川大学
- 第六章 通航建筑物1
- 救护师资培训试讲课件
- 计算机视觉(段先华)课后习题及答案 第4-7章
评论
0/150
提交评论