Linux

縮小/減少非 lvm 磁碟文件系統

  • April 9, 2014

我有一個 vmware ext4 文件系統,它是駐留在虛擬 300GB 磁碟上的非 lvm、非分區文件系統。換句話說,沒有分區,文件系統可能是由以下人員創建的:

mkfs.ext4 /dev/sdd1

磁碟幾乎沒有使用(1%),但我想保留數據。有沒有安全的方法來縮小它?我正在考慮將 Vmware 中的磁碟大小從 300 調整到 100 並執行 resize2fs /dev/sdd1 但我不確定我是否不會失去任何東西。

任何建議將不勝感激。

P。

您的問題不一致:如果有分區,則文件系統是由mkfs.ext4 /dev/sdd1. 如果沒有分區,則文件系統是由命令行創建的mkfs.ext4 /dev/sdd。檢查輸出df /path/to/some/directory/on/that/filesystem以查看它是哪一個。

無論哪種方式,您都可以呼叫resize2fs以縮小文件系統。這與 LVM 的任何使用無關。您只能在解除安裝文件系統時縮小文件系統,因此如果它是您的根文件系統,則需要從救援系統中執行此操作。請注意,救援系統中的磁碟號可能不同,例如,sdb而不是sdd.

將文件系統縮小到所需大小後,如果它在分區上,則需要縮小分區。你可以使用fdisk它,但它有點微妙:你需要刪除並重新創建分區,確保你不改變它的起始位置。您也可以使用parted,它結合了文件系統大小調整和分區大小調整,但使用起來也很麻煩,因為您需要計算目標起始地址。

在此之後,您可以在 VMware 中縮小磁碟映像的大小。確保文件系統(和分區,如果適用)適合磁碟映像;如果有分區,請記住分區表在開始時使用了額外的 512B。

引用自:https://unix.stackexchange.com/questions/123703