在雙引導系統上使用未使用的 Windows 分區空間增加 Linux 分區
我有一個使用 Fedora 27 和 Windows 10 的雙引導系統。我的 linux 卷組(即分區)空間不足,而且我沒有未分配的空間。我已經讀到我可能需要 Gparted 並且可能
resize2fs
可以用來增加一個 linux 分區(參考 1、參考 2),但所有這些情況都是在處理已經存在未分配空間的根分區。的輸出
df -h
Filesystem Size Used Avail Use% Mounted on devtmpfs 3.9G 0 3.9G 0% /dev tmpfs 3.9G 192M 3.7G 5% /dev/shm tmpfs 3.9G 2.0M 3.9G 1% /run tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup /dev/mapper/fedora-root 43G 32G 8.1G 80% / tmpfs 3.9G 14M 3.9G 1% /tmp /dev/sda5 976M 196M 713M 22% /boot tmpfs 789M 16K 789M 1% /run/user/42 tmpfs 789M 11M 778M 2% /run/user/1000 tmpfs 789M 0 789M 0% /run/user/0
和輸出
fdisk -l
Disk /dev/sda: 238.5 GiB, 256060514304 bytes, 500118192 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xb72b0508 Device Boot Start End Sectors Size Id Type /dev/sda1 * 2048 1026047 1024000 500M 7 HPFS/NTFS/exFAT /dev/sda2 1026048 395909025 394882978 188.3G 7 HPFS/NTFS/exFAT /dev/sda3 498311168 500113407 1802240 880M 27 Hidden NTFS WinRE /dev/sda4 395909120 498311167 102402048 48.8G 5 Extended /dev/sda5 395911168 398008319 2097152 1G 83 Linux /dev/sda6 398010368 498311167 100300800 47.8G 8e Linux LVM Partition table entries are not in disk order. Disk /dev/mapper/fedora-root: 43 GiB, 46103789568 bytes, 90046464 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/fedora-swap: 4.9 GiB, 5247074304 bytes, 10248192 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
Windows 10 有 80 GB 的可用空間。我想從 Windows 中取出 70 GB 並將其提供給 fedora。如何在不失去任何一個或兩個作業系統和任何數據的情況下做到這一點?我可以先縮小 windows 以創建未定位的空間,還是應該在 windows 分區內創建一個 70 GB 的分區?如果可以,我可以在 Windows 中執行此操作,否則如果我必須使用 Gparted,我可以將其下載到包含其他文件的外部硬碟驅動器還是需要空白記憶棒?
我的 linux 分區是在使用 rufus 安裝 Fedora 之前在 Windows 中創建的,我有大約 5 GB 的交換空間。如果可能的話,我還想增加交換的大小以匹配我的 RAM 大小,因為我發現我的系統傾向於用完我所有的交換分區。
我最終使用了終端,但在此之前我使用 GParted live 來縮小 Windows 分區以創建未分配的空間。GParted 的問題是,在將這個未分配的空間添加到擴展分區後,我的引導分區位於這個新空間和我的邏輯卷組之間,所以我切換到更易於使用的命令行。
這是我所做的:
在切換到終端之前,我首先將未分配的空間轉換為名為
/dev/sda7
. 我在 GParted 中做了這個並選擇了 ext4。現在請記住,以下僅適用於 lvm。
- 創建的物理卷
pvcreate /dev/sda7
- 擴展卷組以使用此物理卷
vgextend fedora /dev/sda7
注意:我通過執行命令找到了我的捲組名稱:
vgdisplay
.vgs
也有效。 3. 啟動邏輯卷以使其可用,以便文件系統檢查和調整大小工作。lvchange -ay /fedora/root
或者
vgchange -ay
該
-a
選項代表啟動,-y
意味著在所有現有設備上,因此它無處不在。 4. 我執行了文件系統檢查以確保沒有錯誤。這實際上發現了一些錯誤並修復了它。e2fsck /dev/fedora/root
- 調整文件系統的大小
resize2fs -l 100%FREE /dev/fedora/root
如果您想將大小增加一個絕對數字,請
50 GB
使用該-L
選項。 6. 再次執行另一個文件系統檢查以修復任何錯誤e2fsck /dev/fedora/root
lsblk
您現在可以通過執行或顯示分區的類似命令來檢查您的根目錄是否已擴大。在此之後,我還將交換邏輯卷增加了超過
50%
,儘管步驟略有不同,但它同樣簡單,例如沒有必要,e2fsck
因為它僅適用於 ext 2、3、4 文件系統。
您可以使用 Windows 磁碟管理器本身來減少具有 80G 空閒空間的 Windows 分區 C。
一旦完成,您將無法將新分配的空間添加到您的 LVM,但您可以創建一些新分區,然後您可以將其掛載到 Linux 中以保存特定掛載點上的數據(/home 或其他)。