操作环境: [root@linuxidc ~]# uname -a Linux linuxidc 2.6.32-358.18.1.el6.x86_64#1 SMP Wed Aug 28 17:19:38 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux 现状分析: 系统有两个硬盘,第一个硬盘107G,“/”分区空间当时分区时只给了7.7G过小,空间马上占完。现在系统有第二个硬盘sdb大小为16GB,希望把sdb的所有空间加入到“/”分区中,是其空间容量从7.7GB变成7.7GB+16GB(约2.4GB)。(当然如果这里只有一个硬盘sda,有很多空间尚未使用可以进行同样的操作) 操作步骤如下: 第一步、查看本机现有分区情况 [root@linuxidc ~]# df -h 文件系统容量已用可用已用%% 挂载点 /dev/mapper/VolGroup-lv_root 7.7G 7.1G 155M 98% / tmpfs 3.9G 296K 3.9G 1% /dev/shm /dev/sda1 485M 64M 396M 14% /boot /dev/sda3 83G 350M 79G 1% /media 第二步、查看本机的磁盘情况 [root@linuxidc ~]# fdisk -l Disk /dev/sda: 107.4 GB, 107374182400 bytes 255 heads, 63 sectors/track, 13054cylinders Units = cylinders of 16065 * 512 = 8225280bytes Sector size (logical/physical): 512 bytes /512 bytes I/O size (minimum/optimal): 512 bytes / 512bytes Disk identifier: 0x000dc0ad Device Boot Start End Blocks Id System /dev/sda1 * 1 64 512000 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 64 2089 16264192 8e Linux LVM /dev/sda3 2090 13054 88076362+ 83 Linux Disk /dev/mapper/VolGroup-lv_root: 8325 MB,8325693440 bytes 255 heads, 63 sectors/track, 1012 cylinders Units = cylinders of 16065 * 512 = 8225280bytes Sector size (logical/physical): 512 bytes /512 bytes I/O size (minimum/optimal): 512 bytes / 512bytes Disk identifier: 0x00000000 Disk /dev/mapper/VolGroup-lv_swap: 8325 MB,8325693440 bytes 255 heads, 63 sectors/track, 1012 cylinders Units = cylinders of 16065 * 512 = 8225280bytes Sector size (logical/physical): 512 bytes /512 bytes I/O size (minimum/optimal): 512 bytes / 512bytes Disk identifier: 0x00000000 注意:此时还没有在EXSI5.0中添加第二块硬盘 [root@linuxidc ~]# 第三步、添加第二块硬盘 查看此时系统磁盘情况 root@linuxidc ~]# fdisk -l Disk /dev/sda: 107.4 GB, 107374182400 bytes 255 heads, 63 sectors/track, 13054cylinders Units = cylinders of 16065 * 512 = 8225280bytes Sector size (logical/physical): 512 bytes /512 bytes I/O size (minimum/optimal): 512 bytes / 512bytes Disk identifier: 0x000dc0ad Device Boot Start End Blocks Id System /dev/sda1 * 1 64 512000 83 Linux Partition 1 does not end on cylinderboundary. /dev/sda2 64 2089 16264192 8e Linux LVM /dev/sda3 2090 13054 88076362+ 83 Linux Disk /dev/sdb: 17.2 GB, 17179869184 bytes 255 heads, 63 sectors/track, 2088 cylinders Units = cylinders of 16065 * 512 = 8225280bytes Sector size (logical/physical): 512 bytes /512 bytes I/O size (minimum/optimal): 512 bytes / 512bytes Disk identifier: 0x00000000 Disk /dev/mapper/VolGroup-lv_root: 8325 MB,8325693440 bytes 255 heads, 63 sectors/track, 1012 cylinders Units = cylinders of 16065 * 512 = 8225280bytes Sector size (logical/physical): 512 bytes /512 bytes I/O size (minimum/optimal): 512 bytes / 512bytes Disk identifier: 0x00000000 Disk /dev/mapper/VolGroup-lv_swap: 8325 MB,8325693440 bytes 255 heads, 63 sectors/track, 1012 cylinders Units = cylinders of 16065 * 512 = 8225280bytes Sector size (logical/physical): 512 bytes /512 bytes I/O size (minimum/optimal): 512 bytes / 512bytes Disk identifier: 0x00000000 可以看到我们新添加的硬盘sdb [root@linuxidc ~]# 第四步、对第二块硬盘sdb进行分区 [root@linuxidc ~]# fdisk /dev/sdb Device contains neither a valid DOSpartition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel with diskidentifier 0xfa4abbdc. Changes will remain in memory only, untilyou decide to write them. After that, of course, the previous contentwon't be recoverable. Warning: invalid flag 0x0000 of partitiontable 4 will be corrected by w(rite) WARNING: DOS-compatible mode is deprecated.It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u'). Command (m for help): m Command action a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibilityflag d delete a partition l list known partition types m print this menu n add a new partition o create a new empty DOSpartition table p print the partition table q quit without saving changes s create a new empty Sundisklabel t change a partition's system id u change display/entry units v verify the partition table w write table to disk and exit x extra functionality (expertsonly) Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 4 First cylinder (1-2088, default 1): Using default value 1 Last cylinder, +cylinders or +size{K,M,G}(1-2088, default 2088): Using default value 2088 Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. 说明:上面操作对sdb硬盘进行了分区操作,设为sdb4分区了(当然上面建立的主分区可以为1-4中的任意一个,我这里选择的4)。 第五步、对新建立的sdb4分区进行格式 [root@linuxidc ~]# mkfs.ext4 /dev/sdb4 mke2fs 1.41.12 (17-May-2010) 文件系统标签= 操作系统:Linux 块大小=4096 (log=2) 分块大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 1048576 inodes, 4192957 blocks 209647 blocks (5.00%) reserved for thesuper user 第一个数据块=0 Maximum filesystem blocks=4294967296 128 block groups 32768 blocks per group, 32768 fragments pergroup 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000 正在写入inode表: 完成 Creating journal (32768 blocks): 完成 Writing superblocks and filesystemaccounting information: done完成 This filesystem will be automaticallychecked every 20 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. 说明:将sdb4分区格式化为ext4格式,因为CentOS安装是系统的格式ext4,所以这里要注意一下。 第六步、格式后的sdb4分区添加为物理卷 [root@linuxidc ~]# pvcreate /dev/sdb4 Physical volume "/dev/sdb4" successfully created 第七步、查看当前系统的物理卷(PV)情况 [root@linuxidc ~]# pvdisplay ---Physical volume --- PVName /dev/sda2 VGName VolGroup PVSize 15.51 GiB / not usable3.00 MiB Allocatable yes (butfull) PESize 4.00 MiB Total PE 3970 Free PE 0 Allocated PE 3970 PVUUID Up77sG-sNKf-Ja0k-crBf-N0wz-a5hy-T6sVFh "/dev/sdb4" is a new physical volume of "15.99 GiB" ---NEW Physical volume --- PVName /dev/sdb4 VGName PVSize 15.99 GiB Allocatable NO PESize 0 Total PE 0 Free PE 0 Allocated PE 0 PVUUID Gqnw7N-HooX-S2Nz-1NIZ-YpOe-g0jo-grG1rQ 说明:可以看到添加的新物理卷sdb4,大小都符合我们添加时的设置 第八步、查看当前卷组情况 [root@linuxidc ~]# vgdisplay ---Volume group --- VGName VolGroup System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VGAccess read/write VGStatus resizable MAXLV 0 CurLV 2 Open LV 2 MaxPV 0 CurPV 1 ActPV 1 VGSize 15.51 GiB PESize 4.00 MiB Total PE 3970 Alloc PE / Size 3970 / 15.51GiB Free PE / Size 0 / 0 VGUUID PPrifh-glzl-nnxX-YkBm-xJ1s-rgnw-d1WsJd 第九步、将分区sdb4转换为扩展分区 [root@linuxidc ~]# vgextend VolGroup/dev/sdb4 Volume group "VolGroup" successfully extended 第十步、查看当前的逻辑卷 [root@linuxidc ~]# lvdisplay ---Logical volume --- LVPath /dev/VolGroup/lv_root LVName lv_root VGName VolGroup LVUUID dCIsej-0NWX-bVFe-bT6L-c4eY-oy4G-9lNBOC LVWrite Access read/write LVCreation host, time , LVStatus available #open 1 LVSize 7.75 GiB Current LE 1985 Segments 1 Allocation inherit Read ahead sectors auto -currently set to 256 Block device 253:0 ---Logical volume --- LVPath /dev/VolGroup/lv_swap LVName lv_swap VGName VolGroup LVUUID K5bxJo-2SmM-6NCU-mBJP-Qzp1-ZODH-nbLK0k LVWrite Access read/write LVCreation host, time , LVStatus available #open 1 LVSize 7.75 GiB Current LE 1985 Segments 1 Allocation inherit Read ahead sectors auto -currently set to 256 Block device 253:1 说明:这里可以看到“/”根分区的路径名称为:/dev/VolGroup/lv_root 第十一步、查看扩展后的卷组情况 [root@linuxidc ~]# vgdisplay ---Volume group --- VGName VolGroup System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 4 VGAccess read/write VGStatus resizable MAXLV 0 CurLV 2 Open LV 2 MaxPV 0 CurPV 2 ActPV 2 VGSize 31.50 GiB PESize 4.00 MiB Total PE 8064 Alloc PE / Size 3970 / 15.51GiB Free PE / Size 4094 / 15.99 GiB VGUUID PPrifh-glzl-nnxX-YkBm-xJ1s-rgnw-d1WsJd 说明:扩展后的卷子情况,可以看出大小增加了16GB(与第八步中的对比) 第十二步、将新增的逻辑卷全部扩展到“/”分区中 [root@linuxidc ~]# lvextend -L +15.99G/dev/VolGroup/lv_root Rounding size to boundary between physical extents: 15.99 GiB Extending logical volume lv_root to 23.75 GiB Logical volume lv_root successfully resized 说明:这里sdb4总共有16G,所以把16BG全部添加给根分区。 第十三步、查看“/”根分区格式,并重新刷新根分区的大小 [root@linuxidc ~]# e2fsck -f/dev/VolGroup/lv_root e2fsck 1.41.12 (17-May-2010) /dev/VolGroup/lv_root is mounted. e2fsck: 无法继续, 中止. [root@linuxidc ~]# resize2fs /dev/VolGroup/lv_root resize2fs 1.41.12 (17-May-2010) Filesystem at /dev/VolGroup/lv_root ismounted on /; on-line resizing required old desc_blocks = 1, new_desc_blocks = 2 Performing an on-line resize of/dev/VolGroup/lv_root to 6224896 (4k) blocks. The filesystem on /dev/VolGroup/lv_root isnow 6224896 blocks long. 说明:命令resize2fs即刷新根分区“/dev/VolGroup/lv_root”的容量。 第十三步、查看刷新后根分区的大小 [root@linuxidc ~]# df -h 文件系统容量已用可用已用%% 挂载点 /dev/mapper/VolGroup-lv_root 24G 7.1G 16G 32% / tmpfs 3.9G 144K 3.9G 1% /dev/shm /dev/sda3 83G 350M 79G 1% /media/Lucene 说明:可以看到根分区的大小有7.7G变成了24G,重启一下系统再来看情况。此时就可以继续安装软件了,不会提示空间不足了。 (责任编辑:IT) |