私はこのトピックのために少し難しいです。
SSDドライブ付きのサーバーボックスがあります。/dev/sda
また、時にはカードが使用されるCFastスロットもあります。カードはハードドライブとして認識され、デフォルトで/dev/sdbドライブ文字に割り当てられました。
設定を完了するにはUSBメモリースティックが必要です。 CFast カードの有無に応じて、スティックは次の場所に割り当てられます。/dev/sdb または /dev/sdc
いくつかの動作するスクリプトを持つには/dev/sdcが必要です。 USBスティックは異なる場合があります。
それでは、ハードドライブ用にsdb(CFast)を予約するか、USBスティックを/ dev / sdc以上に割り当てる方法は?
スティックが頻繁に変更される可能性があるため、fstabのUUIDが機能しないと思います。 udevで書かれたスクリプト?
乾杯ジェーン
ベストアンサー1
さて、ある程度理解しました。
解決策はudevです。電話してもいい
udevadm info --name=/dev/sdb1 --attribute-walk
エンドポイントからルートまでのカテゴリで使用されるすべての属性のリスト。
その後、/etc/udev/rules.d/10-local.rulesにローカルルールを作成しました。
このルールには以下が含まれます。
SUBSYSTEMS=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", RUN+="/bin/usb_load.sh"
SUBSYSTEMS=="usb", ACTION=="remove", ENV{DEVTYPE}=="usb_device", RUN+="/bin/usb_unload.sh"
イベントを比較し、SUBSYSTEMS、ACTION、およびENV {DEVTYPE}が一致すると、RUN + =はリポジトリに配置された2つのシェルスクリプトを実行します。ルートとして実行されるため、権限の問題はありません。
忘れないで
udevadm control --reload
ルールをもう一度読むには
このソリューションはルールにもっと多くの機能があるので、確かに改善することができますが、現在は私にとって良いソリューションです。時間が経つと調整します。