如何縮減XFS分區格式的根目錄

本文介紹如何縮減XFS分區格式的 / 目錄。如果需要縮減邏輯捲上的XFS文件系統,則需要通過備份、恢復和重新創建邏輯捲來實現。
系統環境

Centos8

當前系統分區佈局

這是當前文件系統佈局。當前掛載點/容量爲17G。我們的目的時減少/的容量。
Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄

備份數據

在縮減分區前一定要備份重要數據。如果出現問題了,可以恢復數據。

注意:需要爲該服務器額外添加一塊硬盤,用來備份系統分區的。

進入救援模式

在VMware Workstation中,加載光盤,並開機器用。開機按F2,進入BIOS,切換到Boot選項卡。將CD-ROM Drive移動到Hard Drive上面。按F10保存並重啓。
Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄
選擇Troubleshooting,然後選擇進入救援模式。
Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄
Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄
當進入下面界面時,選擇3,直接進入shell界面。
Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄
進入救援模式,可以看到/mnt/sysimage目錄沒有掛載系統分區。

# ls -al /mnt/sysimage/

Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄

激活邏輯卷組

掛載分區之前,需要激活邏輯卷,下面激活卷組:

# 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

Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄

掛載系統分區和用來備份數據的分區

首先從備份開始,我們需要將邏輯卷掛載在某個位置。通過臨時掛載它,我們可以將/分區備份到任何其他位置,並且在執行還原時需要對其進行訪問。

現在,在/mnt/sysimage/下創建兩個目錄。一個用於掛載該服務器的實際/分區,另一個將用於存儲/分區的備份。

# mkdir /mnt/sysimage/root
# mkdir /mnt/sysimage/backup
# mount /dev/cl/root /mnt/sysimage/root
# mount /dev/sda /mnt/sysimage/backup/

Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄

使用xfsdump備份/分區

通過運行xfsdump來執行備份。

# xfsdump -l 0 -L "root lv backup" -M "backup" -f /mnt/sysimage/backup/root_backup.img /mnt/sysimage/root

Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄
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

Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄
之後,創建所需的邏輯卷大小,下面創建邏輯卷大小爲15G。

# lvcreate -Zy -L 15G -n root cl

Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄
使用-Zy將新的邏輯卷中的前4KiB數據清零。

創建新的XFS分區
# mkfs.xfs /dev/cl/root

Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄

掛載並恢復數據

文件系統準備就緒後,將其掛載在/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

Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄
重啓進入系統檢查是否正常。斷開虛擬機的光驅連接,開機按F2,進入BIOS,設置引導順序,將硬盤放在第一項啓動,F10保存並重啓:
Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄
進入系統之後,檢查分區大小是否以縮減:

[root@localhost ~]# df -hT /
Filesystem          Type  Size  Used Avail Use% Mounted on
/dev/mapper/cl-root xfs    15G  1.7G   14G  11% /

Centos8中如何縮減XFS分區格式的根目錄Centos8中如何縮減XFS分區格式的根目錄

總結

就這樣,藉助xfsdumpxfsrestore實用程序,我們完成了縮減XFS文件系統和邏輯卷的工作。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章