Raspbian で LXDE を実行します。
デバイスが接続されているときに、USB フラッシュ ドライブでスクリプトを実行したいと考えています。特定のフラッシュドライブではなく、任意のフラッシュドライブ。
これは、システム内のいくつかの rpi の 1 つにキーボードやマウスを接続する必要なく、コードの更新を顧客に提供するためです (ディスプレイはありますが、入力デバイスはありません)。顧客は自分のデバイスのサムドライブにファイルをダウンロードし、それをシステム内の 4 つの rpi のいずれかに挿入します。スクリプトは、古いファイルと scp の新しいファイルをシステム内の正しいホストとリモート ディレクトリにバックアップするために「必要なことを実行」します。
接続されたときにフラッシュ ドライブへのシンボリック リンクを作成する udev ルールを作成できます。/dev の下にシンボリック リンクが表示されます。
観察によると、LXDE は、プラグが差し込まれると /media に USB フラッシュ ドライブを自動マウントするようです。以下を使用すると、マウント ポイントの名前 (例: /media/B85D-6433) が表示されません。
udevadm 情報 -a -p $(udevadm 情報 -q パス -n /dev/sda1) | grep -i 6433
また
udevadm 情報 -a -p $(udevadm 情報 -q パス -n /dev/sda1) | grep -i B85D
そのため、最初にその名前を知らずに、LXDE がドライブをマウントする場所を特定することはできません。
1) LXDE がマウント ポイントに使用する /media の下のディレクトリの名前を特定する方法はありますか? プラグ イベントの前後に /media に何があったかのリストを保持して、そのように判断することもできますが、もっと良い方法があるのではないでしょうか?
2) 代わりに、/dev の下のシンボリック リンクを別の場所にマウントし、この新しいマウント ポイントを介して USB ドライブでスクリプトを実行する必要がありますか?
3) 他の方法は?
ありがとう!