我是 Ubuntu 的新用戶,當我安裝它時,它佔據了整個硬碟空間。當我嘗試使用分割區硬碟時Gparted分割區編輯器從 USB 上的外部 Ubuntu,我發現了您可以在下面的螢幕截圖中看到的內容。我無法分割硬碟。
有人可以幫我嗎?
答案1
正如我們在問題的螢幕截圖您目前正在使用左心室容量在分區上/dev/sda5
。 Gparted 對 LVM 的支援有限,這就是將其顯示為已滿但實際上未滿的原因。
如果這是新安裝,最簡單的方法是備份用戶的文件,重新安裝作業系統並在安裝過程中分割磁碟 - 但這是另一個問題。否則備份您的使用者檔案並按照後續步驟操作,風險自負。
這是如何逐步縮小此分割區的簡短手冊。我假設您正在從安裝 CD/USB 執行 Live Ubuntu,並且您想要調整現有 Ubuntu 安裝的大小。對於目前的範例,我使用的是虛擬機器(由 VMWare 提供支援),某些輸出可能與實際情況略有不同。
檢查您的 LVM 設定
有兩個基本術語:
VG
- 磁碟區組 - 您可以將其想像為相當於 LVM 中的整個可用空間(磁碟機)。LV
- 邏輯磁碟區 - 您可以將其想像為分割區的等效項。
打開新的終端機視窗sudo lvs
並執行將輸出所有 VG 及其 LV 的命令。如果您使用了 Ubuntu 的自動安裝過程,輸出應該如下所示。
$ sudo lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root ubuntu-vg -wi-a----- 21,52g
swap_1 ubuntu-vg -wi-a----- 8,00g
這裡我們VG
呼叫了ubuntu-vg
,一個LV
呼叫了swap_1
,另一個呼叫了root
,我們想要調整其大小。
若要輸出 LV 的目前特性,root
您可以使用指令sudo lvdisplay /dev/ubuntu-vg/root
。要檢查此 LV 上的可用空間,您可以使用df -h /dev/ubuntu-vg/root
,但首先您應該安裝它:
$ sudo mount /dev/ubuntu-vg/root /mnt
$ df -h /dev/ubuntu-vg/root
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/ubuntu--vg-root 22G 5,0G 16G 25% /mnt
我們可以看到還有16G的可用空間。以下是 Gparted 此時顯示的安裝內容(與您的情況相同):
縮減分區
這部分的主要來源是文章如何在 TechMint 上擴充/減少 LVM。給出的第一個建議是:在開始之前,最好先備份一下數據,這樣萬一出了問題就不會頭痛了。
在這裡,我們將減少root
邏輯卷,然後移動swap_1
到卷組內可用空間的開頭,然後調整大小/dev/sda5
。
1.掛載檔案系統並碎片整理它:
sudo mount /dev/ubuntu-vg/root /mnt
sudo e4defrag /mnt
2.卸載用於還原的檔案系統(透過命令查看是否卸載df -h
:):
umount /dev/ubuntu-vg/root
3.使用以下命令檢查檔案系統錯誤(測試必須通過所有 5 個步驟;0.1-1% 的非連續檔案將為我們提供減少檔案系統的好機會):
sudo e2fsck -ff /dev/ubuntu-vg/root
4.使用 5G 減少檔案系統(本例)並使用 5GB 減少 LV:
sudo resize2fs /dev/ubuntu-vg/root 17G # 22 - 5 = 17
sudo lvreduce -L -5G /dev/ubuntu-vg/root
5.重新調整檔案系統的大小並檢查檔案系統錯誤:
sudo resize2fs /dev/ubuntu-vg/root
sudo e2fsck -ff /dev/ubuntu-vg/root
如果出現任何錯誤,則表示檔案系統已損壞,也許我們應該重新安裝並使用備份。如果沒有錯誤,該過程應該會成功完成。筆記:此時您可以建立另一個 LV。
6.將可用空間移出 VG。該命令pvs
可以向我們顯示可用空間位於分區內的位置/dev/sda5
。在本例中,交換已結束,因此我們將刪除並再次建立它(使用其 PE 大小),從而將其移動到可用空間的乞求中。
$ sudo pvs -v --segments /dev/sda5
Using physical volume(s) on command line.
Wiping cache of LVM-capable devices
PV VG Fmt Attr PSize PFree Start SSize LV Start Type PE Ranges
/dev/sda5 ubuntu-vg lvm2 a-- 29.52g 5.00g 0 4229 root 0 linear /dev/sda5:0-4228
/dev/sda5 ubuntu-vg lvm2 a-- 29.52g 5.00g 4229 1280 0 free
/dev/sda5 ubuntu-vg lvm2 a-- 29.52g 5.00g 5509 2048 swap_1 0 linear /dev/sda5:5509-7556
$ sudo lvremove /dev/ubuntu-vg/swap_1
Do you really want to remove and DISCARD active logical volume swap_1? [y/n]: y
Logical volume "swap_1" successfully removed
$ sudo lvcreate -n swap_1 -l 2048 ubuntu-vg
Logical volume "swap_1" created.
$ sudo pvs -v --segments /dev/sda5
Using physical volume(s) on command line.
Wiping cache of LVM-capable devices
PV VG Fmt Attr PSize PFree Start SSize LV Start Type PE Ranges
/dev/sda5 ubuntu-vg lvm2 a-- 29.52g 5.00g 0 4229 root 0 linear /dev/sda5:0-4228
/dev/sda5 ubuntu-vg lvm2 a-- 29.52g 5.00g 4229 2048 swap_1 0 linear /dev/sda5:4229-6276
/dev/sda5 ubuntu-vg lvm2 a-- 29.52g 5.00g 6277 1280 0 free
$ sudo pvresize --setphysicalvolumesize 25G /dev/sda5
Physical volume "/dev/sda5" changed
7.現在你可以使用像 Gparted 這樣的工具調整分割區大小 /dev/sda5
並建立一個新的或保留未分配的空間以將其用於另一個作業系統安裝。
請注意,由於計算不正確,我們造成了很小的空白空間。我們可以進行更精確的計算(老實說,我在 GB、G 和 GiB 中迷失了自己),或者我們可以透過命令將其添加到某些 LV,如下所示:
sudo lvresize -l +100%FREE /dev/ubuntu-vg/root
sudo resize2fs /dev/ubuntu-vg/root
用於sudo pvs -v --segments /dev/sda5
調查新狀態。
8.現在您可以重新啟動系統。在範例中,我建立了一個 NTFS 分割區 - /dev/sda6
,如下圖所示。
9.最後一步是啟用交換(如上圖):
sudo mkswap /dev/ubuntu-vg/swap_1 # we could do that in the previous step 7
sudo swapon /dev/ubuntu-vg/swap_1 # or reboot the system
參考:
答案2
考慮使用千伏分鐘和分割區管理器更改您的分割區。在兩者之間,您有一個支援 LVM 的完全工作的 GUI。如果您知道 LVM 中 PV、VG 和 LV 之間的區別,那麼就可以開始了。為了繞過不包含這兩個程式的 live-CD 限制,只需先將 Ubuntu 安裝到 USB 記憶棒上。安裝kvpm
sudo apt-get install kvpm
和分區管理器
sudo apt-get install partitionmanager
並從那裡啟動以對分區進行更改。
答案3
編輯: 這個答案是錯的。 GParted 不完全支援 LVM。
查看/dev/sda5 的「Unused」列顯示0,即已滿。您需要先騰出一些空間,然後才能縮小它。
有關清理的信息,請嘗試以下問題