簡體   English   中英

如何更改AWS EBS卷文件系統類型

[英]How to change AWS EBS volume filesystem type

EBS卷作為ext4附加在/opt/apps 當前沒有任何數據。 如何將文件系統類型更改為xfs並為/data分配新的安裝點?

[centos@ip-10-24-xx-xxx ~]$ df -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/xvda1     xfs       8.0G  1.4G  6.7G  17% /
devtmpfs       devtmpfs  7.3G     0  7.3G   0% /dev
tmpfs          tmpfs     7.2G     0  7.2G   0% /dev/shm
tmpfs          tmpfs     7.2G   17M  7.2G   1% /run
tmpfs          tmpfs     7.2G     0  7.2G   0% /sys/fs/cgroup
/dev/xvdb      ext4       99G   61M   94G   1% /opt/apps
tmpfs          tmpfs     1.5G     0  1.5G   0% /run/user/1000

這並非特定於AWS EBS。 Amazon為您提供了一個稱為EBS的“磁盤”,該磁盤附加到/ dev / xvdb。 然后,隨時將其掛載到任何位置(/ opt / apps或/ data),並使用所需的文件系統對其進行格式化。

此頁面可以幫助您http://ask.xmodulo.com/create-mount-xfs-file-system-linux.html

看到您有兩種選擇來實現用例。

您可以將根卷轉換為XFS或創建第二個卷。 就個人而言,我更喜歡后者,因為它提供了更大的靈活性。

選項1:將根卷轉換為XFS

  1. 停止實例(不終止)(我們稱其為實例A)
  2. 啟動一個新實例(我們稱其為實例B)
  3. 從實例A分離根卷並將其附加到實例B
  4. 創建第二個EBS卷,將其附加到實例B
  5. 將新的EBS卷格式化為XFS(如果尚未安裝,請安裝xfsprogs
  6. 將所有數據從第一個卷復制到新的卷(例如,使用rsync -aHAXxSP /source /target
  7. 從實例B分離新卷,並將其作為實例A的根卷附加
  8. 啟動實例A
  9. 終止實例B(原始根卷應保持不變,一直保留直到您滿意為止)。

將根卷附加到另一個實例的原因是要獲得一致性,而使用該卷將很難做到這一點。

選項2:將數據移至第二個EBS卷

  1. 創建第二個EBS卷並將其附加到您的實例; 將其格式化為XFS並掛載
  2. 確定要移至新卷的目錄(要考慮的目錄包括:/ var / log,/ var / lib / mysql,/ var / www,/ var / spool / mail,/ var / vmail)
  3. 停止盡可能多的服務以刪除寫鎖
  4. 使用lsof | grep /path/to/dir lsof | grep /path/to/dir檢查剩余的寫鎖
  5. 將目錄移到新的EBS卷
  6. 安裝將新目錄綁定到其舊位置(即mount -o bind /mnt/path/to/dir /orig/path/to/dir
  7. 對每個目錄重復
  8. 啟動您的服務以確保一切正常
  9. 編輯/etc/fstab文件以使掛載點永久存在; 例如: /mnt/path/to/dir /orig/path/to/dir bind defaults,noatime,bind 0 0

重新啟動以確保所有內容都可以持續存在並正常運行。 您可能還需要考慮將根卷減小一點,因為希望從中刪除所有數據后,根卷不應該增加(或更改)太多。

(需要指出的是,有可能使用util-linux-ng包含的fsfreeze凍結ext4文件系統)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM