因为虚拟机硬盘不够用了。然后自己给虚拟机加了容量。

一. 在虚拟机上增加磁盘空间

如下图。



增加完后会有提示 “磁盘已成功扩展。您必须从客户机操作系统内部对磁盘重新进行分区和扩展文件系统。是继续完成以下步骤才算成功。

二、调整虚拟机磁盘LVM

 

1.查看现有的硬盘分区(现在空间没有变大)


[html]  view plain  copy
 print ?
  1. # df -h  

2.对新增的硬盘空间做新增分区(硬盘数没有增加,增加的是空间)

[html]  view plain  copy
 print ?
  1. # fdisk  /dev/sda  

  2. 执行前的状态忘了保存记录了,这是我整个流程执行完毕之后命令行的结果、
    当时  有/dev/sda1   sda2   sda3,   然后我在下一个命令中输入的分区号是  4

  3. /dev/sda1 挂载到 /boot 目录下 (df -T -h 可以查看)  /boot 目录下的文件主要用于linux系统的启动
  4. /dev/sda2 挂载到 / 目录下
  5. /dev/sda3 挂载的是 swap分区 swap 在系统的物理内存不够用的时候,把硬盘空间中的一部分空间释放出来,以供当前运行的程序使用
  6. (sda3不知道能不能)

  7. 系统最多支持4个主分区,为解决分区不够的问题,又产生了逻辑分区的概念。这样,系统最多可以有3个主分区,一个逻辑分区。在逻辑分区中,又可以再分区。

  8. [root@localhost Desktop]# fdisk -l
    Disk /dev/sda: 85.9 GB, 85899345920 bytes
    255 heads, 63 sectors/track, 10443 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: 0x0005ebd8
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           1          39      307200   83  Linux
    Partition 1 does not end on cylinder boundary.
    /dev/sda2              39        2358    18631680   83  Linux
    /dev/sda3            2358        2611     2031616   82  Linux swap / Solaris
    /dev/sda4            2611       10443    62911877+  8e  Linux LVM

照着红色部分输入,按回车。

The number of cylinders for this disk isset to 7832.

There is nothing wrong with that, but thisis larger than 1024,

and could in certain setups cause problemswith:

1) software that runs at boot time (e.g.,old versions of LILO)

2) booting and partitioning software fromother OSs

   (e.g., DOS FDISK, OS/2 FDISK)

 

Command (m for help): n 说明:新增分区

Command action

   e   extended

   p   primarypartition (1-4)

p

Partition number (1-4): 4 说明:新增分区号(1,2默认已经用了)

First cylinder (2611-7832, default 2611): 默认回车(最小)

Using default value 2611

Last cylinder or +size or +sizeM or +sizeK(2611-7832, default 7832):默认回车(最大)

Using default value 7832

 

Command (m for help): t 说明:修改分区类型

Partition number (1-4): 说明:修改分区类型对应的分区号

Hex code (type L to list codes): 8e 说明:8e是lvm磁盘类型

Changed system type of partition 3 to 8e(Linux LVM)

 

Command (m for help): p 说明:打印分区表

 

Disk /dev/sda: 64.4 GB, 64424509440 bytes

255 heads, 63 sectors/track, 7832 cylinders

Units = cylinders of 16065 * 512 = 8225280bytes

 

   Device Boot      Start        End      Blocks  Id  System

/dev/sda1   *           1         13      104391  83  Linux

/dev/sda2              14       2610    20860402+ 8e  Linux LVM

/dev/sda3            2611       7832    41945715  8e  Linux LVM

 

Command (m for help): w 说明:保存退出

The partition table has been altered!

 

3.重启系统

[html]  view plain  copy
 print ?
  1. # reboot  

4.查看硬盘情况(核对刚才所做的分区操作是否保存成功)

[html]  view plain  copy
 print ?
  1. # fdisk -l  
  2. 然后就可以看到硬盘容量  85G  不知道为啥多出来点。。。有机会了解下liunx文件管理系统,再写个文档

5.查看当前分区的类型

[html]  view plain  copy
 print ?
  1. # df -T /dev/sda1 说明:查看当前的主分区类型  
  2. [root@localhost Desktop]# df -T -h
    Filesystem     Type   Size  Used Avail Use% Mounted on
    /dev/sda2      ext4    18G  9.3G  7.3G  56% /
    tmpfs          tmpfs  932M  228K  931M   1% /dev/shm
    /dev/sda1      ext4   283M   41M  228M  16% /boot

  3. 然后当时的结果是,还是没有/sda4……      需要挂载sda4到一个目录中  我在根目录下设置了一个 /usb 目录
  4. mkdir /usb
  5. mount /dev/sda4 /usb
  6. 提示    mount:you must specify the filesystem type  然后执行下一条命令

 6.创建文件系统在新的磁盘上

[html]  view plain  copy
 print ?
  1. # mkfs.ext4 /dev/sda3 说明:ext4为你使用df -h -T 查看到的文件系统类型(ext2、ext3、ext4等)
  2. 然后重新执行   mount /dev/sda4 /usb

执行到这一步。没有按照教程走,然后

注意:这种挂在为临时挂在,在系统重启之后挂载信息就会丢失,为了解决这个问题就必须要修改/etc/fstab 这个文件,添加信息进去


[html]  view plain  copy
 print ?
  1. 查询UUID

  2. # [root@localhost Desktop]$ blkid
    /dev/sda2: UUID="52bf7979-3cae-47aa-93d3-df686383d2a4" TYPE="ext4" 
    /dev/sda1: UUID="4c8d1572-8bbe-4e0e-88d7-c497262efe2c" TYPE="ext4" 
    /dev/sda3: UUID="f566d2e7-899b-4f87-900d-429015142fe6" TYPE="swap" 
    /dev/sda4: UUID="538ea2e2-8fa4-4094-9e12-ac41c3aa875d" TYPE="ext4"   

 

然后改为:




关于里面的参数说明 :



fstab中存放了与分区有关的重要信息,其中每一行为一个分区记录,每一行又可分为六个部份,下面以/dev/hda7 / ext2 defaults 1 1为例逐个说明:
  1. 第一项是您想要mount的储存装置的实体位置,如hdb或如上例的/dev/hda7。设备名或者设备卷标名,(/dev/sda10 或者 LABEL=/)[源设备位置]
  2. 第二项就是您想要将其加入至哪个目录位置,如/home或如上例的/,这其实就是在安装时提示的挂入点。设备挂载目录(例如上面的“/”或者“/mnt/D/”)[将要挂载到的位置]
  3. 第三项就是所谓的local filesystem,其包含了以下格式:如ext、ext2、msdos、iso9660、nfs、swap等,或如上例的ext2,可以参见 /prco/filesystems说明。设备文件系统(例如上面的“ext3”或者“vfat”)[源设备的文件系统格式]
  4. 第四项就是您mount时,所要设定的状态,如ro(只读)或如上例的defaults(包括了其它参数如rw, suid, dev, exec, auto, nouser, and async),可以参见「mount nfs」。(看帮助man mount)
对于已经挂载好的设备,例如上面的/dev/sda2,现在要改变挂载参数,这时可以不用卸载该设备,而可以使用下面的命令(没有挂载的设 备,remount 这个参数无效)#mount /mnt/D/ -o remount,ro   (改defaults为ro)为了安全起见,可以指明其他挂载参数,例如:
noexec(不允许可执行文件可执行,但千万不要把根分区挂为noexec,那就无法使用系统了,连mount 命令都无法使用了,这时只有重新做系统了!nodev(不允许挂载设备文件)nosuid,nosgid(不允许有suid和sgid属 性)nouser(不允许普通用户挂载)
  5. 第五项是提供DUMP功能,在系统DUMP时是否需要BACKUP的标志位,其内定值是0。指明是否要备份,(0为不备份,1为要备份,一般根分区要备份)
  6. 第六项是设定此filesystem是否要在开机时做check的动作,除了root的filesystem其必要的check为1之外,其它皆可视需要 设定,内定值是0。指明自检顺序。 (0为不自检,1或者2为要自检,如果是根分区要设为1,其他分区只能是2)



然后  reboot  重启,然后使用df -T -h  即可看到新增加的/usb分区大小。增加vm  硬盘容量成功!


底下的这个教程是别人来的,还不知道这些命令的具体含义,等了解了文件管理这一块的东西,再完善 



 7.创建PV(pv组成vg,vg组成lv)

[html]  view plain  copy
 print ?
  1. # pvcreate /dev/sda3  

 

查看pv状态

[html]  view plain  copy
 print ?
  1. # pvdisplay  

查看vg状态

[html]  view plain  copy
 print ?
  1. # vgdisplay  

8.刚创建的PV加入相应的VG

[html]  view plain  copy
 print ?
  1. # vgextend vg_centos /dev/sda3 说明 vg_centos是我的服务器vg名称,请通过查看vg状态得到名称VG name  


9.查看LV状态,把VG加入到LV

[html]  view plain  copy
 print ?
  1. # lvdisplay  

10.

[html]  view plain  copy
 print ?
  1. # lvextend -l +2559 /dev/VolGroup00/LogVol00   

说明:2559为上面pvdisplay查看到的free的PE数量

如果刚才看到是0,要用命令pvdisplay再看一下

11.用 resize2fs 调整文件系统大小

[html]  view plain  copy
 print ?
  1. # resize2fs/dev/mapper/VolGroup00-LogVol00  

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐