全体的なダウンタイムを最適化し、システム障害が発生した場合の可用性を向上させようとしています。
特定のサーバーへのシリアルコンソールがないため、再起動(カーネルパニック後など)に時間がかかりすぎて、システムが正常に動作しているかどうかが実際にはわかりません。
sshd
の前ではなく、OpenBSDで起動した直後に、必須ではないすべてのファイルシステムをマウントする適切な方法は何でしょうか。
私は約20のファイルシステムを持っていますが、おそらく最も重要なものだけを最初にfsck
してマウントし、次にsshd
を開始し、残りはすべてfsck
'され、直後にマウントされました。
そのようなことをするためのベストプラクティスは何でしょうか?
/etc/fstab
ファイルを編集して、マウントを遅らせたいファイルシステムの4番目のフィールドにnoauto
オプションが設定されるようにします。
次に、手動で実行するスクリプトを設定するか、SSHが開始された後に実行するようにrcスクリプトで設定して、残りのファイルシステムをfsckしてマウントします。
OpenBSD/etc/fstabのマニュアルページを読んでから、6番目のフィールドを0に設定して、問題のファイルシステムのfsckを停止することもできます。手動でfsckするかどうかによって異なります。
I believe fstabエントリにnobootwaitを追加することは機能しますが、openbsdはそれを実装しない可能性があります。 Upstartで使用されるmountalllはそうします。 systemdもそうだと思います。
起動中の自動マウントを回避したい/etc/fstab
のエントリを削除/コメントします。次に、/etc/rc.local
ファイルに完全なマウントコマンド形式でエントリを作成します
可能であれば、読み取り専用でマウントしてください。fsck
は必要ありません。
しかし、実際にはもっと具体的にする必要があり(どのパーティションについて話しているのですか?fstab
なしで推測しているだけです)、特にそのようなことが理由で発生することを理解する必要があります。例えば。 sshd
は/usr
にあり、ユーザープロファイルは/home
にあります。これらが別々のパーティションであると仮定すると、両方のファイルシステムがダーティである場合、sshd
を開始する意味は何ですか?
あなたの問題はいつこれらのパーティションがチェックされるのではなく、どのくらいの時間チェックされるのにかかるかです。これらのチェックを高速化するには、いくつかのオプションがあります。iノードの密度を変更し(newfs -i
)、/usr
を読み取り専用としてマークします(必要に応じて、パッケージのインストール時などにmount -uw
をマークします)。非常に大きなパーティションを小さなパーティションに分割するなど...