筆者が所有するSystem76の「Thelio」デスクトップの内部には、現在、4台のハードドライブがある。プライマリードライブはOSとして機能し、ほかのドライブにはそれぞれ特定の種類のファイルだけを格納している。1台は仮想マシン用、1台は音楽用で、残りの1台には、それ以外の種々雑多なファイルが保存されている。システムをこのように構成しておけば、たとえOSに障害が発生しても、データにアクセスできなくなることはない。
これらのセカンダリードライブは、常に自動的に利用可能になるようにセットアップされている。「Linux」の世界では、これは「自動マウント」と呼ばれており、ユーザーが理解しておくべき重要なタスクだ。
自動マウントが重要なのは、マシンにセカンダリードライブが接続されていても、マシンの起動時にそれらのドライブが自動的に利用可能になるわけではないからだ。確かに、デスクトップファイルマネージャーを開いて、そのドライブに移動し、適切な項目をクリックしてマウントすることも可能だ。しかし、バックアップの設定でファイルがそのドライブに自動的に保存されるようになっている場合や、単純にアプリケーションからそのドライブにファイルを保存しようとした場合に、ドライブがマウントされていないと、問題が発生する可能性がある。ドライブがマウントされていなければ、アプリ(やバックアップ)はそのドライブにアクセスできないからだ。
それらのドライブの自動マウントを有効にすることが常に得策であるのは、そのためだ。
本記事では、その手順を解説する。
Linuxでドライブを自動マウントする方法
必要なもの:これを実行するのに必要なのは、Linuxの実行中のインスタンス、マシンに接続されたセカンダリードライブ、sudo権限を持つユーザーだけだ。ここでは、「Pop!_OS」を使用して説明を進めるが、ほかのLinuxディストリビューションを使用している場合でも、手順は同じであるはずだ。対象のドライブはすでにフォーマット済みだという前提で話を進める。筆者はLinuxで使用するセカンダリードライブをいつもext4形式でフォーマットしている。NTFSドライブ(「Windows」ドライブ)を使用している場合は、sudo apt-get install ntfs-3gなどのコマンドを使用して、「ntfs-3g」ソフトウェアをインストールする必要がある。
1. マウントするドライブの名前を確認する
最初に、マウントするドライブの名前を確認する必要がある。以下の方法を利用すれば、簡単に名前を確認することができる。
ドライブが接続されていない状態で、以下のコマンドを実行する。
lsblk
このコマンドの出力には、以下のような項目が表示されるはずだ。
sda 8:0 0 931.5G 0 disk └─sda1 8:1 0 931.5G 0 part
ドライブを接続してコマンドを再度実行すると、以下のような新しい項目が表示される。
sdb 8:16 0 931.5G 0 disk └─sdb1 8:17 0 931.5G 0 part
セカンダリーディスクを簡単に取り外すことができない場合は、lsblkコマンドを実行してほしい。sdaとsdbという2台のドライブが表示される場合は、おそらく、sdbがセカンダリードライブであるはずだ。この手順を分かりやすく説明するため、ここでは、ドライブの名前が/dev/sdbであると仮定する。
2. マウントポイントを作成する
マウントポイントは、プライマリードライブ上のディレクトリーとして作成され、ユーザーはそこからセカンダリードライブにアクセスできるようになる。
ここでは、ファイルを一方から他方にコピーしたり移動したりするのではなく、OSがセカンダリードライブを「マウント」するための場所を作成する。以下のコマンドを実行して、/dataというマウントポイントを作成してみよう。
sudo mkdir /data
次に、以下のコマンドを実行して、新しいディレクトリーの所有者をユーザーに変更する。
sudo chown -R $USER:$USER /data
-Rオプションを使用すると、すべての子フォルダーの所有者を同じユーザーに変更することができる。
3. /etc/fstabに項目を追加する
/etc/fstabは、セカンダリードライブをマウントポイントにマッピングするファイルだ。
セカンダリードライブの名前が/dev/sdbであると仮定して、最後に1を追加する(/dev/sdb1は使用可能な最初のパーティションであるため)。以下のコマンドを実行して、編集対象のfstabファイルを開く。
sudo nano /etc/fstab
そのファイルの最後に、以下のような項目を追加する。
/dev/sdb1 /data ext4 defaults 0 0
この項目について、詳しく説明しておこう。
- /dev/sdb1 -- セカンダリードライブ
- /data -- マウントポイント
- ext4 -- セカンダリードライブのファイルシステムタイプ。NTFSドライブの場合は、ntfs-3gに置き換えてほしい
- defaults -- デフォルトのオプションを使用する
- 0 0 -- これらのフィールドはdumpとfsckのためのものだ。両方とも0のままにしておこう
「Ctrl」+「X」を押して、ファイルを保存して閉じる。
マウントをテストする
マウントをテストするのに必要なのは、以下のコマンドを実行することだけだ。
mount -a
フィードバックが表示されなければ、何も問題はない。これで、マシンを再起動すると、セカンダリードライブが自動的にマウントされ、/dataからファイルにアクセスできるようになった。
おめでとう。Linuxでセカンダリードライブの自動マウントを有効にする作業は、これで完了だ。
提供:Morsa Images/Getty Images
この記事は海外Red Ventures発の記事を朝日インタラクティブが日本向けに編集したものです。