Постоянное имя диска /dev/sd'x', меняющееся почти при каждой перезагрузке

No. Linus no es el único que escribe el código fuente del kernel de Linux, y creo que encontrará que el kernel de Linux tiene más de "miles" de líneas de código (está más cerca de 12 -15 millones de líneas, dependiendo de cómo se cuente ).

Véase, p. los 100 principales contribuyentes mencionados aquí :https://github.com/torvalds/linux/graphs/contributors

Observe cómo Linus (en este momento )es el #39 colaborador más frecuente en términos de número de confirmaciones.

Véase también el texto en la sección "Comunidad de desarrolladores" del artículo de Wikipedia "Linux Kernel", que establece

As of 2007, the development of the kernel had shifted from the top 20 most active developers writing 80% of the code to the top 30 writing 30% of the code, with top developers spending more time reviewing changes.

[...]

About 1500 developers are contributing to each release from about 200-250 companies on average per release. The top 30 developers contributed a little more than 16% of the code. As of companies, the top contributors are Intel (12.9%) and Red Hat (8.0%), the third and fourth places are held by the 'none' (7.7%) and 'unknown' (6.8%) categories.

0
16.07.2019, 22:53
1 ответ

/dev/sdXне был стабильным идентификатором диска в течение очень долгого времени (и, вероятно, никогда им не был ). Они распределяются в порядке их обнаружения, и разные контроллеры проверяются параллельно. Мало того, если диск покидает шину и возвращается обратно, он часто получает новую букву. Или иногда, когда вы заменяете неисправный диск (, оба из них происходят, потому что что-то все еще имеет ссылку на старый диск, например, запись «сбой» в md -raid ).

Существуют стабильные идентификаторы ; используйте их вместо этого. Ваш udevadm infoвывод сказал вам, что это такое:

S: disk/by-id/ata-Crucial_CT1024MX200SSD1_1619128D4E19
S: disk/by-id/wwn-0x500a0751128d4e19

Эти два однозначно идентифицируют сам диск .даже если вы переместите его в другой порт.

S: disk/by-path/pci-0000:00:1f.2-ata-1

Идентифицирует порт , к которому подключен накопитель. Если вы замените накопитель, новый накопитель также будет иметь этот идентификатор.

Так, например, если вы хотите проверить статус SMART любого диска в этом порту, вы должны использовать smartctl -x /dev/disk/by-path/pci-0000:00:1f.2-ata-1и , а не/dev/sda. Если вы хотите проверить этот конкретный диск, даже если кто-то переместил его на другой порт, вы должны использовать smartctl -x /dev/disk/by-id/wwn-0x500a0751128d4e19.

(При необходимости вы можете использовать правила udev для установки дополнительных коротких имен. Вы делаете это с помощью SYMLINK+=в своем правиле; см., например, /lib/udev/rules.d/60-persistent-storage.rulesдля примеров. Но вам часто не нужны короткие имена, если они просто идут в файле конфигурации, например ).

3
28.01.2020, 02:29

Теги

Похожие вопросы