项目五 配置与管理磁盘
磁盘配额(Quota),磁盘阵列(RAID),逻辑滚动文件系统(LVM)
#职业能力目标和要求
1,掌握Linux下的磁盘管理工具的使用方法
2,掌握Linux下的软RAID和LVM逻辑卷管理器的使用方法
3,掌握设置磁盘配额的使用方法
5.1 熟悉使用常用磁盘管理工具
在分区时可以采用Disk Druid,RAID和LVM等方式进行分区。还可以在Linux系统中用fdisk,cfdisk,parted等分区工具。
注意:以下命令都是新增一块硬盘为前提,新增的硬盘为/dev/sdb。
**1,fdisk命令:**在Linux系统中,fdisk是基于菜单的命令。(可用在DOS,Windows和Linux系统中)
语法:fdisk 硬盘分区
2,mkfs命令:建立文件系统。(类似于Windows的格式化硬盘)
硬盘分区后要建立文件系统,**但是建立文件系统会冲掉分区上的数据,而且不可恢复,**所以要确保分区数据不再使用。
语法:mkfs [参数] 文件系统
-t:指定要创建的文件系统类型
-c:创建前检查坏块
-l file:从file文件中读硬盘坏块列表,file文件一般是由硬盘坏块检查程序产生的
-V:详显
大概步骤:
1,分区和格式化:mkfs
2,创建挂载点:mkdir
3,挂载存储设备:mount [分区硬盘] 挂载目录
4,查看状态:df -h
**3,fsck命令:**检查文件系统的正确性,并对Linux磁盘进行修复。
语法:fsck [参数] 文件系统
如果有错误自动修复(必须先把磁盘卸载才能检查分区)
-t:指定文件类型
-s:逐个执行fsck命令进行检查
-A:对/etc/fstab中所有列出来的分区进行检查
-C:显示进度
-d:列出fsck的debug结果
-P:在同时有-A选项时,多个fsck的检查一起执行
-a:找0错自修
-r:找错询修
**4,dd命令:**建立和使用交换文件。
当系统的交换分区不能满足系统的要求而硬盘上又没有空间时,可以使用交换文件提供虚拟内存。
建立/swap交换文件后,使用mkswap命令说明该文件用于交换空间。
利用swapon命令可以激活交换空间,也可以利用swapoff命令卸载被激活的交换空间。
5,df命令:用来查看文件的磁盘空间占用情况。
df [参数]
-a:显示所有文件系统磁盘使用情况,包括0块的文件系统,如/proc文件系统
-k:以k字节为单位显示
-i:显示i节点信息
-t:显示指定类型文件系统的磁盘空间情况
-x:列出不是某指定类型文件磁盘空间情况(与t相反)
-T:显示文件系统类型
6,du命令:用于显示磁盘空间的使用情况。
语法:du [参数] [文件或目录名称]
-s:对每个name参数只给出占用的数据块总数
-a:递归显示指定目录中各文件及子目录中各文件占用的数据块数
-b:以字节为单位列出磁盘空间情况
-c:在统计后加上一个总计
-l:计算所有文件大小,对硬链接文件重复计算
-x:跳过在不同文件系统上的目录,不予统计
7,mount和umount命令
(1)mount命令
建立文件系统后,还需挂载到系统才可使用,文件挂载到挂载点,Linux系统中提供/mnt和/media两个专门的挂载点。挂载点必须是空目录,否则原文件会被系统隐藏。通常将光盘和软盘挂载到/media/cdrom(/mnt/cdrom)和/media/floppy(/mnt/floppy)中,其对应的设备文件名分别为/dev/cdrom和/dev/fd0
手动挂载:mount 选项 设备 挂载点
-t:指定挂载文件系统的类型
-r:只读方式挂载
-w:以写的方式挂载文件系统
-a:挂载/etc/fstab文件中记录的设备
(2)umount命令
卸载文件系统:umount 设备挂载点
注意:光盘在没有卸载之前,无法从驱动器中弹出。正在使用的文件系统不能卸载
8,文件系统的自动挂载。
可以通过编辑/etc/fstab文件来实现。
每列的说明:
fs_spec :将要挂载的设备文件
fs_file :文件系统的挂载点
fs_vfstype:文件系统类型
fs_mntops:挂载选项决定传递给mount命令时如何挂载
fs_freq :由dump程序决定文件系统是否需要备份,0表示不备份,1表示备份
fs_passno:由fsck程序决定引导时是否检查从以及检查次序,取值可以为0,1,2
5.2 配置与管理磁盘配额
为了防止某个用户或群组占用过多的磁盘空间,可以通过磁盘配额限制用户和群组对磁盘空间的使用。
在Linux系统中可以通过索引节点和磁盘块区数来限制用户和群组对磁盘空间的使用
- 限制用户和组的索引节点数( inode )是指限制用户和组可以创建的文件数量。
- 限制用户和组的磁盘块区数(block)是指限制用户和组可以使用的磁盘容量。
注意:任务2和任务3都是基于任务1中对磁盘/dev/sdb的各种处理。为了使后续的实训能正常进行,特重申如下几个问题: /dev/sdb 的第2个分区是独立分区;将/dev/sdb2 挂载到/disk2;使用/etc/fstab配置文件,完成自动挂载;重启,使计算机自动挂载生效。
5.3 磁盘配额配置的企业案例
过!
5.4 在Linux中配置软RAID
5.4.1 创建与挂载RAID设备
前提需要四块硬盘来讲解RAID5的创建方法。
1,创建4个磁盘分区
2,使用mdadm命令创建RAID5
3,为新建立的/dev/md0建立类型为ext4的文件系统
4,查看建立的RAID5的具体情况(注意那个是备用)
5,将RAID设备挂载
5.4.2 RAID设备的数据恢复
如果RAID设备中的某个硬盘损坏,系统会自动停止这块硬盘的工作,让后备的那块硬盘代替损坏的硬盘继续工作。例如,假设/dev/sdcl损坏。更换损坏的RAID设备中成员的方法如下
(1)将损坏的RAID成员标记为失败
(2)移除失效的RAID成员
(3)更换硬盘设备,添加一个新的RAID成员(注意上面查看RAID5的情况)。备份硬盘一般会自动替换。
(4)查看RAID5下的文件是否损坏,同时再次查看RAID5的情况。
(5)当不再使用RAID设备时,可以使用命令"mdadm -S /dev/mdX"的方式停止RAID设备。应先卸载再停止。
5.5 配置软RAID的企业案例
过!
5.6 LVM逻辑卷管理器
硬件设备资源管理技术—LVM。Linux允许用户对硬盘资源进行动态调整。
目的:解决硬件设备在创建分区或不易修改分区大小的缺陷。**LVM技术是在硬盘分区和文件系统之间添加了一个逻辑层,**提供了一个抽象的卷组,可以吧多块硬盘进行卷组合。
LVM的核心理念:物理卷处于LVM中的最底层,可以将其理解为物理硬盘、硬盘分区或者RAID磁盘阵列。卷组建立在物理卷之上,一个卷组可以包含多个物理卷,而且在卷组创建之后也可以继续问其中添加新的物理卷。逻辑卷是用卷组中空闲的资源建立的,并且逻辑卷在建立后可以动态地扩展或缩小空间。
5.6.1 部署逻辑卷
部署LVM是为了解决业务的弹性变化。部署LVM时,需要逐个配置物理卷,卷组和逻辑卷。
将虚拟机恢复到原始状态。并新建两块硬盘为了更好演示LVM技术而无需顾忌底层技术。
**实验目的:**根据要求把合并后的卷组切割出一个约为150MB的逻辑卷设备,最后吧这个逻辑卷设备格式化成EXT4文件系统后挂载使用
(1)让新添加的两块硬盘设备支持LVM技术。
(2)把两块硬盘设备加入到storage卷组中,然后查看卷组的状况。
(3)切割出来一个约为150MB的逻辑卷设备。
**注意切割单位问题:**一:以容量为单位,参数是-L(例如:-L150M);二:以基本单元的个数为单位,参数是-l。每个单元默认是4MB(例如-l 37,则是37*4=148MB的逻辑卷)
(4)把生成好的逻辑卷进行格式化,然后挂载使用。
Linux系统会把LVM中的逻辑卷设备存放在/dev设备目录中(实际上是做了一个符号链接),同时会以卷组的名称来建立一个目录,其中保存了逻辑卷的设备映射文件(即/dev/卷组名称/逻辑卷名称)。
(5)查看挂载状态,并写入配置文件,使其永远生效(做下个实验时一定要恢复到初始状态)
5.6.2 扩容逻辑卷
扩容前一定要记得卸载设备和挂载点的关联。
[root@localhost ~]# umount /bobby/
(1)增加新的物理卷到卷组。
下面先增加/dev/sdd磁盘支持LVM技术,再将/dev/sdd物理卷加到storage卷组。
(2)把上一个实验中的逻辑卷vo扩展至290M。
(3)检查硬盘完整性,并重置硬盘容量。
(4)重新挂载硬盘设备并查看挂载状态。
5.6.3 缩小逻辑卷
锁容前一定要记得卸载文件系统
[root@localhost ~]# umount /bobby/
(1)检查文件系统的完整性。
[root@localhost ~]# e2fsck -f /dev/storage/vo
(2)把逻辑卷波的容量减小到120MB
[root@localhost ~]# resize2fs /dev/storage/vo 120M
[root@localhost ~]# lvextend -L 120M /dev/storage/vo
(3)重启挂载文件系统并查看系统状态。
[root@localhost ~]# mount -a
[root@localhost ~]# df -h
5.6.4 删除逻辑卷
删除顺序逻辑卷,卷组,物理卷设备。该过程不可颠倒。
(1)取消逻辑卷与目录的挂载关联,删除配置文件中永久生效的设备参数。
[root@localhost ~]# umount /bobby/
[root@localhost ~]# vim /etc/fstab
#/dev/storage/vo /bobby ext4 defaults 0 0 #加#注释掉即可
(2)删除逻辑卷设备,需要使用y来确定操作。
[root@localhost ~]# lvremove /dev/storage/vo
Do you really want to remove active logical volume storage/vo? [y/n]: yLogical volume "vo" successfully removed
(3)删除卷组,此处只写卷组名称即可,不需要设备的绝对路径。
[root@localhost ~]# vgremove storageVolume group "storage" successfully removed
(4)删除物理卷设备。
[root@localhost ~]# pvremove /dev/sdb /dev/sdcLabels on physical volume "/dev/sdb" successfully wiped.Labels on physical volume "/dev/sdc" successfully wiped.
ogical volume “vo” successfully removed
(3)删除卷组,此处只写卷组名称即可,不需要设备的绝对路径。```shell
[root@localhost ~]# vgremove storageVolume group "storage" successfully removed
(4)删除物理卷设备。
[root@localhost ~]# pvremove /dev/sdb /dev/sdcLabels on physical volume "/dev/sdb" successfully wiped.Labels on physical volume "/dev/sdc" successfully wiped.