LVM中對基於xfs的檔案系統進行擴容

roc_guo發表於2023-09-23

Xfs是CentOS7的預設檔案系統型別,而不同檔案系統型別對應的建立、檢查、調整 不同。

LVM中對基於xfs的檔案系統進行擴容LVM中對基於xfs的檔案系統進行擴容

在xfs檔案系統中,只能增大分割槽而不能減小。

[root@localhost ~]# ls /lib//modules/3.10.0-229.20.1.el7.x86_64/kernel/fs   #檢視核心所支援的所有檔案系統型別
binfmt_misc.ko  ceph    dlm    fat      gfs2   lockd       nfs_common  overlayfs  udf
btrfs           cifs    exofs  fscache  isofs  mbcache.ko  nfsd        pstore     xfs
cachefiles      cramfs  ext4   fuse     jbd2   nfs         nls         squashfs

我之前已經新建了分割槽並加入到vg中,對物理邊界也已擴充套件。

擴充套件邏輯邊界時,報錯如下所示:

[root@localhost ~]# resize2fs -p /dev/mapper/centos-root     
resize2fs 1.42.9 (28-Dec-2013)
resize2fs: Bad magic number in super-block 當嘗試開啟 /dev/mapper/centos-root 時
找不到有效的檔案系統超級塊.

首先想到使用fsck進行修復下,並沒有用,看到錯誤資訊,才知道xfs檔案要使用xfs_repair進行修復

[root@localhost ~]# fsck /dev/mapper/centos-root      
fsck,來自 util-linux 2.23.2
If you wish to check the consistency of an XFS filesystem or
repair a damaged filesystem, see xfs_repair(8).

然後嘗試修復下,然而並沒有用,需要解除安裝才能進行修復,而此檔案系統是掛載到 / 下的,所以想都別想。

[root@localhost ~]# xfs_repair /dev/mapper/centos-root 
xfs_repair: /dev/mapper/centos-root contains a mounted filesystem
xfs_repair: /dev/mapper/centos-root contains a mounted and writable filesystem
 
fatal error -- couldn't initialize XFS library

最後在網上查了一番後,才知道xfs檔案系統在進行邏輯擴充套件後,還要進行一步才能完成:

[root@localhost ~]# lvs
  LV   VG     Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root centos -wi-ao---- 95.00g                                                    
  swap centos -wi-ao----  3.88g             
[root@localhost ~]# df  -lh
檔案系統                 容量  已用  可用 已用% 掛載點
/dev/mapper/centos-root   46G   42G  4.5G   91% /   ------------>46G
devtmpfs                 1.9G     0  1.9G    0% /dev
tmpfs                    1.9G  164K  1.9G    1% /dev/shm
tmpfs                    1.9G  8.7M  1.9G    1% /run
tmpfs                    1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1                497M  208M  290M   42% /boot                                       
[root@localhost ~]# xfs_growfs /dev/mapper/centos-root      #執行調整,擴充套件後需要執行此步驟
meta-data=/dev/mapper/centos-root isize=256    agcount=4, agsize=2987776 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=0        finobt=0
data     =                       bsize=4096   blocks=11951104, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log      =internal               bsize=4096   blocks=5835, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 11951104 to 24903680
 
[root@localhost ~]# df -lh
檔案系統                 容量  已用  可用 已用% 掛載點
/dev/mapper/centos-root   95G   42G   54G   44% /      ------------>已經完成擴充套件
devtmpfs                 1.9G     0  1.9G    0% /dev
tmpfs                    1.9G  164K  1.9G    1% /dev/shm
tmpfs                    1.9G  8.7M  1.9G    1% /run
tmpfs                    1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1                497M  208M  290M   42% /boot

xfs相關常用命令

xfs_admin: 調整 xfs 檔案系統的各種引數  
xfs_copy: 複製 xfs 檔案系統的內容到一個或多個目標系統(並行方式)  
xfs_db: 除錯或檢測 xfs 檔案系統(檢視檔案系統碎片等)  
xfs_check: 檢測 xfs 檔案系統的完整性  
xfs_bmap: 檢視一個檔案的塊對映  
xfs_repair: 嘗試修復受損的 xfs 檔案系統  
xfs_fsr: 碎片整理  
xfs_quota: 管理 xfs 檔案系統的磁碟配額  
xfs_metadump: 將 xfs 檔案系統的後設資料 (metadata) 複製到一個檔案中  
xfs_mdrestore: 從一個檔案中將後設資料 (metadata) 恢復到 xfs 檔案系統  
xfs_growfs: 調整一個 xfs 檔案系統大小(只能擴充套件)  
xfs_freeze    暫停(-f)和恢復(-u)xfs 檔案系統
xfs_logprint: 列印xfs檔案系統的日誌  
xfs_mkfile: 建立xfs檔案系統  
xfs_info: 查詢檔案系統詳細資訊  
xfs_ncheck: generate pathnames from i-numbers for XFS  
xfs_rtcp: XFS實時複製命令   
xfs_io: 除錯xfs I/O路徑

注意:
對Xfs檔案系統使用mke2fs命令後變為ext2,需要修改檔案/etc/fstab中對應的檔案系統型別!


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69901823/viewspace-2985469/,如需轉載,請註明出處,否則將追究法律責任。

相關文章