使用 Fstransform 轉換文件系統
很少有人知道他們可以將文件系統從一種類型轉換為另一種類型而不會丟失數據(即非破壞性的)。這可能聽起來像魔術,但 Fstransform 可以幾乎以任意組合將 ext2、ext3、ext4、jfs、reiserfs 或 xfs 分區轉換成另一類型。更重要的是,它可以直接執行,而無需格式化或複製數據。除此之外,還有一點好處:Fstransform 也可以處理 ntfs、btrfs、fat 和 exfat 分區。
在運行之前
Fstransform 存在一些警告和限制,因此強烈建議在嘗試轉換之前進行備份。此外,使用 Fstransform 時需要注意一些限制:
- 你的 Linux 內核必須支持源文件系統和目標文件系統。聽起來很明顯,如果你想使用 ext2、ext3、ext4、reiserfs、jfs 和 xfs 分區,這樣不會出現風險。Fedora 支持所有分區,所以沒問題。
- 將 ext2 升級到 ext3 或 ext4 不需要 Fstransform。請使用 Tune2fs。
- 源文件系統的設備必須至少有 5% 的可用空間。
- 你需要在開始之前卸載源文件系統。
- 源文件系統存儲的數據越多,轉換的時間就越長。實際速度取決於你的設備,但預計它大約為每分鐘 1GB。大量的硬鏈接也會降低轉換速度。
- 雖然 Fstransform 被證明是穩定的,但請備份源文件系統上的數據。
安裝說明
Fstransform 已經是 Fedora 的一部分。使用以下命令安裝:
sudo dnf install fstransform
轉換
fstransform
命令的語法非常簡單:fstransform <源設備> <目標文件系統>
。請記住,它需要 root 許可權才能運行,所以不要忘記在開頭添加 sudo
。這是一個例子:
sudo fstransform /dev/sdb1 ext4
請注意,無法轉換根文件系統,這是一種安全措施。請改用測試分區或實驗性 USB 盤。與此同時,Fstransform 會在控制台中有許多輔助輸出。最有用的部分是預計完成時間,讓你隨時了解該過程需要多長時間。同樣,在幾乎空的驅動器上的幾個小文件將使 Fstransform 在一分鐘左右完成其工作,而更多真實世界的任務可能需要數小時的等待時間。
更多支持的文件系統
如上所述,可以嘗試在 ntfs、btrfs、fat 和 exfat 分區使用 Fstransform。這些類型是早期實驗性的,沒有人能保證完美轉換。儘管如此,還是有許多成功案例,你可以通過在測試分區上使用示例數據集測試 Fstransform 來添加自己的成功案例。可以使用 --force-untested-file-systems
參數啟用這些額外的文件系統:
sudo fstransform /dev/sdb1 ntfs --force-untested-file-systems
有時,該過程可能會因錯誤而中斷。請放心再次執行命令 —— 它可能最終會在兩、三次嘗試後完成轉換。
via: https://fedoramagazine.org/transform-file-systems-in-linux/
作者:atolstoy 選題:lujun9972 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive