生產環境中根分區空間不足是常見痛點。本文記錄 CentOS 6.3 虛擬機環境下,利用 LVM 將新增磁盤空間擴容至獨立 /home 掛載點的完整操作日誌,含分區表刷新、PV/VG/LV 創建、單用戶模式遷移數據等關鍵步驟。
# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root 14G 13G 1.0G 92% / tmpfs 246M 0 246M 0% /dev/shm /dev/sda1 485M 52M 408M 12% /boot # 磁盤總 30G,僅用 15G,剩餘 15G 未分配
fdisk /dev/sda # 交互流程 p # 查看現有分區 n # 新建分區 e # 擴展分區(sda4) # 使用默認起止柱面,佔用所有剩餘空間 n # 在擴展分區內新建邏輯分區 l # 邏輯分區(自動分配 sda5) t # 修改分區類型 5 # 選擇 sda5 8e # Linux LVM (0x8e) w # 寫入分區表
# 重啟或使用 partprobe/kpartx partprobe /dev/sda # 若提示忙碌,必須重啟 reboot # 驗證 ls /dev/ | grep sda # 應出現 sda4 sda5
pvcreate /dev/sda5 # Physical volume "/dev/sda5" successfully created vgextend VolGroup /dev/sda5 # Volume group "VolGroup" successfully extended vgdisplay VolGroup # 確認 VG Size 增大
lvcreate -L 10G -n lv_home VolGroup # Logical volume "lv_home" created mkfs.ext4 /dev/VolGroup/lv_home # 或 mkfs.xfs 視文件系統偏好
init 1 # 進入單用戶模式,僅 root 登錄,業務停止 mv /home /home.old mkdir /home mount /dev/mapper/VolGroup-lv_home /home # 複製數據(保留權限/屬性/ACL/擴展屬性) cp -a /home.old/* /home/ # 或 rsync -aHAX /home.old/ /home/ # 寫入 /etc/fstab 實現開機自動掛載 echo '/dev/mapper/VolGroup-lv_home /home ext4 defaults 0 2' >> /etc/fstab
init 3 # 或 init 5 / systemctl set-default graphical.target df -h # 應顯示 /home 掛載新 LV,可用空間 ~10G
| 坑點 | 現象 | 解決 |
|---|---|---|
| 分區表未刷新 | pvcreate 提示 Device not found | partprobe 失效時必須重啟 |
| VG 名稱不確定 | vgextend 失敗 | vgs 或 vgdisplay 確認名稱(默認 VolGroup) |
| 直接在多用戶模式 mv /home | 進程佔用導致遷移不全/報錯 | 必須單用戶模式 (init 1) |
| fstab 寫錯設備路徑 | 開機進入 emergency 模式 | 用 blkid 或 ls /dev/mapper/ 確認準確路徑 |
| 忘記複製隱藏文件 | 用戶配置丟失(.bashrc .ssh 等) | cp -a 或 rsync -a 保留所有屬性 |
# 若擴容根分區 lv_root lvextend -L +5G /dev/VolGroup/lv_root resize2fs /dev/VolGroup/lv_root # ext4 在線擴容 # xfs 使用 xfs_growfs /mount/point
LVM 擴容核心鏈路:物理分區 (fdisk) → PV → VG → LV → 文件系統 → 掛載點。關鍵成功因子:分區表刷新、單用戶模式遷移、fstab 精確配置。掌握此流程,磁盤告警不再慌。
Linux 安裝方式大全:硬碟安裝、NFS/HTTP/FTP 網路安裝、USB 啟動盤製作
LNMP (Linux + Nginx + MySQL + PHP) 環境手動部署完整紀錄
Linux 多 CPU 負載均衡與執行緒遷移機制:load_balance、migration_thread、pull_task 深度解析
Linux 系統語言環境修改:解決中文亂碼與 Locale 衝突
Linux 壓縮解壓命令大全:tar/gzip/bzip2/compress/zip/rar 參數詳解與實戰速查表
Linux 檔案傳輸三大神器:sftp、scp、sz/rz 完整指令速查與實戰場景