久しぶりにUbuntuを使うと、設定ファイルの書き方など変わっているところもあり、多少戸惑いました。本記事では、Ubuntu 15.04上で、CUI、すなわちコマンドラインにおいて、従来のMBRでは扱えない2TB以上のハードディスクをマウントする手順を書きます。他のディストリビューションでも同様ですが。
手順
ハードディスクを認識しているか確認
まず、ハードディスクが認識され、デバイスファイルが作成されているかを確認します。
$ df
$ ls /dev/sd*
df で表示されていない、sdaとかsdbとかそんなのがlsで表示されれば、それが当該のハードディスクと思われます。以下では仮に sda を対象として記述していきます。
パーティションの作成
パーティションの作成には parted コマンドを用います。よく使われるfdiskは、GPTに対応していないので使えません。2TBを超えるハードディスクの取り扱いには、GPTである必要があります(参考:「容量の壁 - Wikipedia」)。
partedは対話的なソフトウェアです。helpで実行できるコマンドの一覧が表示されます。ここでは、print、mklabel、mkpart、unit のみ使います。念の為確認ですが、この作業を行うとハードディスクの中身が消去されます。以下、まるごと一つのパーティションにするものとしたときのコマンド。
$ sudo parted /dev/sda
> print # 状態の確認
> mklabel gpt # この時点でハードディスクの中身が消去されます、注意
> unit GB # 単位をGBに設定。設定したい容量によって柔軟に
> mkpart
> (パーティションの種類) [] 空エンターでOK
> (ファイルシステムの種類) ext4 (デフォルトはext2。それでもOKです)
> (開始位置) 0 # 今回はまるごと使うので。必要に応じて臨機応変に
> (終了位置) 3001 # 同上
> print # 思った通りに作成されているか確認
> quit # よければ終了
パーティションの作り方を間違えた場合、print で番号を確認し、 rm 番号 と入力することでパーティションを削除できます。慌てずに。
ファイルシステムの作成
パーティションを作成したら、設定したとおりのファイルシステムを作成します。今回はext4なので、以下の様なコマンドになります。
$ sudo mkfs -t ext4 /dev/sda1
-t ext4 がない場合、ext2 で作成されます。
/etc/fstab の設定とマウント
ファイルシステムまで作ったら、いよいよマウントします。まずマウントする場所を決めますが、今回は /mnt/data ディレクトリ を作成し、そこにマウントすることにします。なお、/mnt/dataの権限はchownで通常使用するユーザー・グループにしたほうがよいでしょう。
一度だけマウントするのであれば、 mount コマンドを使ってもよいのですが、毎回起動するたびにコマンドを入力するというのは現実的ではありませんから、自動でマウントされるように、設定ファイル/etc/fstab を編集します。編集する前に、まずマウント元を指定するためハードディスクのUUIDを調べます。以前はマウント元については/dev/sda1でよかったのですが、最近のUbuntuはUUIDで設定するのがデフォのようです。UUIDは一意に与えられるので、こちらのほうが確実なのは確かです。
UUIDの調べ方については、「Linux(ubuntu)ディスクのUUIDを調べてマウントする方法 - それマグで!」を参考にさせていただきました。
$ sudo blkid /dev/sda1
-> /dev/sda: UUID="hogehoge" TYPE="ext4"
のように表示されるので、hogehogeの部分をコピーしておきます。
次に、/etc/fstab を編集します。viなりemacsなりnanoなり、好きなテキストエディタで以下の一行を追加。
UUID=hogehoge /mnt/data ext4 defaults 0 0
空白部分はタブに置き換えてください。意味は左から以下。
- UUID=hogehoge のデバイスを
- /mnt/dataにマウント
- ファイルシステムはext4
- マウントオプション(自動でマウントするのかとか、読み書きOKかとか、マウント権限はとか、そういう設定)はデフォルト
- 最初の0→dump によるバックアップはしない
- 次の0→起動時にファイルシステムのエラーチェックはしない(1から優先的にチェックするが、0は例外的にチェックしないの意味)
ここまで終わったら、再起動でもよいですが、以下のコマンドでマウント完了。
$ sudo mount -a
エラーが出たら、/etc/fstabが多分間違えています。df でマウントされていることを確認し、終了です。
$ df -h
-h をつけているのは、容量表示を見やすくするためです。お疲れ様でした。
コメント