システム上の6つのHDDすべてに/ dev/sd **マウントポイントを設定するカスタムudevを設定しようとしています。
私はそれを機能させようと試みてきましたが、それはまったく役に立ちません。私のドライブは私のリンクとライブラリの混乱をランダムに変えるように見えるので、これをソートする必要があります。私のドライブのうち5台はtruecryptで暗号化されているため、UUIDを使用して特定のポイントにマウントすることはできません。
これは私が使用しようとしているものです。 Ubuntu 13.04 ansを実行していると、ファイルが/lib/udev/rules.d/65-persistent-hdd.rulesに保存されます
# These are the rules to force all drives into specific /dev/sd** slots for truecrypt mounting
#
KERNEL=="sd*", SUBSYSTEMS==" block", ATTRS{serial}=="3PK0R7AD", SYMLINK+="sda%n"
KERNEL=="sd*", SUBSYSTEMS==" block", ATTRS{serial}=="S1UVJ1LZ401091", SYMLINK+="sdb%n"
KERNEL=="sd*", SUBSYSTEMS==" block", ATTRS{serial}=="S1VSJ1KS202775", SYMLINK+="sdc%n"
KERNEL=="sd*", SUBSYSTEMS==" block", ATTRS{serial}=="W1F08BLH", SYMLINK+="sdd%n"
KERNEL=="sd*", SUBSYSTEMS==" block", ATTRS{serial}=="S1Y6J90SA14564", SYMLINK+="sde%n"
KERNEL=="sd*", SUBSYSTEMS==" block", ATTRS{serial}=="S13PJDWS223047", SYMLINK+="sdf%n"
ご覧のとおり、{serial} == "3PK0R7AD"を/ dev/sdaに、{serial} == "S1UVJ1LZ401091"を/ dev/sdbなどに強制しようとしているなどです。
100%確実ではありませんが、問題はSYMLINK + =がデフォルトの/ dev/NAMEを使用し、追加のシンボリックリンクのみを追加することだと思います。おそらく、既存のデバイスへのシンボリックリンクを作成できないでしょうか?
代わりにNAME = "sda"を使用してください
から http://www.reactivated.net/writing_udev_rules.html
一連の一致キーを使用してデバイスを正確に一致させた後、udevを使用すると、一連の割り当てキーを使用して、次に起こることを細かく制御できます。可能な割り当てキーの完全なリストについては、udevのmanページを参照してください。最も基本的な割り当てキーを以下に紹介します。その他については、このドキュメントの後半で紹介します。 NAME-デバイスノードに使用される名前SYMLINK-デバイスノードの代替名として機能するシンボリックリンクのリスト
上記で示唆したように、udevは1つのデバイスに対して1つの真のデバイスノードのみを作成します。このデバイスノードの別名を提供する場合は、シンボリックリンク機能を使用します。 SYMLINK割り当てを使用すると、実際にはシンボリックリンクのリストが維持され、そのすべてが実際のデバイスノードに向けられます。これらのリンクを操作するために、リストに追加するための新しい演算子+ =を導入します。各ルールをスペースで区切ることにより、1つのルールから複数のシンボリックリンクをリストに追加できます。
KERNEL == "hdb"、NAME = "my_spare_disk"
上記のルールは、カーネルによってhdbという名前が付けられたデバイスに一致し、それをhdbと呼ぶ代わりに、デバイスノードにmy_spare_diskという名前を付けます。デバイスノードは/ dev/my_spare_diskに表示されます。
KERNEL == "hdb"、DRIVER == "ide-disk"、SYMLINK + = "sparedisk"上記のルールは、カーネルがhdbと命名し、ドライバーがide-diskであるデバイスと一致することを示しています。デバイスノードにデフォルト名を付けて、スペアディスクという名前のシンボリックリンクを作成します。デバイスノード名を指定しなかったため、udevはデフォルトを使用します。標準の/ devレイアウトを維持するために、独自のルールは通常、NAMEをそのままにしますが、SYMLINKを作成したり、他の割り当てを実行したりします。*
それは私のために働いていませんが、デバッグはそれらが処理されていることを示していないので、私の問題は私のudevルールのどこにあるのか分かりません。うまくいけば、これがあなたを助ける
私は同じことをして、デバイスを特定の/ dev/sdXに強制しようとしていますが、なぜそうするのか疑問に思っていますが、デバイスのそのレベルの制御を望んでいる人もいます。