Mam maszynę z dużą ilością dysków i dodatkowy kontroler SAS w trybie HBA. Wydaje się, że powoduje to, że Linux myśli przynajmniej raz na 8-10 sekund w initramfs, zanim dyski się pojawią. Limit czasu wykrywania dysku wynosi 10 sekund. Powoduje to, że BTRFS / MDADM / etc nie może zamontować RAID1, który mam w swoim systemie, upuszczając mnie do awaryjnej powłoki, z której faktycznie mogę zamontować dyski i kontynuować wszystko dobrze.
Moje pytanie brzmi: jak zwiększyć ten limit czasu przy rozruchu z 10 sekund? Czy to jest systemd? czy to jest w udev? gdzieś indziej? Nie jestem pewien, od czego zacząć, a googlowanie na temat tego problemu wydaje się przynosić ludziom, którzy chcą zwiększyć limit czasu we / wy lub inne (scsi / lun / etc), ale nie szukam tego.
Odpowiedzi:
Wreszcie to znalazłem! Jest to oczywiście prosty parametr jądra, który można znaleźć tutaj https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html
Parametr, którego konkretnie szukałem
rootdelay
, to już próbowałem,rootwait
ale najwyraźniej to nie wystarczyło, ponieważ nadal przerywało oczekiwanie po 10 sekundach. Teraz tak naprawdę nie czeka pełnych 30 sekund, ale tylko około 10-15 sekund, w zależności od tego, ile czasu zajmuje wyświetlenie się moich dysków, więc ustawienie naprawdę wysokiej wartości nie wydaje się boleć, chociaż ja tylko zestaw 30 dla mojego przypadku użycia, który jak dotąd wydaje się całkowicie rozwiązać problem!Możesz dodać go do parametrów rozruchowych jądra w Grub lub systemd-boot.
Grub: / etc / defaults / grub ->
GRUB_CMDLINE_LINUX_DEFAULT="rootdelay=30 quiet"
systemd-boot: /boot/loader/entries/yourentry.cfg ->
options rootdelay=30 [other options]
źródło