本文介紹如何縮減XFS分區格式的 / 目錄。如果需要縮減邏輯捲上的XFS文件系統,則需要通過備份、恢復和重新創建邏輯捲來實現。 |
這是當前文件系統佈局。當前掛載點/
容量爲17G。我們的目的時減少/
的容量。
在縮減分區前一定要備份重要數據。如果出現問題了,可以恢復數據。
注意:需要爲該服務器額外添加一塊硬盤,用來備份系統分區的。
在VMware Workstation中,加載光盤,並開機器用。開機按F2,進入BIOS,切換到Boot選項卡。將CD-ROM Drive移動到Hard Drive上面。按F10保存並重啓。
選擇Troubleshooting,然後選擇進入救援模式。
當進入下面界面時,選擇3,直接進入shell界面。
進入救援模式,可以看到/mnt/sysimage
目錄沒有掛載系統分區。
# ls -al /mnt/sysimage/
掛載分區之前,需要激活邏輯卷,下面激活卷組:
# vgchange -ay 2 logical volume(s) in volume group "cl" now active # vgs VG #PV #LV #SN Attr VSize VFree cl 1 2 0 wz--n- <19.00g 0
首先從備份開始,我們需要將邏輯卷掛載在某個位置。通過臨時掛載它,我們可以將/
分區備份到任何其他位置,並且在執行還原時需要對其進行訪問。
現在,在/mnt/sysimage/下創建兩個目錄。一個用於掛載該服務器的實際/
分區,另一個將用於存儲/
分區的備份。
# mkdir /mnt/sysimage/root # mkdir /mnt/sysimage/backup # mount /dev/cl/root /mnt/sysimage/root # mount /dev/sda /mnt/sysimage/backup/
通過運行xfsdump
來執行備份。
# xfsdump -l 0 -L "root lv backup" -M "backup" -f /mnt/sysimage/backup/root_backup.img /mnt/sysimage/root
dump使用級別0
(備份所有文件)時,將提示輸入備份會話標籤和媒體標籤,我們可以通過以下選項-f
將-L
和-M
添加到以下內容來避免出現提示:
-l 0
備份級別設置爲0,0級指所有文件都將備份。-L
指定備份會話的標籤-M
指定第一個媒介的標籤-f
指定備份目的文件。
備份完成後,我們可以卸載文件系統。
# umount /mnt/sysimage/root/
使用lvremove
命令刪除邏輯卷,並使用lvcreate
來創建新的卷。
# lvremove /dev/cl/root Do you really want to remove active logical volume cl/root? [y/n]: y Logical volume "root" successfully removed
之後,創建所需的邏輯卷大小,下面創建邏輯卷大小爲15G。
# lvcreate -Zy -L 15G -n root cl
使用-Zy
將新的邏輯卷中的前4KiB數據清零。
# mkfs.xfs /dev/cl/root
文件系統準備就緒後,將其掛載在/mnt/sysimage/root目錄中:
news.yesky.com/hotnews/241/274908741.shtml
news.163.com/17/0616/09/CN1TVBSF00018AOP.html
news.yesky.com/hotnews/334/265597334.shtml
# mount /dev/cl/root /mnt/sysimage/root/
使用xfsrestore
命令恢復之前備份的數據:
# xfsrestore -f /mnt/sysimage/backup/root_backup.img /mnt/sysimage/root
重啓進入系統檢查是否正常。斷開虛擬機的光驅連接,開機按F2,進入BIOS,設置引導順序,將硬盤放在第一項啓動,F10保存並重啓:
進入系統之後,檢查分區大小是否以縮減:
[root@localhost ~]# df -hT / Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/cl-root xfs 15G 1.7G 14G 11% /
就這樣,藉助xfsdump
和xfsrestore
實用程序,我們完成了縮減XFS文件系統和邏輯卷的工作。