1. 程式人生 > >LVM中對基於xfs的文件系統進行擴容

LVM中對基於xfs的文件系統進行擴容

linux

以前沒接觸過CentsOS 7 ,對其所改變的特性不了解,偶然在centos 7中接觸到LVM,創建LVM的方法和6中沒有區別,但是對LVM進行擴容就有點不一樣了,使用以前的方法進行擴容後始終沒有生效,折騰了半天才搞清楚其擴容的方法。Xfs是CentOS7的默認文件系統類型,而不同文件系統類型對應的創建、檢查、調整命令不同。

Xfs是CentOS7的默認文件系統類型,而不同文件系統類型對應的創建、檢查、調整命令不同。

技術分享

在xfs文件系統中,只能增大分區而不能減小。

[[email protected] ~]# 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中,對物理邊界也已擴展。

擴展邏輯邊界時,報錯如下所示:

[[email protected] ~]# 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進行修復

[[email protected]
/* */ ~]# 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).

然後嘗試修復下,然而並沒有用,需要卸載才能進行修復,而此文件系統是掛載到 / 下的,所以想都別想。

[[email protected] ~]# 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文件系統在進行邏輯擴展後,還要進行一步才能完成:

[[email protected] ~]# 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             
[[email protected] ~]# 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                                       
[[email protected] ~]# 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
 
[[email protected] ~]# 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路徑


LVM中對基於xfs的文件系統進行擴容