/ sda / sdbが起動間で変更されるのを防ぐ方法は?

/ sda / sdbが起動間で変更されるのを防ぐ方法は?

私は、IDEとSATAハードドライブの両方を持つ古いハードウェアにGentoo Linuxをインストールする予定です。 IDE 2台とSATAドライブ1台が接続されており、RAIDを計画しています。

しかし、問題が発見されました。起動するたびに/ dev / sdaにマップされたハードドライブが変更されることです!

インターネットで答えを探しています。私が見つけた永続デバイス名解決策になることができます。しかし、システム全体の互換性の問題が発生するのではないかと心配ですか?また、使用できないと(名前が非常に長いため)不便です/dev/disk/by-labelが可能ではないby-labelようです。また、BIOSを使用する古いハードウェアの場合/dev/sda/dev/sdb/dev/sda1GPTではなくMBRのみを使用できます。。 MBR環境でディスクラベルを変更するには?

一方、/dev/sda起動するたびに同じハードドライブにマッピングするのが理想的なソリューションだと思います。ハードドライブに「bootmap」というファイルを保存すると、これを行うことができると想像してください。そして、「/sda」は「bootmap」ファイルに書き込まれます。システムが起動すると、「bootmap」に「/ sda」がある場合はドライブがにマップされ、/dev/sda「/ sdb」がある場合はにマップされます/dev/sdb。 (しかし、私はこれがそれほど理想的ではないかもしれないことを知っています。)

それでは、/dev/sdaブート間マッピングの変更を防ぐ方法は何ですか?

代わりに、タグを編集する良い方法もあります。 - どこにも互換性の問題がないことを考えると。

(PS - とにかくインターネットにはまだ解決策がありません.)

ベストアンサー1

ほとんどのファイルシステムには、一意の値に設定できる一意のUUIDとタグがあります。これにより、/dev/disk/by-uuidファイルシステムを含むボリュームを転送または参照できます/dev/disk/by-label。他の種類のボリューム(RAID、LVMなど)にも通常名前があります。 RAID ボリュームと LVM ボリュームは、ボリュームの接続方法に関係なく、物理ボリューム内の一意の識別子に基づいて構成されます。したがって、ディスク自体を参照する必要性は一般的ではありません。

接続方法に応じて実際にディスクにアクセスする必要がある場合、またはフォーマットされた/dev/disk/by-idエントリを使用できます。すべてのサブディレクトリは次のように表示されます。BUS-SERIALBUS-NAME-SERIAL/dev/disk/ウデブしかし、特に継続的な保存ルール

別の解決策は、以下に独自のシンボリックリンクを作成することです/dev。これを行うには、udevルールを作成できます。/etc/udev/rules.d/50-local-persistent-disks.rules次のルールを含むファイルを追加してください。

SUBSYSTEM=="block", ATTRS{model}=="Yoyodine HD9001", \
  ATTRS{serial}=="123-456-789", \
  SYMLINK+="myfancyname"

どのモードが利用可能かをudevadm info -a /dev/sda確認するには、実行してください。…==…複数のモードを使用している場合は、同じ出力ブロックから出る必要があり、他の親デバイスのモードを混在させることはできません。

おすすめ記事