Centos6 标准分区转换为 LVM 分区就这么简单
文章目錄
- 1. 整體操作思路圖
- 2. 文件系統(tǒng)現(xiàn)狀分析
- (1) 用 df 指令查看文件系統(tǒng)的磁盤空間使用情況。
- (2) 用 fdisk 指令查看分區(qū)情況。
- 3. 重新劃分磁盤剩余可用空間
- (1) 關(guān)閉系統(tǒng)交換區(qū)
- (2) 重新劃分可用空間
- 4. 建立 LVM 分區(qū)
- 5. 備份根目錄和 /home 目錄,并還原到 LVM 分區(qū)
- (1) dump 和 restore 指令對根目錄備份及還原操作
- (2) dd 克隆 /home 目錄到新分區(qū)
- 6. 修改啟動引導(dǎo)配置文件 /boot/grub/grub.conf 和 文件系統(tǒng)配置表 /ect/fstab
- (1) 修改還原后的根目錄所在分區(qū)的 /etc/fstab
- (2) 修改 /boot/grub/grub.conf 文件
- (3) 進(jìn)入系統(tǒng),再次查看系統(tǒng)信息
- 7. 后繼對 /dev/sda2 和 /dev/sda3 修改
1. 整體操作思路圖
2. 文件系統(tǒng)現(xiàn)狀分析
(1) 用 df 指令查看文件系統(tǒng)的磁盤空間使用情況。
[root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda2 20G 4.2G 14G 23% / tmpfs 499M 1004K 498M 1% /dev/shm /dev/sda1 93M 52M 36M 60% /boot /dev/sda3 20G 18G 690M 97% /home以上信息顯示 /home 目錄已占用分區(qū)97%的空間。因為采用標(biāo)準(zhǔn)分區(qū),不能在原有的基礎(chǔ)上擴(kuò)容。為了以后更好地管理磁盤,我們需要將現(xiàn)有的標(biāo)準(zhǔn)分區(qū)轉(zhuǎn)換成 LVM 分區(qū)。
目前有兩種可選方案:
- 一添加新的磁盤,劃分 LVM 分區(qū),遷移舊磁盤文件到新磁盤;
- 二把原磁盤剩余空間劃分為 LVM 分區(qū),遷移舊分區(qū)文件到新的 LVM 分區(qū)。
(2) 用 fdisk 指令查看分區(qū)情況。
[root@localhost ~]# fdisk -lDevice Boot Start End Blocks Id System /dev/sda1 * 1 13 102400 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 13 2563 20480000 83 Linux /dev/sda3 2563 5113 20480000 83 Linux /dev/sda4 5113 12162 56622080 5 Extended /dev/sda5 5113 5374 2097152 82 Linux swap / Solaris以上信息顯示 /dev/sda4 為擴(kuò)展分區(qū),約有56G的可用空間。所以,選用第二種方案為皆。
3. 重新劃分磁盤剩余可用空間
因為swap交換區(qū)在 /dev/sda4 擴(kuò)展分區(qū)內(nèi),為數(shù)據(jù)安全起見,我們需要先關(guān)閉 swap 交換區(qū),再通過 fdisk 指令的一系列操作來實現(xiàn)分區(qū)的刪除和建立。
(1) 關(guān)閉系統(tǒng)交換區(qū)
# 查看系統(tǒng)物理內(nèi)存及 swap 內(nèi)存情況 [root@localhost ~]# freetotal used free shared buffers cached Mem: 1020936 476744 544192 142312 17996 293256 -/+ buffers/cache: 165492 855444 Swap: 2097148 135024 1962124 # 交換區(qū)在使用中# 關(guān)閉所有交換區(qū),并顯示詳細(xì)信息 [root@localhost ~]# swapoff -av swapoff on /dev/sda5[root@localhost ~]# freetotal used free shared buffers cached Mem: 1020936 579804 441132 177268 18152 329192 -/+ buffers/cache: 232460 788476 Swap: 0 0 0 # 交換區(qū)已關(guān)閉(2) 重新劃分可用空間
[root@localhost ~]# fdisk /dev/sdaWARNING: DOS-compatible mode is deprecated. It's ...Command (m for help): d # 刪除 /dev/sda4 擴(kuò)展分區(qū) Partition number (1-6): 4Command (m for help): pDisk /dev/sda: 100.0 GB, 100030242816 bytes ........此處省略........Device Boot Start End Blocks Id System /dev/sda1 * 1 13 102400 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 13 2563 20480000 83 Linux /dev/sda3 2563 5113 20480000 83 LinuxCommand (m for help): n # 新建 /dev/sda4 主要分區(qū) Command actione extendedp primary partition (1-4) p Partition number (1-4): 4 ....下面的步驟按回車即可Command (m for help): p ........此處省略........ Device Boot Start End Blocks Id System /dev/sda1 * 1 13 102400 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 13 2563 20480000 83 Linux /dev/sda3 2563 5113 20480000 83 Linux /dev/sda4 5113 12161 56619808+ 83 LinuxCommand (m for help): w The partition table has been altered! ........此處省略........重啟系統(tǒng),使分區(qū)改動生效。
4. 建立 LVM 分區(qū)
在 /dev/sda4 主要分區(qū)的基礎(chǔ)上,遵循 LVM 分區(qū)建立的原則,根據(jù)新建物理卷(pv),生成卷組(vg),新建邏輯卷(lv)這幾個步驟即可完成 LVM 分區(qū)的建立。
# 新增物理卷 [root@localhost ~]# pvcreate /dev/sda4Physical volume "/dev/sda4" successfully created# 新增卷組 [root@localhost ~]# vgcreate VG2019 /dev/sda4Volume group "VG2019" successfully created# 查看卷組詳情 [root@localhost ~]# vgdisplay--- Volume group ---VG Name VG2019System ID Format lvm2Metadata Areas 1Metadata Sequence No 1VG Access read/writeVG Status resizableMAX LV 0Cur LV 0Open LV 0Max PV 0Cur PV 1Act PV 1VG Size 53.99 GiBPE Size 4.00 MiBTotal PE 13822Alloc PE / Size 0 / 0 Free PE / Size 13822 / 53.99 GiB # 可用空間VG UUID oPptrC-aPF6-Dre1-H3Tu-4LfL-Dm6I-2zBbA5# 新增邏輯卷 LVroot 和 LVhome 分別用于還原舊分區(qū)的根目錄和 /home 目錄 [root@localhost ~]# lvcreate -L 20G -n LVroot VG2019Logical volume "LVroot" created. [root@localhost ~]# mkfs -t ext4 /dev/VG2019/LVroot [root@localhost ~]# lvcreate -L 33G -n LVhome VG2019Logical volume "LVhome" created. [root@localhost ~]# mkfs -t ext4 /dev/VG2019/LVhome [root@localhost ~]# lvscanACTIVE '/dev/VG2019/LVroot' [20.00 GiB] inheritACTIVE '/dev/VG2019/LVhome' [33.00 GiB] inherit5. 備份根目錄和 /home 目錄,并還原到 LVM 分區(qū)
用 dump 指令和 restore 指令備份及還原根目錄到新分區(qū)。
用 dd 指令克隆 /home 目錄到新分區(qū)。
為什么要選用兩種不同的方法?
- dump 指令僅針對根目錄已占用的 4.2G 數(shù)據(jù)進(jìn)行操作,dd 指令針對整個分區(qū)(20G)進(jìn)行操作,太費時。
- /home 目錄數(shù)據(jù)占總分區(qū)的 97% , 從 dump 備份到 restore 還原,所用的時間與 dd 直接拷貝到新分區(qū)的時間幾乎一樣。但 dump 備份文件需要占用空間,而 dd 指令直接把原分區(qū)搬過去。
(1) dump 和 restore 指令對根目錄備份及還原操作
# 新建 backup, restore 目錄。 [root@localhost ~]# mkdir /mnt/backup /mnt/restore [root@localhost ~]# ls /mnt/ backup restore usb# 把 /dev/mapper/VG2019-LVhome 掛載到 /mnt/backup 目錄,用于存放根目錄備份文件。 # 把 /dev/mapper/VG2019-LVroot 掛載到 /mnt/restore 目錄,用于還原根目錄。 [root@localhost ~]# mount /dev/mapper/VG2019-LVhome /mnt/backup/ [root@localhost ~]# mount /dev/mapper/VG2019-LVroot /mnt/restore/ [root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda2 20G 4.2G 14G 24% / tmpfs 499M 148K 499M 1% /dev/shm /dev/sda1 93M 52M 36M 60% /boot /dev/sda3 20G 18G 690M 97% /home /dev/mapper/VG2019-LVhome 33G 48M 31G 1% /mnt/backup /dev/mapper/VG2019-LVroot 20G 44M 19G 1% /mnt/restore # 備份根目錄 [root@localhost ~]# dump -0f /mnt/backup/rootfs0913.bak /# 還原根目錄 [root@localhost ~]# cd /mnt/restore/ [root@localhost restore]# restore -rf /mnt/backup/rootfs0913.bak # 查看 LVroot 邏輯卷使用情況 [root@localhost restore]# df -h /dev/mapper/VG2019-LVroot Filesystem Size Used Avail Use% Mounted on /dev/mapper/VG2019-LVroot 20G 4.2G 15G 23% /mnt/restore從還原前后的邏輯卷 LVroot 的空間使用情況進(jìn)行對比,可知道根目錄已還原到此卷上。
(2) dd 克隆 /home 目錄到新分區(qū)
# 移動根目錄備份文件到其他目錄保存,如后繼不需要此備份,可省略此步驟 [root@localhost mnt]# mv backup/rootfs0913.bak /mnt/# 用 dd 指令克隆 /home 目錄所在分區(qū)到 LVhome 邏輯卷分區(qū) [root@localhost ~]# dd if=/dev/sda3 of=/dev/mapper/VG2019-LVhome在另一個終端窗口輸入以下指令,可在 dd 指令所在窗口中顯示拷貝進(jìn)度。
[root@localhost ~]# watch -n 5 pkill -USR1 -x dd
dd 指令拷貝數(shù)據(jù)完成后,查看各分區(qū)的 UUID。我們會發(fā)現(xiàn)一個問題, /dev/sda3 與 /dev/mapper/VG2019-LVhome 的 UUID 是一樣的。此時,我們修改其中一個分區(qū)的 UUID 即可。
我們選擇修改 /dev/mapper/VG2019-LVhome 的 UUID ,方法如下:
[root@localhost ~]# uuidgen | xargs tune2fs /dev/mapper/VG2019-LVhome -U再次查看各分區(qū)的 UUID :
[root@localhost restore]# blkid /dev/sda1: UUID="3b93bfac-1a0d-4735-85c3-ae5f721ad84e" TYPE="ext4" /dev/sda2: UUID="8b50a8ab-931f-4bd6-a0b7-ca826b4c93c3" TYPE="ext4" /dev/sda3: UUID="89dc312e-4099-43ae-aa2b-4a25c5607d87" TYPE="ext4" /dev/sda4: UUID="fmLY2K-ELmg-74IX-EtAM-FG3Z-f016-KstZfp" TYPE="LVM2_member" /dev/mapper/VG2019-LVroot: UUID="51fde19e-463e-4efb-b2af-554a74656bfc" TYPE="ext4" /dev/mapper/VG2019-LVhome: UUID="3cd0bb7c-ba62-4bf0-8507-c424b7f2ef2b" TYPE="ext4"6. 修改啟動引導(dǎo)配置文件 /boot/grub/grub.conf 和 文件系統(tǒng)配置表 /ect/fstab
為了系統(tǒng)能夠使用新的根目錄和 /home 目錄,我們需要修改啟動引導(dǎo)配置文件和文件系統(tǒng)配置表。 grub.conf 文件決定系統(tǒng)從哪個分區(qū)啟動,fstab 文件決定根目錄和 /home 掛載到哪個分區(qū)。
(1) 修改還原后的根目錄所在分區(qū)的 /etc/fstab
切記: 不要直接 /etc/fstab
# 修改根目錄( /home 目錄)所要掛載到的分區(qū)的 UUID, blkid 指令可查各分區(qū) UUID [root@localhost ~]# vim /mnt/restore/etc/fstab修改以下兩項的 UUID :
UUID=51fde19e-463e-4efb-b2af-554a74656bfc /
UUID=3cd0bb7c-ba62-4bf0-8507-c424b7f2ef2b /home
(2) 修改 /boot/grub/grub.conf 文件
如果 /boot 目錄不是獨立分區(qū),需要到還原后的根目錄所在分區(qū)找到此文件修改。
[root@localhost ~]# vim /boot/grub/grub.conf修改 UUID: root=UUID=51fde19e-463e-4efb-b2af-554a74656bfc
刪除所有 rd_NO_LVM 選項, 這個很重要
改好以上兩個文件后,重啟系統(tǒng):
[root@localhost ~]# reboot(3) 進(jìn)入系統(tǒng),再次查看系統(tǒng)信息
用 df -h 查看磁盤情況:
以上信息顯示,根目錄和 /home 目錄已掛載到 LVM 分區(qū),并且能正常工作。但是這里 /home 目錄還有個問題: 經(jīng)過 dd 指令克隆到新分區(qū)后,新分區(qū)的總?cè)萘孔優(yōu)橹?/home 目錄所在分區(qū) /dev/sda3 的容量(20G),與 lv 邏輯卷劃分的33G容量明顯矛盾。我們可以通過對新分區(qū)擴(kuò)容來解決這個問題。
[root@localhost ~]# lvextend -L +200M /dev/VG2019/LVhome [root@localhost ~]# e2fsck -f /dev/VG2019/LVhome [root@localhost ~]# resize2fs -p /dev/VG2019/LVhome再次用 df -h 查看磁盤情況:
/home目錄總?cè)萘啃畔@示正常了。
7. 后繼對 /dev/sda2 和 /dev/sda3 修改
修改思路: 刪除兩分區(qū),新建一個主要分區(qū)(相當(dāng)于兩分區(qū)合并),生成物理卷,加入 VG2019 這個卷組。
最終結(jié)果如圖:
總結(jié)
以上是生活随笔為你收集整理的Centos6 标准分区转换为 LVM 分区就这么简单的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Unity3D日常BUG】Unity3
- 下一篇: msn无法登陆解决一则