web-dev-qa-db-ja.com

/ dev / disk / by-フォルダーを理解する

質問/dev/disk/by-path説明?そして、これはどこに文書化されていますか?

フォルダに表示されるものの意味を調べる/dev/disk/by-私はそこまでやってきたので、これは正しいですか

  • by-id→ハードウェアデバイスのシリアル番号に基づく
  • by-label→このディスクに手動で設定した名前
  • by-path?!
  • by-uuidniversal Unique Identifier :ディスクを識別するために一意に作成された文字列[システム全体で実行]


[注:これが重要であれば、私はGNU/Linux Debian 7、Crunchbangで作業しています…]

5
erch

マウントポイント/devdevtmpfsファイルシステムであり、udevによって完全に管理されます。したがって、詳細については、udev構成に移動する必要があります。

2 udevルールがこれを通常処理しています

$ grep -ri '/dev/disk' /usr/lib/udev/rules.d/
/usr/lib/udev/rules.d/60-persistent-storage.rules:# persistent storage links: /dev/disk/{by-id,by-uuid,by-label,by-path}
/usr/lib/udev/rules.d/13-dm-disk.rules:# These rules create symlinks in /dev/disk directory.

60-persistent-storage.rulesの言及

# by-path (parent device path)
ENV{DEVTYPE}=="disk", DEVPATH!="*/virtual/*", IMPORT{builtin}="path_id"
ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}"
ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}-part%n"

最後にID_PATHは、デバイスの物理的なハードウェアの場所/接続に基づくデバイスの一意の識別子です(例:ID_PATH = pci-0000:02:04.0-scsi-0:0:0:0)。

ID_PATHは、path_idと呼ばれる組み込みのudevプログラムに由来します(例:/sys/block/sdc

$ udevadm test-builtin path_id /sys/block/sdc
calling: test-builtin
=== trie on-disk ===
tool version:          204
file size:         5632867 bytes
header size             80 bytes
strings            1260755 bytes
nodes              4372032 bytes
load module index
ID_PATH=pci-0000:00:14.0-usb-0:1:1.0-scsi-0:0:0:0
ID_PATH_TAG=pci-0000_00_14_0-usb-0_1_1_0-scsi-0_0_0_0

それを関連付けることができます

drwxr-xr-x 6 root root 0 Aug 15 02:30 /sys/devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/

最終的に、誰かが詳細に興味がある場合は、ソースコードを参照してください

11

by-pathはディスクへのアクセス方法です。ローカルディスクの場合、by-pathはディスクデバイスのPCIパスです。 iSCSIディスクの場合、by-pathは、リモートディスクデバイスのiSCSIパスです。

システムはby-pathロケーションディスクデバイスに!

4
Edward Shen