VMware下Linux的虚拟机增加磁盘空间+扩展根目录空间

先关闭虚拟机电源,做如下设置:“ 虚拟机”--“虚拟机设置”--“磁盘”--“扩展”
选择添加好内存后 点击  点击"Expand“  左边第一个
可以随意添加你需要增到到的磁盘大小(如15Gb,表示磁盘总量,包含原来的磁盘容量); 再重启电源进入系统做如下步骤设置。
1. 启动虚拟机系统,用root登录(后续所有步骤都应以root用户身份登录操作),在 命令行用fdisk -l查看。由于这里是直接修改了原始空间大小,因此可以看到/dev/sda空间改变为16.1GB(原磁盘空间从10G增加到15G)。如果是从VMware菜单里增加虚拟硬盘,则会多出一个/dev/sd?,这里的?代表硬盘编号,第一个硬盘编号为a即sda,第二个就是sdb,第三个是sdc,以此类推,一般来说,如果以前没有增加过硬盘,那么原来的硬盘就是sda,通过VMware菜单增加的虚拟硬盘编号就是sdb。如果添加的第二块硬盘是IDE硬盘,就应该看到hdb,如果是 SCSI硬盘,看到的就应该是sdb。
 
使用linux下的fdisk工具进行分区 
用root用户登录到你的linux系统,查看你系统的分区 如图
根据提示信息可以判断出此系统的磁盘接口为SCSI,对应“sda”如果上面的字体是“hda”,那么此系统的磁盘接口为IDE对应“hda”所以我做一下操作:
2.使用fdisk /dev/sda进入菜单项,m是列出菜单,p是列出分区表,n是增加分区,w是保存并推出。由于这里增加的磁盘只有5G,因此5G划为一个区。
 
[root@localhost ~]# fdisk /dev/sda
 
The number of cylinders for this disk is set to 1958.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)
 
Command (m for help): p
 
Disk /dev/sda: 16.1 GB, 16106127360 bytes
255 heads, 63 sectors/track, 1958 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14        1305    10377990   8e  Linux LVM
 
 
Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 3      //fdisk会让你选择主分区的编号,如果已经有了主分区sda1,sda2,那么编号就选3,即要创建的该分区为sda3
First cylinder (1306-1958, default 1306): +1306//此时,fdisk又会让你选择该分区的开始值这个就是分区的Start 值(start cylinder);这里最好直接按回车 我选择+1306 意思都一样的
Last cylinder or +size or +sizeM or +sizeK (1306-1958, default 1958): +1958 //此时,fdisk又会让你选择该分区的开始值这个就是分区的End 值这里最好直接按回车 一样的操作
Value out of range.
Last cylinder or +size or +sizeM or +sizeK (1306-1958, default 1958):
Using default value 1958
 
Command (m for help): p //再次查看列表分区
 
Disk /dev/sda: 16.1 GB, 16106127360 bytes
255 heads, 63 sectors/track, 1958 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
 
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14        1305    10377990   8e  Linux LVM
/dev/sda3            1306        1958     5245222+  83  Linux
//增加了 /dev/sda3 但是 Linux 后没有LVM  后面步骤再解释
 
Command (m for help): w //保存并退出 分区划分完毕 设备或资源忙 不用管
The partition table has been altered!
 
Calling ioctl() to re-read partition table.
 
WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.
/dev/sda3            1306        1958     5245222+  83  Linux

 

接着重启
3.  使用mkfs.ext3 /dev/sda3    格式化分区
 
[root@localhost ~]# df -h  #挂载前的分区情况
文件系统              容量  已用 可用 已用% 挂载点
/dev/mapper/VolGroup00-LogVol00
                      8.6G  2.8G  5.4G  35% /
/dev/sda1              99M   12M   82M  13% /boot
tmpfs                 125M     0  125M   0% /dev/shm
 
 
[root@localhost ~]# mkfs.ext3 /dev/sda3 //mkfs.ext3 /dev/sda3    格式化分区
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
656000 inodes, 1311305 blocks
65565 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1346371584
41 block groups
32768 blocks per group, 32768 fragments per group
16000 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736
 
 
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
 
 
This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
 
 
[root@localhost ~]# cd /
[root@localhost /]# mkdir /cm                       #增加一个/cm
 
 
[root@localhost /]# mount /dev/sda3 /cm           #挂载分区到   /cm         
[root@localhost /]# df -h                                     #挂载后的分区情况
文件系统              容量  已用 可用 已用% 挂载点
/dev/mapper/VolGroup00-LogVol00
                      8.6G  2.8G  5.4G  35% /
/dev/sda1              99M   12M   82M  13% /boot
tmpfs                 125M     0  125M   0% /dev/shm
/dev/sda3             5.0G  139M  4.6G   3% /cm

 

 
 
//4.设置开机自动加载     
创建加载点:mkdir /cm 挂载之后,      修改vi /etc/fstab  分区表文件,
在文件最后加上      /dev/sda3  /cm   ext3    defaults    0 0     然后保存,重启即可。  
(注意:修改分区表如果有误,将导致进不了linux桌面系统,但这时系统会进入commandline模式,我们可以在commandline模式下对有误的fstab进行修复更改,不过默认情况下这个commandline模式会是Read-Only file system,这意味着你的任何修改操作都是不允许的,但可以通过命令 mount / -o remount,rw  来解除这个限制)。
扩展分区 完毕 ,相当于winOS 加上一块硬盘并分区格式化

接下来,的操作相当于给winOS的 C盘扩展内存
liunx 根目录扩展,使用刚才的加上的/dev/sda3   融进根内存
取消开机自己挂载
 
在文件最后加上      /dev/sda3  /cm   ext3    defaults    0 0     然后保存,重启即可。
这一步注释掉
 
4. 我们的新建分区/dev/sda3,却不是LVM的。所以,接下来使用fdisk将其改成LVM的
 
# fdisk /dev/sda
Command (m for help): m
Command (m for help): t //改变分区系统id
Partition number (1-4): 3 //指定分区号
Hex code (type L to list codes): 8e //指定要改成的id号,8e代表LVM
Changed system type of partition 3 to 8e (Linux LVM)
Command (m for help): w

 

 
5、重启系统后,登陆系统。(一定要重启系统,否则无法扩充新分区)
6.格式化该新添加的分区
 
[root@localhost ~]# fdisk -l
 
Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0000bcfb
 
   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         784     5778432   8e  Linux LVM
Partition 2 does not end on cylinder boundary.
/dev/sda3             784        1305     4190956+  8e  Linux LVM
 
Disk /dev/mapper/VolGroup-lv_root: 5272 MB, 5272240128 bytes
255 heads, 63 sectors/track, 640 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
 
Disk /dev/mapper/VolGroup-lv_swap: 641 MB, 641728512 bytes
255 heads, 63 sectors/track, 78 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

 

 
你会发现多了一块分区 结尾是 Linux LVM
# mkfs -t ext3 /dev/sda3 //在硬盘分区“/dev/sda3”上创建“ext3”文件系统
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
2621440 inodes, 10484755 blocks
524237 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
320 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624
 
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
 
This filesystem will be automatically checked every 23 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

 

# mkfs -t ext3 /dev/sda3 //在硬盘分区“/dev/sda3”上创建“ext3”文件系统
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
2621440 inodes, 10484755 blocks
524237 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
320 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624
 
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
 
This filesystem will be automatically checked every 23 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

 

 
此时我们就可以使用该新增分区啦:
 
# pvcreate /dev/sda3
  Physical volume "/dev/sda3" successfully created
# pvcreate /dev/sda3 //pvcreate指令用于将物理硬盘分区初始化为物理卷,以便被LVM使用。要创建物理卷必须首先对硬盘进行分区,并且将硬盘分区的类型设置为“8e”后,才能使用pvcreat指令将分区初始化为物理卷
  Physical volume "/dev/sda3" successfully created
# df -h
Filesystem                    Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root   18G  1.7G   15G  10% /
tmpfs                         1.9G     0  1.9G   0% /dev/shm
/dev/sda1                     485M   32M  428M   7% /boot
# vgextend /dev/mapper/VolGroup-lv_root /dev/sda3    //其中是当前需要扩充的lvm组名,可以通过df -h查看,例如我的是: /dev/mapper/VolGroup-lv_root) //vgextend指令用于动态的扩展卷组,它通过向卷组中添加物理卷来增加卷组的容量
  Volume group name VolGroup/lv_root has invalid characters
# vgextend /dev/mapper/VolGroup /dev/sda3    //原来这个组名,是-之前的字符串——这要是没有文章看着对比分析,谁知道啊?
  Volume group "VolGroup" successfully extended
#vgdisplay    //用于显示LNM卷组的元数据信息
  --- Volume group ---
  VG Name               VolGroup
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  4
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               59.50 GiB
  PE Size               4.00 MiB
  Total PE              15232
  Alloc PE / Size       4994 / 19.51 GiB
  Free  PE / Size       10238 / 39.99 GiB
  VG UUID               Ecv3ml-86eg-LTsH-mALD-mLxW-v3Ao-GEqiFc
(主要查看Free  PE / Size       10238 / 39.99 GiB,说明我们最多可以有39.99GB的扩充空间。我一般选择小于等于39.99GB)
# lvextend -L +39.99G /dev/VolGroup/lv_root /dev/sda3
  Rounding size to boundary between physical extents: 39.99 GiB
  Extending logical volume lv_root to 57.56 GiB
  Logical volume lv_root successfully resized
# e2fsck -f /dev/VolGroup/lv_root
e2fsck 1.41.12 (17-May-2010)
/dev/VolGroup/lv_root is mounted.
e2fsck: Cannot continue, aborting.
# resize2fs  /dev/VolGroup/lv_root
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/VolGroup/lv_root is mounted on /; on-line resizing required
old desc_blocks = 2, new_desc_blocks = 4
Performing an on-line resize of /dev/VolGroup/lv_root to 15089664 (4k) blocks.
The filesystem on /dev/VolGroup/lv_root is now 15089664 blocks long.
# df -h
Filesystem                    Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root   57G  1.7G   53G   3% /
tmpfs                         1.9G     0  1.9G   0% /dev/shm
/dev/sda1                     485M   32M  428M   7% /boot

 

可以看到,这个逻辑卷已经成功的扩容,根目录又可以装更多东西了!
本机
未分区之前:
 
/*********************/
posted @ 2020-05-12 10:13  阿阳有话说  阅读(1131)  评论(0编辑  收藏  举报