LINUX.ORG.RU

Проблема из за регулярных изменений bios имён двух nvme дисков в системе

 , , , ,


0

1

Поставил второй ssdm2 в ноутбук и установил archlinux + hyrpland, выключил ноутбук, думал утром поставлю тему, но не запустился linux. Когда устанавливал linux, имя диска с Windows11 - nvme0n1, а с linux nvme1n1. Сначала использовал GRUB, но он, когда bios менял названия дисков местами, просто не запускал ничего, пытался понять как поставить инициализацию GRUB с помощью UUID, но не разобрался, поэтому стал использовать systemd-boot, fstab указан с UUID, arch.conf

title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
option rw root=UUID=мой-UUID-диска

после этого linux стал запускаться всегда, но виснет и отваливается практически сразу после ввода пароля пользователя, я после этого сразу перезапускался и заходил из под live-usb и замечал закономерность, что это происходит всегда когда имена меняются местами и диск с linux теперь был с именем nvme0n1, а когда имя nvme1n1 он работает нормально и ничего не отваливается

попытался решить проблему при помощи udev-правил в файле по пути

/etc/udev/rules.d/99-my-nvme.rules

прописал

KARNEL=="nvme[0-9]n[0-9]p1", ENV{ID_FS_UUID}=="вписал свой UUID от nvme1n1p1", NAME="nvme1n1p1"
KARNEL=="nvme[0-9]n[0-9]p2", ENV{ID_FS_UUID}=="вписал свой UUID от nvme1n1p2", NAME="nvme1n1p2"

перегружал, но это не помогло

Добавлено 08.10: 1)я переставил диски(поменял портами pci) 2)всё стёр, переформатировал, проверил через систему на втором диске (Windows11), переустановил arch 3)всё таки поставил grub с uuid, а не systemd-boot

вроде пока что без происшествий, если проблема не появится снова, то укажу как решённую



Последнее исправление: ammethyst (всего исправлений: 3)
Ответ на: комментарий от Khnazile

да. сейчас снова пытался загрузится, но получилось так, что когда имя диска было nvme1n1 выдало

Reached target Basic System.
Starting Network Manager…
Starting User Login Management…
(2 of 2) A start job is running for User Login Management (31s / 1min 31s)
[36.400435] nvme1n1: Read(0x2) @ LBA 10876416, 16 blocks, Host Aborted Command (sct 0x3 / sc 0x71)
[36.482242] 1/0 error, dev nvmelni, sector 18876416 op 0x8: (RERD) flags 8x83788 phys_seg 2 prio class 2
[36.406350] nvmelni: Read(0x2) @ LBA 23878720, 16 blocks, Host Aborted Command (sct 0x3 / sc 0x71)
[36.400057] 1/0 error,dev nvme1n1, sector 23070728 op 8x0:(READ) flags 0x83700 phys_seg 2 pric class 2
[36.489116] nvmeln1: Read(0x2) @ LBA 27265824, 8 blocks, Host Aborted Command (sct 0x3 / sc 0×71)
[36.410080] 1/0 error, dev nvmeln1, s
35.4120221 1/0 error,
dev nvmeini
1, sector 27265024 op 0x0:(READ) flags 0x83700 phys_seg 1 pric class 2
36.4110581 nvmeln1: Read(0x2) @ LBA 27265144, 8 blocks,
, Host Aborted Command (sct 0x3 / sc 0x71)
1. sector 27265144 op 0x0:(READ) flags 0x83700 phys_seg 1 prio class 2
36.4129921 nvmeln1: Read(0x2) @ LBA 31459328, 128 blocks,
s, Host Aborted Command (sct 0x3 / sc 0x71)
36.4139361 1/0 error,
dev nvmein1.
1, sector 3
or 31459328 op 0x0:(READ) flags 0x83700 phys_seg 15 prio class 2
36.414916] nvme1n1: Read(0x2) @ LBA 1265096784, 256 blocks, Host Aborted Command (sct 0x3 / sc 0x71)
35.4159041 1/0 error,

и

[FAILED] Failed to start User Login Management.
See'systemctl status systemd-logind.service" for details.
(FAILED] Failed to start Hetwork Manager.
See'systeacti status HetworkManager.service" for details.
[
) Reached target Metwork.
[FAILED] Failed to start User Login Management.
See
'systemctl status systemd-logind.service" for details.
[FAILED] Failed to start Permit User Sessions.
See"systemct1 status systemd-user-sessionsservice' for details.
[OK] Reached target Multi-User System.
(FAILED] Failed to start Sisple Desktop Display Monager.
See'systemct1 status sddm service" 1 for details.
Reached target Graphical Interface.
36.88196B1 Buffer
er 1/0 error on dev nvmein1p2, logical block 1, lost async page write
36.0850303 Buffer 1/0 error on dev nvmelnip2, logical block 1143, lost async page write
36.8984373 Buffer 1/0 error on dev nvmeinip2, logical block 9463, lost async page write
36.898115] Buffer 1/0 error on dev nymeln1p2, logical block 9554, lost async page write
36.8915321 Buffer 1.
er 1/0 error on dev nymein1p2, logical block 157286401, lost async page write
36.892745) Buffer I/0 error
on dev nvmeln1p2.
2. logical block 157286416, lost async page write

и он теперь запустился и вроде нормально работал и когда имя было nvme0n1, но запускался без нижних ошибок

ammethyst
() автор топика
Ответ на: комментарий от vbcnthfkmnth123

извините, что написал коротко, над arch.conf, но я прописал fstab с UUID. перепроверял несколько раз

ammethyst
() автор топика

ENV{ID_FS_UUID}

Я бы попробовал зафиксировать имена самих контроллеров nvme0 и nvme1 через pcie device id

ENV{ID_VENDOR_ID}=="0781"
ENV{ID_MODEL_ID}=="5575"
ENV{ID_SERIAL_SHORT}=="XXXXXXXXXXXXXXXXXX"
cobold ★★★★★
()
Ответ на: комментарий от ammethyst

Проверяй всё, куда лазил кривыми ручками. Скопировал из твоих сообщений:

nvme1n1
nvmelnip2
nvmeinip2
nymeln1p2

Разницу видишь?

andytux ★★★★★
()
Ответ на: комментарий от ammethyst

Не печатать. Читать нужно, что он тебе там пишет.

andytux ★★★★★
()
Ответ на: комментарий от ammethyst

мне одному кажется что там ещё ошибки обращения к диску сыплются и тут проблема какая-то ещё кроме того что диски прыгают. Вот это вот:

nvme1n1: Read(0x2) @ LBA 10876416, 16 blocks, Host Aborted Command (sct 0x3 / sc 0x71)

Чтобы диски не прыгали, как тут уже и говорили, монтировать надо по UUID

The_Ketchup ★★
()
Ответ на: комментарий от cobold

вот это я не пробовал. обязательно чуть позже как домой вернусь попробую

ammethyst
() автор топика
Ответ на: комментарий от The_Ketchup

а файл fstab не для автоматического монтирования?

я указал что я настроил fstab с UUID

UUID=мой-UUID-от-nvme1n1p2 / ext4 rw,relatime 0 1
UUID=мой-UUID-от-nvme1n1p1 / vfat rw,relatime,fmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2
ammethyst
() автор топика
Ответ на: комментарий от vbr

Так это новый. Я его недавно купил и вот решил установить Arch. Не знаю как должно быть, но я догрузил smartmontools и при выводе пусто, не логов, не записей о количестве, всё по нулям. Хоть и понятно дело так себе показатель. так как ноут китайский, думаю, лучше махнуть диски местами, и всё таки переустановить

ammethyst
() автор топика
Ответ на: комментарий от The_Ketchup

ну с монтированием я долго всё перепроверял, единственное…а что разве для boot лучше тоже ext4 ?

ammethyst
() автор топика
Ответ на: комментарий от cobold

все равно ничего не вышло. после этого собирался удалить разделы и проверить диск через установленную на другом Windows11, махнуть pci и переустановить, но когда зашёл через cfdisk и собирался удалить разделы, то увидел, что они стали видны как тип Microsoft и писало снизу красным что устройство используется (Device is currently in use, repartitioning is probably a bad idea)

Не знаю что за фигня тут происходит, но кажется я не осилил с двумя дисками -_- . Большое спасибо вам, что уделили мне время

ammethyst
() автор топика

grub.cfg

root=PARTUUID=UUID твоего раздела
soomrack ★★★★★
()
Ответ на: комментарий от The_Ketchup

тут проблема какая-то ещё кроме того что диски прыгают

Из-за чего прыжки небось и начинаются. Первый диск протупливает и его место занимает второй )

GAMer ★★★★★
()
Ответ на: комментарий от ammethyst

I/O Error просто так в логах не появляется. В лучшем случае проблемы с соединением диска и материнской платы.

vbr ★★★★★
()

Полагаться на порядок определения что sdXX, что nvme0XX не стоит. Монтируй по UUID/PARTUUID/LABEL, если это обычный раздел, ну или по /dev/mapper/??? - если это LVM/dm_crypt

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)

Может ты просто в /etc/fstab записал алиасы из дев вместо uuid’ов

rtxtxtrx ★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.