SATA/PATA または SCSI デバイスにあるファイル システムにアクセスするには、手動でマウントする必要があります。 mount コマンドを使用すると、root ユーザーはファイル システムを手動でマウントできます。 mount コマンドの最初の引数は、マウントするファイル システムを指定します。 2 番目の引数は、マウント後にファイル システムが使用可能になるターゲット ディレクトリを指定します。ターゲット ディレクトリはマウント ポイントと呼ばれます。
mount を使用してファイル システムをマウントするための一般的な構文は次のとおりです。
# mount [-t file_system_type] [-o mount_options] device mount_point_directory
マウントを使用すると、/etc/fstab のデフォルト設定を上書きできます。たとえば、次のように入力すると、パーティション /dev/sdd1 がディレクトリ /data にマウントされます。
# mount /dev/sdd1 /data
通常、ファイル システム タイプは自動的に認識されるため、指定しません (スーパーブロックでマジック ナンバーを使用するか、単に別のファイル システム タイプを試すことにより、詳細については man mount を参照してください)。
コマンド mount を使用して、または /etc/fstab に入力してファイル システムをマウントするときに使用できるオプションの一部を次に示します。
- 再マウント .このオプションを指定すると、すでにマウントされているファイル システムが再度マウントされます。 /etc/fstab のオプションを変更した場合、remount を使用して変更を組み込むことができます。
- えー、えー .これらのオプションは、ファイル システムが書き込み可能 (rw) か読み取り専用 (ro) かを示します。
- 同期、非同期 .これらのオプションは、ファイル システムの同期 (sync) または非同期 (async) の入出力を設定します。デフォルト設定は非同期です。
- いつでも、いつでも .これらのオプションは、ファイルのアクセス時刻が inode で更新されるか (atime)、更新されないか (noatime) を設定します。オプション noatime はパフォーマンスを向上させるはずです。
- ノード、開発 . nodev オプションは、デバイス ファイルがファイル システムでそのように解釈されるのを防ぎます。
- noexec, exec .オプション noexec を使用すると、ファイル システムでのプログラムの実行を禁止できます。
- nosuid、suid . nosuid オプションは、ファイル システムの suid および sgid ビットが確実に無視されるようにします。
一部のオプションは、ファイル /etc/fstab でのみ有効です。これらのオプションには以下が含まれます:
- 自動、自動なし .ファイル /etc/fstab でオプション noauto が設定されたファイル システムは、システムの起動時に自動的にマウントされません。
- ユーザー、ノーユーザー .このオプションを使用すると、ユーザーはファイル システムをマウントできます。通常、これはユーザー root の権限です。
- デフォルト .このオプションにより、デフォルト オプション rw、suid、dev、exec、auto、nouser、および async が使用されます。
オプション noauto とユーザー 通常、フロッピー ディスクや CD-ROM ドライブなどのリムーバブル メディア用に組み合わされます。
ファイル システムのアンマウント
ファイル システムがマウントされると、umount コマンド (「n」なし) を使用してファイル システムをアンマウントできます。デバイスまたはマウント ポイントで umount を使用して、ファイル システムをアンマウントできます。
たとえば、/data にマウントされているファイル システム (dev/sdd1) をアンマウントするには、次のいずれかを入力できます:
# umount /data
または
umount /dev/sdd1
ファイル システムをアンマウントするために、アプリケーションまたはユーザーはファイル システムを使用できません。使用されている場合、Linux はファイル システムが「ビジー」であると認識し、ファイル システムのアンマウントを拒否し、以下のエラーを生成します。
# umount /data umount: /data: target is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1))
マウントポイントがプロセスによってアクセスされている場合、アンマウントはできません。 umount を成功させるには、プロセスがマウント ポイントへのアクセスを停止する必要があります。
lsof コマンドは、開いているすべてのファイルと、指定されたディレクトリにアクセスしているプロセスを一覧表示します。現在、ファイル システムの正常なアンマウントを妨げているプロセスを特定すると便利です。
# lsof /data COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME bash 1160 root cwd DIR 253,1 180 4194369 /root rsyslogd 566 root cwd DIR 253,1 224 64 / ...
また、fuser コマンドを使用して、アンマウントする mpunt ポイントで現在実行されているプロセスのプロセス ID を取得することもできます。
# fuser -cu /data
また、fuser コマンドを使用して、マウント ポイント上のすべてのプロセスを強制終了することもできます。
# fuser -ck /data
プロセスが識別されると、プロセスが完了するのを待つか、SIGTERM または SIGKILL シグナルをプロセスに送信するなどのアクションを実行できます。この場合、マウント ポイントをアンマウントするだけで十分です。
# umount /data注意 注:マウント ポイントのファイル システムがビジー状態になる一般的な原因は、シェル プロンプトの現在の作業ディレクトリがアクティブなマウント ポイントの下にある場合です。マウント ポイントにアクセスするプロセスは bash です。マウント ポイント外のディレクトリに変更すると、デバイスをアンマウントできます。
ファイルシステムの強制アンマウント
何をしようとしても、システム (カーネル) がファイル システムがビジーであると見なす場合があります。このような場合、umount -f と入力できます ファイルシステムを強制的にアンマウントします。ただし、これは最後の手段としてのみ使用することをお勧めします。おそらく、ファイル システムがまだマウントされているとカーネルが判断する理由があるからです。
# umount -f /mount_point
現在マウントされているファイル システムを表示
コマンド mount を入力すると、現在マウントされているファイル システムを表示できます。次のような情報が表示されます:
# mount sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel) proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=487424k,nr_inodes=121856,mode=755) /dev/vda1 on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota) ...
この情報は、ファイル /proc/mounts でも確認できます。 .
Linux の /etc/fstab ファイルを理解する