無法縮小 Ubuntu 分割區,因為它已滿(實際上並未滿)

無法縮小 Ubuntu 分割區,因為它已滿(實際上並未滿)

我目前在我的筆記型電腦上安裝了 Ubuntu。我幾週前安裝了它,它是我電腦中唯一的作業系統。

現在我想在 Ubuntu 和雙啟動中安裝 Windows 8.1,為此,我需要先在硬碟中為 Windows 安裝保留一些空間。

問題是,透過 Gparted,我無法減少目前的 Ubuntu 分割區,因為它說它已滿,但實際上並未滿(它大約有 600GB 可用空間)。可以使用調整大小的選項,但最大和最小尺寸等於其總大小。我嘗試過從即時 USB 啟動 Ubuntu 並運行 Gparted,但由於相同的問題而無法縮小分割區。

由於我是論壇新手,所以沒有足夠的「聲譽」來發布圖片,但對於那些可能有幫助並想看一下的人,我在此連結上傳了 Gparted 的螢幕截圖:

Gparted 認為分割區已滿的原因是什麼?

Obs:我看到一些論壇說使用 LVM 編輯分割區,雖然它安裝後沒有運行(我認為是圖形錯誤),但即使使用它,我是否能夠為 Windows 建立主分割區?

答案1

不幸的是,您使用的是 LVM,因此這不僅僅是在 gparted 中調整分割區大小那麼簡單。

您在 gparted 中看到的不是普通分割區,而是 LVM 實體磁碟區。這是磁碟上為 LVM 保留的用於放置其邏輯磁碟區的空間區域。然後,這些邏輯磁碟區內部是您的系統使用的分割區。然而,gparted 看不到這些,它只看到一個大的物理卷,它不知道如何編輯或移動。相反,您可以使用 LVM 工具來檢視和管理內部的邏輯磁碟區。

好消息是,您可以使用 LVM 輕鬆調整邏輯磁碟區的大小並在實體上移動邏輯卷,甚至可以在系統運行時執行此操作。壞消息是,實際移動它們周圍的 LVM 實體磁碟區或調整它們的大小非常困難。

執行此操作的「LVM 方式」是在新磁碟機上設定新的實體磁碟區,將其新增至相同磁碟區組,然後將邏輯磁碟區即時遷移到另一個磁碟機。然後,由於原始磁碟機上的實體磁碟區現在未使用,您可以將其從磁碟區組中刪除,然後可以丟棄該實體磁碟區並重新建立它。我之所以將其稱為“LVM 方式”,是因為它可以確保零停機時間 - 它可以在實時系統上完成,特別是如果它能夠在新驅動器中熱插拔的話。當然,這樣做的缺點是,將所有這些遷移到第二個驅動器的速度非常慢,並且需要第二個驅動器,因此主要好處僅適用於那些想要在實時系統上執行此操作而無需關閉的人向下。

也就是說,如果您有信心自己弄亂分區表,那麼您採取捷徑,借助pvresize可以調整 LVM 實體磁碟區大小的工具(但前提是您也手動變更分割區表中的大小)。這不是一個容易的過程。您首先需要縮小邏輯磁碟區中的檔案系統,然後縮小其邏輯磁碟區以匹配,並遷移剩餘的範圍,以便磁碟區組中的可用空間全部位於該實體磁碟區的末端(如果需要)。隨附的 LVM 工具將對此有所幫助。然後,計算出可以縮小多少實體卷,變更其在分割表中的大小,並同時使用 更新其在 LVM 中的大小pvresize

具體的過程在這裡詳細說明:

https://serverfault.com/a/419279

如果您確實走這條路,我建議您進行備份,因為很容易搞砸並丟失資料。如果您無論如何都要進行備份,您也可以按照老式的方式進行操作,將所有內容複製到驅動器上,刪除分割區並重新開始,然後將所有內容複製回來。

基於這樣的原因,我不向任何人推薦 LVM,除非他們知道自己需要它並且可以處理這些東西。如果您絕對不需要能夠在新驅動器中進行熱插拔,將一個或多個分區遷移到其中,停用並刪除舊驅動器,所有這些都在實時系統上進行,無需關閉或重新啟動,那麼(在我看來)LVM與您的需求並不真正相關,並且老式方式(普通分區)會更容易,因為抽象級別較少(更容易理解)並且像gparted 這樣的工具可以輕鬆修改它們並調整它們的大小。

相關內容