在裝系統的時候忘記將磁盤完全分配,導致1T磁盤真實的用量只有50G.
今天裝了一個大型軟件,桌面環境因為磁盤不足直接奔潰。
再次開機出現題目上提示的內容:
Press Ctrl+C to cancel all filesystem checks in progressfsckd-cancel-msg:Press Ctrl+C to cancel all filesystem checks in progress
一、 在askUbuntu中找到了解決方法:(此方法針對不明原因的文件系統故障)
1.sudo fdisk -l
檢查當前磁盤分區情況
2.sudo fsck -f /dev/***
手動修復磁盤分區
二、 由於機器上的文件系統裝有LVM,查閱資料發現崩潰的原因是<邏輯盤超容>,這時需要進入recovery模式,輸入密碼獲取root權限
1.sudo fdisk -l
檢查當前磁盤分區情況
可以看到,硬盤有主分區sda1,擴展分區sda2,在sda2下還有一個邏輯分區(物理卷)sda5,由於sda2只有一個邏輯分區,所以sda5的容量和sda2一樣大
圖1-硬盤分區
2.sudo pvs
查看當前物理卷情況
當前物理卷只有sda5(邏輯分區只有sda5)
3.sudo vgs
查看當前卷組情況
當前卷組只有vg_system,vg_system上面又有4個LV(邏輯卷),下面是sda5(物理卷)
4.sudo lvs
查看當前邏輯卷
可以看到有四個邏輯卷,分別是vg_system-home、vg_system-root、vg_system-swap_1、vg_system-var
整體LVM結構如下(不包括分區情況)
5.假設當前vg_system-root邏輯卷因為下載了大型軟件導致超容,debian的桌面系統會直接崩潰
假如sda5中還有空閑空間,可以直接調用空閑空間對vg_system-root進行擴容
sudo lvextend -L +擴容大小 邏輯卷 物理卷
我的情況就是:
sudo lvextend -L +100G /dev/mapper/vg_system-root /dev/sda5
假如現在sda5已經沒有空閑空間,已經全部被邏輯卷使用,但是邏輯卷vg_system-home的容量還很多
我們可以將邏輯卷vg_system-home的容量縮小,將空閑下來的空間補充到vg_system-root中
---------------------------------------
sudo umount /dev/mapper/vg_system-home
卸載邏輯卷home
---------------------------------------
sudo lvreduce -L -10G /dev/mapper/vg_system-home
將邏輯卷home減小10G
--------------------------------------
sudo mount /dev/mapper/vg_system-home
重新掛載home
-------------------------------------
sudo lvextend -L +10G /dev/mapper/vg_system-root /dev/sda5
將root邏輯卷擴容
------------------------------------
到這里應該就沒問題了。謝謝大家!