Terminal

如果我在 Linux/Android 中使用 gdisk 調整分區大小,我會失去所有掛載和符號連結嗎?

  • August 30, 2021

我有一個執行 Termux 終端的植根 Android 平板電腦。該設備具有 32GB 的內置儲存空間。6gb 被劃分為“內部儲存”,用於應用程序/遊戲/文件等。23gb 被分區用於外部儲存,並標記為“sdcard”。

我想使用 gdisk 來擴展“內部儲存”分區並顯著“縮小”sd 卡分區。

我相信我有完成任務的理解。但是,我不確定在分區調整大小後是否必須重新創建所有掛載和符號連結。我必須刪除這兩個分區,然後使用相同的 GUID 但大小不同重新創建它們。

我的問題是,在重新啟動並且新分區表生效後,我是否必須重新掛載所有文件系統?我必須重新做所有的符號連結嗎?

我對linux相當陌生,感謝您的幫助。

編輯:

在我計劃縮小的分區(sdcard)上,我計劃使用resize2fs將文件系統縮小到大約 500mb。然後,我打算使用gdisk刪除分區並使用相同的 GUID 重新創建它以完全適合 500mb。

我計劃對我想要增長的分區做同樣的事情。

我的理解是我可以做到這一點而不會失去任何數據(只要數據適合調整大小的分區/文件系統)。這就是為什麼我希望我不會失去我的坐騎或符號連結。

問題是,我必須解除安裝要修改/刪除/重新創建的分區gdisk。話雖如此,由於 GUID 相同,是否會在重新啟動時重新創建掛載?

擴展內部分區很容易,在該分區上擴展文件系統不會導致數據失去。您必須刪除“sdcard”分區才能這樣做(然後您將重新創建),因此目前“sdcard”分區上的任何數據都將不可挽回地失去,您必須對其進行備份並恢復如果您希望它在更改後出現。

擴大:

如下考慮您的磁碟:

|------------|-----------------------------------------------|
|  internal  |   sdcard                                      |
|------------|-----------------------------------------------|
^^           ^^

向上的箭頭顯示了文件系統佈局資訊的保存位置(我過於簡單化了,但沒有到錯誤的地步)。當您展開“內部”時,它會爬出並佔據磁碟上“sdcard”向上箭頭指向的區域。一旦你通過擴展內部文件系統覆蓋了這些區域,整個 sdcard 文件系統就會失去(沒有大量的時間和/或金錢投資,這通常只在真正關鍵時才會進行,公司將停業-如果我們不拿回它,數據就會失去 - 想想數万美元開始)。

你不能有這樣的分區方案:

|------------|-----------------------|-------------------|
|  internal  |  sdcard               | more internal     |
|------------|-----------------------|-------------------|

擴展內部儲存的唯一方法是這樣做:

|-------------------------|------------------------------|
|  expanded internal      |  sdcard                      |
|-------------------------|------------------------------|

這並不特定於 Android 或 Linux,這只是磁碟分區在所有作業系統中的工作方式。

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