(詳細講解)解決ubuntu根目錄/和用戶目錄/home分區過小(從新掛載home以及其餘目錄)

問題描述

  安裝系統的時候根目錄/和用戶目錄/home分配空間不夠。
不少教程講了擴容分區,然而在界面下不少目錄我根本無法卸載。
能夠經過從新掛載一些目錄來解決此問題,注意
  不要嘗試直接修改根目錄/的掛載點,不要嘗試將/bin, /sbin, /lib, /etc, /dev掛載到其餘分區,只須要將所須要大空間的目錄掛載到大容量的分區
  須要使用gparted工具node

解決方法

決定須要新掛載的目錄
新的正確格式的分區
掛載新的分區
拷貝原目錄到新的分區
修改掛載點

決定須要新掛載的目錄

  若是發現根目錄的分區須要擴充,則能夠將根目錄下的一些目錄掛載到其餘分區。通常來講對於桌面用戶,/home和/usr兩個目錄須要的空間較大,緣由爲:web

  1. /usr下面的存放大部分程序、部分共享數據、部分程序運行所需的函數庫文件等
  2. /home存放的是root用戶以外用戶的我的文件,如用戶設置、桌面、網絡下載數據等
    (服務器用戶須要掛載/var和/srv等)

新的正確格式的分區

  使用gparted工具將新的分區格式化,通常來講除swap分區外格式化爲ext4格式便可。ubuntu

掛載新的分區

  在gparted找到新分區的分區號,好比/dev/sdb[0-n],而後命令行執行bash

sudo mkdir /mnt/home
sudo mount /dev/sda[0-n] /mnt

  這裏我掛載到了/mnt/home下面,固然你能夠掛載到其餘地方,任意一個已經掛在的目錄以及子目錄均可以。
gparted圖服務器

拷貝原目錄到新的分區

  將原來目錄的全部內容拷貝到新的分區下面,下面示例拷貝/home目錄到/mnt/home下,假設將新的分區/dev/sdb[0-n]掛載到了/mnt/home下網絡

sudo cp -a /home /mnt/home

  若是本身想從新掛載的目錄較大、磁盤速度不夠,這一步很費時,能夠再空閒時間操做。ssh

修改掛載點

  下面示例爲將/home掛載到以前掛到到/mnt/home的/dev/sdb[0-n]下面
  首先在gparted裏面查看新分區的uuid
示例
  而後修改/home的掛載點,系統開機時會主動讀取/etc/fstab這個文件中的內容,根據文件裏面的配置掛載磁盤
  下圖是我損壞系統後重裝,而後將/home從新掛載到原來/home的目錄下。因爲個人這種狀況,我在安裝系統的時候沒有掛載/home,而後直接修改了掛載點,下圖最後一行是我裝完系統添加的。
示例
  下面編輯/etc/fstab,對於小白使用gedit文本編輯器就能夠了async

sudo gedit /etc/fstab

  這樣咱們打開了fstab,而後按照順序來添加新的掛載點便可。下面是順序編輯器

  1. 設備名或者設備卷標名
  2. 設備掛載目錄(/、home、sys等)
  3. 設備文件系統(ext四、ntfs、iso9660、swap 及 auto等)
  4. 掛載參數(auto、exec、ro、rw、user、users、owner、sync、async、dev、suid、noatime、relatime、flush、defaults等等)
  5. 指明是否要備份,(0爲不備份,1爲要備份,通常根分區要備份)
  6. 指明自檢順序。 (0爲不自檢,1或者2爲要自檢,若是是根分區要設爲1,其餘分區只能是2)。所以要使ubuntu不開機自檢,只需將該列的值修改成0便可。

  uuid在gpart裏面雙擊就可查看,好像直接寫分區/設備名也可,可是仍是統一格式的好。
  若是不想開機磁盤自檢,則將全部掛載的最後一列改成0便可。ide

後記

  不懂或者須要交流歡迎評論。