RHCE课程课程课程课程-RH131Linux管理笔记七管理笔记七管理笔记七管理笔记七-Linux分区分区分区分区,,,,格式化格式化格式化格式化,,,,SWAP,,,,LVM,软件软件软件软件RAID的创建的创建的创建的创建标签:LinuxRAIDRHCELVMSWAP[推送到技术圈]版权声明版权声明版权声明版权声明::::原创作品,谢绝转载!否则将追究法律责任。上周最后我们讲了sudo,今天我们主要说说分区、格式化、SWAP、LVM、软件RAID的创建哈~格式化格式化格式化格式化查看当前分区:fdisk-l这个命令我们以前是讲过的,我现在问下,ID那项是什么意思?83是代表是代表是代表是代表EXT2和和和和EXT382是代表是代表是代表是代表SWAP分区分区分区分区硬盘结构我们就不讲了,相信大家都有基础。我们就直接进入操作LINUX分区使用的工具是FDISK对系统的第一个硬盘分区#fdisk/dev/sda如果是对第二个硬盘分区,就是fdisk/dev/sdb大家运行这个命令:#fdisk/dev/sda大家都进入这个界面了吧?这是主菜单,按m就有提示我们主要掌握的是以下几个参数:D删除一个分区N创建一个分区Q不保存退出T改变分区IDW保存退出问下,LINUX对SCSI硬盘最多支持多少分区?最多支持4个主分区,总分区数最多15个,fdisk命令最多支持16个分区,IDE硬盘要多一些现在我们创建一个分区大小为500MB,在主菜单输入nFirstcylinder(2690-3916,default2690):这个表示第一个柱面空间的块是2690-3916,default2690的意思就是默认从2690开始。我们直接点回车,使用默认的Lastcylinderor+sizeor+sizeMor+sizeK(2690-3916,default3916):这里就是输入分区的大小,默认是以块为单位,我们要分500MB,我们就输入+500M哈~然后回车,分区就算完成了。系统默认的分区ID就是83,所以我们没必要修改,直接按w保存退出大家看见Thenewtablewillbeusedatthenextreboot没?意思就是这个分区在下次启动的时候才能使用,我们可以使用一个命令,让这个分区马上生效哈~输入#partprobe,自己使用命令补全哈然后用fdisk-l查看下,最后一个,就是我们新建的分区看见了吧,现在我们就格式这个分区,看到分区的号码/dev/sda7,等下我们格式化的时候要用格式化的标准命令:#mkfs-text3/dev/sda7我的是第7个分区,你们是第几个就用第几个-t后面跟的就是文件系统的类型现在我们要挂载这个分区。挂载我已经教过了,相信大家还没忘记吧先在/mnt/下面建立一个目录#mkdir/mnt/backupbackup就是我建立的目录然后我们手动挂载哈~#mount-text3/dev/sda7/mnt/backup具体情况以你的分区号和建立的目录名为准然后CD到这目录里面去,如果看见有一个LOST+fount目录,就说明你分区挂载成功了,现在就可以往分区里面写入数据了如果想把这个分区开机挂载,就把它写入/etc/fstab,具体方法参考RHCE课程-RH131Linux管理笔记六-Linux文件系统管理、挂载及sudo设置与使用,在上一期已经讲了开机挂载了哈~刚才我们格式化使用的命令是:#mkfs-text3/dev/sdax还有专门用于格式EXT3系统的命令:#mkfs.ext3/dev/sdax就行了大家大家大家大家OK的话的话的话的话,,,,我们下面就开始学习用命令创建我们下面就开始学习用命令创建我们下面就开始学习用命令创建我们下面就开始学习用命令创建LVM逻辑卷逻辑卷逻辑卷逻辑卷LVM的优点就是可以随意拉升和缩小。在基础部分我们已经用图形界面创建过,现在我们使用命令来创建第一步第一步第一步第一步::::划分物理分区划分物理分区划分物理分区划分物理分区使用和刚才一样de方法#fdisk/dev/sda输入n哈~然后回车使用默认的起始点,接着输入大小哈。我们创建一个300M大小的空间,输入+300M注意注意注意注意,,,,这里比刚才多一步这里比刚才多一步这里比刚才多一步这里比刚才多一步,,,,由于由于由于由于LVM的的的的ID和和和和EXT3不一样不一样不一样不一样,,,,而系统默认是的而系统默认是的而系统默认是的而系统默认是的EXT3,,,,所以这里我们需要修改一下所以这里我们需要修改一下所以这里我们需要修改一下所以这里我们需要修改一下在主菜单输入T系统会让你选择要改变ID的分区,输入我们刚创建的分区,也就是最后一个8Hexcode(typeLtolistcodes):这里输入分区类型,LVM是8e,如果你不记得了,可以使用l查看分区ID的对应列表输入l后,系统会列出所有分区对应的ID号在列表中,我们可以看见LINUXLVM对应的是8e,所以我们直接输入8e,然后回车,在主菜单输入p,查看当前分区情况看见最后你分出来的分区ID已经是8e,那么就可以输入w保存退出退出以后,记得要重启这个分区才能生效。我们要使用一个命令让它立即生效#partprobe到这里,第一步创建物理分区完成哈~第二步第二步第二步第二步::::创建创建创建创建LVM的物理卷的物理卷的物理卷的物理卷使用命令#pvcreate/dev/sdaxsdax就是你刚才创建的分区创建成功后,可以使用pvdisplay查看那我们在这里暂停一下,给大家回顾下什么是LVMLVM就想一种磁盘管理方式,叫逻辑卷管理器,从RedHatLinux8.0开始,逻辑卷管理器(LVM)可以在硬盘驱动器分配上使用,LVM是一种把硬盘驱动器空间分配成逻辑卷的方法,这样硬盘就不必使用分区而被简易地重划大小。LVM有点象WIN下的动态磁盘,动态磁盘知道吗?LVM是一种把硬盘驱动器空间分配成逻辑卷的方法,这样硬盘就不必使用分区而被简易地重划大小。主要就是这个功能,可以随意扩展或者缩小某个分区的大小,前提这个分区是逻辑卷管理的。嗯,这个就是它的主要功能从硬盘驱动器中创建物理卷(physicalvolumes-PV)。从物理卷中创建卷组(volumegroups-VG)。从卷组中创建逻辑卷(logicalvolumes-LV),并分派逻辑卷挂载点其中只有逻辑卷才可以写数据没有大小限制哈,只要你硬盘有空间,比如刚才我们说的硬盘只支持15个分区,那么我们就可以使用LVM来把分区数量无限化对,分一个物理分区,建立一个物理卷,然后这个物理卷建立一个卷组,我们就可以在这个卷组里面去分无数个逻辑卷,而且逻辑卷可以随意扩大缩小,不会对物理分区有影响,逻辑卷的功能也和物理分区差不多,一样可以格式化成随意的文件系统,挂载到随意的目录。同时也支持quota好了,我们继续哈~刚才我们创建了物理卷PV-(physicalvolumes),可以使用pvdisplay查看。PV创建好以后,我们就要创建卷组了,volumegroups-VG,卷组是在物理卷的基础上创建的,也就把物理卷的空间拿来给卷组管理,然后逻辑卷就可以向卷组要空间了第三步第三步第三步第三步::::创建卷组创建卷组创建卷组创建卷组#vgcreate卷组名卷组名卷组名卷组名物理卷物理卷物理卷物理卷#vgcreatemyvg/dev/sda8创建成功后,可以使用vgdisplay来查看卷组第四步第四步第四步第四步::::创建逻辑卷创建逻辑卷创建逻辑卷创建逻辑卷(重点)#lvcreate-L大小大小大小大小卷组名卷组名卷组名卷组名-n逻辑卷名称逻辑卷名称逻辑卷名称逻辑卷名称我就从卷组里面分100M出来创建一个逻辑卷#lvcreate-L100Mmyvg-nmylv1OK,现在我们格式化mylv1为ext3文件格式并挂载到/mnt/mylv1目录第五步第五步第五步第五步::::格式化格式化格式化格式化、、、、挂载逻辑卷挂载逻辑卷挂载逻辑卷挂载逻辑卷#mkfs.ext3/dev/myvg/mylv1#mkdir/mnt/mylv1#mount-text3/dev/myvg/mylv1/mnt/mylv1然后进入这个目录,能够看见lost+fount目录就成功了这个逻辑卷使用fdisk-l是查看不到滴,只有使用lvdisplay查看[root@rhel5/mnt/mylv1]#fdisk-lDisk/dev/sda:32.2GB,32212254720bytes255heads,63sectors/track,3916cylindersUnits=cylindersof16065*512=8225280bytesDeviceBootStartEndBlocksIdSystem/dev/sda1*11310439183Linux/dev/sda214131810482412+83Linux/dev/sda3131919715245222+83Linux/dev/sda41972391615623212+5Extended/dev/sda519722624524519183Linux/dev/sda62625268952208182Linuxswap/Solaris/dev/sda726902751497983+83Linux/dev/sda8275227882971718eLinuxLVM[root@rhel5/mnt/mylv1]#lvdisplay---Logicalvolume---LVName/dev/myvg/mylv1VGNamemyvgLVUUIDxXbNEd-LAQa-xLtB-c92X-3BJ9-qfWu-z54ejZLVWriteAccessread/writeLVStatusavailable#open1LVSize100.00MBCurrentLE25Segments1AllocationinheritReadaheadsectors0Blockdevice253:0[root@rhel5/mnt/mylv1]#如果要查看这个逻辑卷挂在到哪了,可以使用#mount查看现在我们再在刚才的卷组里面划分一个逻辑卷mylv2出来,大小是150M,文件格式为ext3,挂载到/mnt/mylv2#lvcreate-L150Mmyvg-nmylv2#mkfs.ext3/dev/myvg/mylv2#mkdir/mnt/mylv2#mount-text3/dev/myvg/mylv2/mnt/mylv2就这四条命令就OK了哈~现在mylv1是100M,mylv2是150M哈~我现在要把mylv2减少50M,将这50M添加到mylv1里面去哈,大家看下面使用命令#lvresize-L绝对大小绝对大小绝对大小绝对大小对象对象对象对象#lvresize-L100M/dev/myvg/mylv2然后确定大小resize2fs/dev/myvg/mylv2注意:缩小空间时可能会导致数据损坏,就像下面反复报错误哈~正确滴方法是:对于lvm,如果是扩大某个lv,操作比较简单,但如果是缩小lv,则有一定的风险。我们先要缩小/dev/myvg/lv2文件系统,然后才能缩小lvm,如果在缩小lvm之前忘了缩小文件系统,这时候可以这样来挽救:1:不要进行对该分区的任何写入操作,最好是也不read2:用lvresize2fs重新扩大该分区,且扩大的容量是刚刚缩小的容量(数字一定要和刚刚的一致哈~)。3:缩小文件系统4:最后缩小逻辑卷哈。5:确认文件系统和逻辑卷大小一致。[root@rhel5~]#umount/mnt/mylv2[root@rhel5~]#lvresize-L150M/dev/myvg/mylv2Roundingupsizetofullphysicalextent152.00MBExtendinglogicalvolumemylv2to152.00MBLogicalvolumemylv2successfullyresized[root@r