- 印刷する
- PDF
自動マウント設定(fstab)
- 印刷する
- PDF
Classic環境で利用できます。
NAVERクラウドプラットフォーム Linuxサーバの自動マウント設定ファイルである fstabの使用方法について説明します。
fstabファイル
/etc/fstabは、サーバの起動段階でマウントされるべきボリューム情報が保存されるファイルです。以下は fstabファイルの例です。
#
# /etc/fstab
# Created by anaconda on Tue Oct 25 16:27:45 2022
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=8ce3c9de-8217-4378-8b70-b63ce4d6c6a2 / xfs defaults 0 0
UUID=45a9df56-7731-479c-8c8f-f0280b387749 /boot xfs defaults 0 0
/dev/vdb /mnt/a xfs defaults 0 0
fstabファイルの各行は全部で6つの項目で構成されており、各項目は Tabまたは Spaceで区切られています。
デバイス名
ユーザーが保有するボリューム名を意味します。上記の例では、デバイス名が UUIDと/dev/vdb(デバイス名)で表現されました。
blkid
コマンドでボリュームの UUIDを照会できます。
マウントポイント
ボリュームをマウントする位置を設定します。上記の例では、/
と /boot
、/mnt/a
、/mnt/b
がマウントポイントです。
- マウントポイントは絶対パスで指定する必要があります。
ファイルシステム
ボリュームをフォーマットする時に必要なファイルシステムを意味します。上記の例では、ファイルシステムはすべて xfs
です。
ファイルシステムはサーバの OSによって異なります。
- CentOS 6: ext4
- CentOS 7: xfs
- Ubuntu: ext4
マウントオプション
ボリュームをマウントする場合、設定可能なオプションを設定します。上記の例では、すべて defaults
オプションを使用しています。
設定できるマウントオプションは、次の通りです。複数のオプションを一覧表示する場合は、カンマ(,)で区切って空白がないようにします。
マウントオプション | 説明 |
---|---|
defaults | auto、rw、nouser、exec、suidオプションをすべて含むオプション |
auto | 起動時に自動マウント |
noauto | 起動時に自動マウントしない |
rw | 書き込みと読み取りの両方とも可能なマウント(read and write) |
ro | 読み取り専用(read only) |
nouser | rootアカウントのみマウント可能 |
user | 一般アカウントもマウント可能 |
exec | ファイル実行許可 |
suid | SetUIDと SetGIDを許可 |
nofail | エラーが発生しても起動できるようにするオプションで、誤字脱字などの理由でマウントに失敗した際にエラーが発生したボリュームを除いて起動 |
UUIDに不要な引用符が含まれていたり、「default」のように誤字脱字がある場合、エラーが発生します。ただし、nofailオプションを設定した場合、エラーがあるボリュームを除いて正常に起動します。
dump設定
ファイルシステムの dump可否を設定します。上記の例では、すべて 0
に設定されています。
設定可能な値は、次の通りです。
- 0: dumpされないファイルシステム
- 1: バックアップなどの目的で dump可能なファイルシステム
fsck設定
起動時に fsckでファイルシステムのチェック有無を設定します。上記の例では、すべて 0
に設定されています。
設定可能な値は、次の通りです。
- 0: 起動時に fsckを実行しない
- 1: 起動時に rootファイルシステムをチェック
- 2: 起動時に root以外のファイルシステムをチェック
fstabの設定手順
fstabの設定例で自動マウントを設定できます。
/dev/xvdb1デバイスを/mnt/bにマウントするように fstabを設定する方法は、次の通りです。
viエディタで
/etc/fstab
ファイルを開きます。$> vi /etc/fstab
自動マウントの設定内容を入力します。
# CentOS 6.xの場合 /dev/xvdb1 /mnt/b ext4 defaults 0 0 # CentOS 7.xの場合 /dev/xvdb1 /mnt/b xfs defaults 0 0 # Ubuntu Server / Desktopの場合 /dev/xvdb1 /mnt/b ext4 defaults 0 0
ファイルを保存して終了します。
次のコマンドを入力して整合性をチェックします。
$> mount -av
- コマンドの実行結果、fstabに登録したボリュームがマウントされます。マウントにエラーが発生した場合、エラーメッセージが表示されます。
fstabのトラブルシューティング
fstabの設定にエラーがある場合、起動に失敗して Emergency Modeに入ります。解決する方法は、次の通りです。
- NAVERクラウドプラットフォームコンソールの Region メニューや Platform メニューから利用中の環境をクリックします。
- Services > Compute > Server メニューを順にクリックします。
- Server メニューをクリックします。
- サーバリストで当該サーバが再起動に失敗した状態か確認します。
- サーバをクリックして選択し、 [サーバアクセスコンソール] ボタンをクリックします。
- サーバアクセスコンソールで Emergency Modeの状態を確認した後、パスワードを入力してサーバにアクセスします。
- 起動失敗の原因に応じて、以下の対策を実行します。
起動に失敗しても [サーバアクセスコンソール] ボタンが有効にならない場合は、カスタマーサポートまでお問い合わせください。
マウントオプションが間違っている場合
マウントオプションが誤っている場合の解決方法は、次の通りです。
- 次のコマンドを入力して手動マウントを行います。
$> mount -av
- 手動マウントの実行結果を確認します。
例) /dev/xvdb1にマウントオプションの誤字がある場合(defaults -> defaultに誤記)
- viエディタで
/etc/fstab
ファイルを開き、間違って設定された行をコメントアウトするか、設定内容を修正してから保存します。- コメントアウトをお勧めします。
- fstabの内容の中で rootパーティションラインにエラーが発生した場合には、root(/)下のすべてのファイルが read-only modeになるので、/etc/fstabファイルを修正できません。この場合は、カスタマーサポートにシングルモード起動サポートを依頼するか、
mount -o remount,rw
コマンドを実行して rootパーティションを read-write modeで再マウントした後、/etc/fstab
ファイルを開いて間違った設定を修正します。
- サーバアクセスコンソールで
reboot
コマンドを実行するか、NAVERクラウドプラットフォームコンソールでサーバを強制停止した後、[開始] ボタンをクリックして再起動します。 - 正常に起動したことを確認し、
/etc/fstab
でコメントアウトしたラインの記法/オプションをチェックします。
Oracle Linux 6.10および RHEL 6.10では、fstab設定内容が間違っていても Emergency modeに入ることなく正常に起動され、/var/log/messages
ファイルで関連ログを確認できます。
# ('defaults' 'default')
Aug 5 18:25:05 test-server kernel: [ 2.077285] xvdb: xvdb1
Aug 5 18:25:06 test-server kernel: [ 11.118531] EXT4-fs (xvdb1): Unrecognized mount option "default" or missing value
ファイルシステムのフォーマットが間違って登録された場合
ファイルシステムのフォーマットが間違って登録された場合の解決方法は、次の通りです。
- viエディタで/etc/fstabファイルを開き、ファイルシステムのフォーマットを修正します。
例)
xfs
で間違って入力された fstab設定をext4
に変更
- NAVERクラウドプラットフォームコンソールの Region メニューや Platform メニューから利用中の環境をクリックします。
- Services > Compute > Server メニューを順にクリックします。
- サーバリストから当該サーバをクリックして選択し、 [サーバアクセスコンソール] ボタンをクリックします。
- また、当該サーバをクリックして選択し、 [強制停止] ボタンをクリックします。
- サーバアクセスコンソールで
reboot
コマンドを実行します。- 強制停止したサーバに対して、 [開始] ボタンをクリックして再起動します。
- NAVERクラウドプラットフォームコンソールでサーバの状態が 運用中 の状態に復旧したことを確認します。