1. 程式人生 > >增加 VM虛擬機器硬碟容量

增加 VM虛擬機器硬碟容量

 因為虛擬機器硬碟不夠用了。然後自己給虛擬機器加了容量。

一. 在虛擬機器上增加磁碟空間

如下圖。



增加完後會有提示 “磁碟已成功擴充套件。您必須從客戶機作業系統內部對磁碟重新進行分割槽和擴充套件檔案系統。是繼續完成以下步驟才算成功。

二、調整虛擬機器磁碟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