fstab noauto、ただしフォルダをクリックすると自動

fstab noauto、ただしフォルダをクリックすると自動

ここにノートブックとネットワーク共有があります。通常は起動時にマウントしたいのですが、常に正しいネットワークに接続されていないノートブックでは、これはあまり適切ではありません。そこで、fstab に「noauto」を設定しました。

<IP>:/share              /share        nfs     noauto,defaults        0 0

しかし、正しいネットワークに接続している場合は、共有を常に手動でマウントする必要はありません。USB ドライブのように、フォルダーをクリックしたときにマウントできるようにする方法はありますか? または、ノートブックが正しいネットワークに接続されているときにマウントできるようにする他の方法はありますか?

ご協力いただければ幸いです。

答え1

nofailオプションを追加して、を削除することもできますno-auto。これにより、接続時に起動時に自動マウントが追加されますが、マウントに失敗しても問題は発生しません。

次に最も簡単な手順は、 mount <mount-point directory> ネットワークに接続しているがマウントされていない場合に を呼び出すことです。これが面倒な場合は、それを短いスクリプトにするか、そのコマンドに bash エイリアスを割り当てることができます。

より洗練された、より自動化された代替案としては、接続が確立されたときにスクリプトを実行することが挙げられます。x 時間ごとにスクリプトを実行する cron ジョブを実行できます。

#!/bin/bash
 if [[ $(cat /sys/class/net/<device 1>/carrier) == 1 ]] && [[ -z $(grep -s '<mount-point directory> ' /proc/mounts) ]]; then
    mount <mount-point directory>
 fi

これは、接続があるかどうかを確認し、まだマウントされていない場合はマウントします。

答え2

現在、私は次のアプローチを使用しています。

  1. デスクトップ エントリ ファイルを作成します。
  2. ネットワーク共有が必要な場合は、ターミナル経由で手動でマウントするのではなく、デスクトップ上のアイコンをダブルクリックするだけです。
  3. パスワードを入力してください。これはログイン セッションごとに 1 回のみ入力できます。
  4. ファイル マネージャーでネットワーク共有を確認します。

デスクトップエントリファイル(~/Desktop/nas.desktop)は次のようになります。

[Desktop Entry]
Name=nas
Exec=sh -c "findmnt /mnt/nas || pkexec mount 192.168.1.15:/ /mnt/nas && nemo /mnt/nas"
Comment=Mount and open NAS shared dir
Terminal=false
Icon=folder-remote
Type=Application

sh -c ...デスクトップ エントリは複数のコマンドで動作しないこともあるため、ここでは複数のコマンドを 1 つにまとめるラッパーにすぎません。

findmnt ...マウント ポイントがマウントされているかどうかを確認します。すでにマウントされている場合は、次のコマンドはスキップされます。

pkexec ...スーパーユーザーとしてコマンドを実行し、ターミナルのmountように「GUI 方式」でパスワードを要求します。sudo

nemoファイル マネージャーです (私は Linux Mint を使用しています)。

この方法の欠点は、デスクトップ (Ctrl+D) に移動する必要があることと、既に開いているタブに新しいタブが表示されるのではなく、新しいファイル マネージャー ウィンドウが表示され、パスワードを入力する必要があることです。そのため、現在、より良い解決策を探しています。見つかったら、ここに投稿します。

関連情報