ローカルネットワークにNFS共有を持つNASがあります。 NFS共有に自動的に接続されるノートブックを処理する方法は? fstabファイルのエントリを試みたがローカルネットワークの外にいるときにクライアントがNFSタイムアウトを待っているため、起動に最大5分かかります。
私のラップトップがローカルネットワークにあるかどうかを検出してインストールできるソリューションはありますか?
ありがとう
答え1
/etc/cron.d/nfsmount
起動時にコマンドを実行する1つの方法は、内容とともにコマンドを配置することです。
@reboot root /bin/sleep 7 && /bin/ping -c 1 -W 1 10.0.0.2 > /dev/null && /bin/mount /foo
reboot
数7
秒待ってからping
秒単位でタイムアウトし、1
すべてが順調に進むと、にmount
指定されたパラメータを使用してNFSに進みます/etc/fstab
。
/etc/fstab
以下を選択できる必要がありますnoauto
。
10.0.0.2:/foo /foo nfs noauto 0 0
お持ちの方はsystemd
確認してみるのも良いようですsystemd.automount
。
答え2
ウォッチを実行すると、nfsマウントを確認してからアクションを実行できます。
~から手動:
CHECK FILESYSTEM <unique name> PATH <string>
path は、デバイス/ディスク、マウントポイント、または NFS/CIFS/FUSE 接続文字列へのパスです。ファイルシステムが利用できなくなると、Monitはサービスの起動メソッド(定義されている場合)を呼び出します。 Monit は、手動モードで実行している場合、または起動方法が定義されていない場合にのみエラー警告を送信します。
たとえば、次の規則を使用できます。
check filesystem nfsDisk1 with path nfs://<yournfsexport>
if does not exist then exec "ping host && mount..."
pingが失敗した場合、マウント試行は行われません。
monitがマウントを処理できるようにするには、fstabからマウントを削除する必要があります。
その後、最適化のためにローカルネットワークを検出し、それに依存する最初のルールを作成するなどのタスクを実行できます。
モニターでお楽しみください