Linux

將文件系統格式從 xfs 更改為 ext4 而不會失去數據

  • November 29, 2017

我有一個新的 Lucid Lynx (Ubuntu 10.04) 在筆記型電腦上執行。我將文件系統定義為:

  • 掛載點 / 在 ext4 (46 Gb)
  • jfs 上的掛載點 /home (63 GB)
  • 交換為 3 Gb

我離開機器過夜做一些任務,沒有交流電源。第二天早上我發現它處於待機狀態,任務完成,但文件系統無法訪問。它給了我 I/O 錯誤

jfs和standby好像有問題。

無論如何,為了避免任何麻煩,我想將此掛載點從 jfs 格式移動到 ext4。

我可以在不失去數據的情況下執行此操作,並且在轉換完成之前無需將數據放置在臨時位置嗎?

很抱歉,但我記得在 Windows 時代,我們會將 FAT16 更改為 FAT32 或將 FAT32 更改為 NTFS,而不會失去數據。我希望這在 Linux 上可用。

更新 /home 文件系統是 xfs 而不是 jfs,由於某種原因,這個文件系統似乎有一個錯誤,我不得不重新安裝作業系統兩次,直到我最終使用 ext4 完成整個 /

但是,作為結論,似乎沒有辦法進行轉換

我不知道有任何方法可以非破壞性地轉換文件系統。這並不意味著這是不可能的,但我認為它的可能性很低。

例如,您可以在不擦除磁碟的情況下從 to 轉換,從ext2to轉換為.ext3``ext3``ext4

但是,如果不先將文件複製到另一個分區或外部硬碟,從類似的東西jfs變成ext4似乎不太可能。/home

即使這樣,您也希望在系統上創建一個新使用者,其主目錄類似於/tmp/tempuser或將您的使用者配置複製到您的主目錄中的“點”文件(以 開頭的文件.)到一個新位置關閉/home和更新/etc/passwd以使用新的主目錄,因此您可以在執行此更新時以普通使用者身份登錄。

然後,備份您的文件,解除安裝並使用您計劃使用的任何工具/home對其進行格式化。/sbin/mkfs.ext4安裝新分區/home並將文件複製回來。

另外,我會推荐一些“智能”的東西rsync來複製你的文件,以確保你保留你的權限和所有的爵士樂。

引用自:https://serverfault.com/questions/146123