參考:https://www.ibm.com/developerworks/cn/linux/l-tip-prompt/tip05/index.html


環境:ubuntu18.04
原硬盤:pcie 360g
新增硬盤:sata 1T

所需命令和文件

fdisk
mkfs.ext4
blkid
/etc/fstap


前言:主要還是參考 文中的參考網頁中的所作。

  • 買回來的硬盤 可在/dev/sdb下識別到。但沒有分區

這裏是將硬盤只分成一個分區。想分成多個分區的可以多搜搜fdisk 的使用方法
1. sudo fdisk -l 可以發現我的新加硬盤是/dev/sdb

2. 使用fdisk 進行對/dev/sdb 分區
```
1.sudo fdisk /dev/sdb
2.接着輸入 n //創建新分區
3.接着輸入 p //作為主分區(我也只分為一個分區)
4.接下來的字節大小 (我選擇默認直接回車 默認)
5.接下來是分區大小  (選擇默認大小 直接回車)
6.這時候已經創建好  p (可查看分區信息) w (保存分區信息) q(不保存信息,退出)
7. 選擇 w 保存,
```

3.以上分區完成,可以sudo fdisk -l 查看分區信息
我的情況在/dev/sdb 下會多出/dev/sdb1 分區節點

以下基本是參考網頁中所作

  • 對新分區創建文件系統

sudo mkfs.ext4 /dev/sdb1

  • 在/mnt 掛載 這個分區
    創建 /mnt/newpart 目錄

sudo mkdir /mnt/newpart

  • 將分區掛載到這個目錄

sudo mount /dev/sdb1 /mnt/newpart

我這裏沒有使用單用户模式 init 1
我進入該模式鍵盤沒有輸入,所以放棄了

  • 將/home 所有拷貝到新分區中

cd /home
cp -ax * /mnt/newpart

  • 我原來的/home 目錄不是一個單獨的分區。是在/dev/sda 下,和/目錄是一個分區。
    更改名字

cd /
mv /home /home.old //保留原先的/home
mkdir /home
mount /dev/sdb1 /home

這裏備份原先的/home 目錄很重要,避免後面mount出錯,可還原 原來的家目錄

  • 將/dev/sdb1 掛載到家目錄 寫入配置文件
    我們上面使用的mount 命令只是臨時的。所以需要寫入配置文件 /etc/fstab
    前車之鑑 看結尾的備註(為了避免出錯可以先將 mount 到/mnt/newpat下,重啓確保可以mount上/mnt/newpat再修改為 掛載在/home )
    查看硬盤的UUID
1.sudo blkid /dev/sdb1
這是我的 0e729050-****-****-913f-c3453217863e

2.sudo vim /etc/fstab 
在最末尾新加一行
UUID=0e729050-****-****-913f-c3453217863e /home           ext4    defaults        1       2

以上則重啓完成。

最後重啓後進到 ~/

df ./
可以看到掛載家目錄的分區在
/dev/sdb1

備註:

我在上面出現的錯誤記錄一下。

1. 由於 在/etc/fstab 寫錯信息 導致硬盤沒掛載上,會進入linux的grub 引導(可以繼續使用命令行 (僅限root用户))。

解決方法:在grub 引導中重新修改/etc/fstab。

2.我由於沒太注意到 /etc/fstab 中哪裏出現錯誤,所以直接把原先的掛載刪除。
會導致進入用户界面無法進入
其實是/home 目錄被我備份成 /home.old 
新的/home又沒掛載上所以出現進不去。

使用命令行 ctrl+alt+F2進入命令行登錄 隨後修改/home 目錄回來

3.接着繼續看我掛載哪兒失敗了
(其實是defaults 寫成default 汗顏)