2012-02-27 40 views
1

我需要爲意外安裝到錯誤分區上的根文件系統獲取更多空間。考慮到以下分區,我可以將sda1縮小爲1個字節,然後增加sda6以佔用所有釋放的空間,然後使用swapon/dev/sda5和swapoff/dev/sda7(儘管將sda7作爲交換不會造成傷害)。移動linux根文件系統與調整其分區大小

替代方法是將所有sda6到sda1,從set root ='(hd0,6)'編輯sda1/boot/grub/grub.cfg來設置root ='(hd0,0)',然後重新安裝grub所以它可以在sda1中找到grub.cfg。

sda5和sda6是意外創建的,可以放棄。

是否有任何特定的因素表明我應該選擇一種方法而不是另一種?

Device Boot  Start   End  Blocks Id System 
/dev/sda1 *   1  72474 582142975 83 Linux 
/dev/sda2   72474  72962  3915777 5 Extended 
/dev/sda5   72800  72962  1296384 82 Linux swap/Solaris 
/dev/sda6   72474  72778  2442240 83 Linux THIS IS WHERE THE ROOT IS 
/dev/sda7   72778  72800  171008 82 Linux swap/Solaris THIS IS THE PRESENT SWAP 

Ubuntu 10.04.1 server(no X)。

問候, 亞歷山大

回答

1

兩個選項都可以給你,我會說你應該選擇在分區號,你願意的話,也就是你想要的根最終是位置的最終配置哪一個結果在sda1或sda6上?

警告:您的第一個選項無法正常顯示。該選項實質上是通過將其開始塊移回磁盤的開始來增長sda6。但是文件系統總是可以在它們所在分區的開頭找到,因此您必須將目前擁有氣缸72474的根文件系統數據移動到72778,以便它佔據1至305號柱面。你已經忽略了這一步。

這裏有兩個金色的規則可循,然後再開始:

  • 與各部門工作,從未缸。分區不必以圓柱體邊界開始和結束,因此如果以圓柱體工作,最終可能會指定錯誤的偏移量。
  • 從網絡啓動的恢復環境或從initramfs執行所有這些操作(如果這是您所擁有的全部內容)。非常小心,您可能能夠從運行系統中完成它,但您憑藉自己的獨特性!

當然,無論你做什麼,這都是一個微妙的操作。我沒有測試過我在這裏推薦的任何東西,並且有一個錯誤可能會讓您獲得所有數據。

這就是說,這裏是一個修改後的選項#1。

  1. 將sda6的內容複製到sda1與dd
  2. 刪除sda1和SDA6
  3. 創建開始起步的老sda1的偏移,並在年底的老SDA6偏移結束的新SDA6。
+0

謝謝,非常有幫助。我決定不改變分區大小,對你明確定義的含義感到不滿意。 – 2012-03-01 11:07:35

+0

續:相反,我將sda6的根fs複製到了sda1,然後完成了整個grub例程(儘管它很簡單,但它是一個非常繁瑣的過程)。也許我會在晚些時候將未使用的分區合併到交換中,但現在大問題已經解決了。混亂與部門的想法是在我的舒適區外,但感謝您花時間和麻煩提供這種詳細的援助。 – 2012-03-01 11:48:26

相關問題