Збільшити час очікування диска під час завантаження за допомогою Linux / Systemd


11

У мене є машина з великою кількістю дисків і додатковий контролер SAS в режимі HBA. Це, мабуть, змушує Linux думати щонайменше 8-10 секунд один раз у initramfs до того, як диски фактично з’являться. Час очікування на виявлення диска становить 10 секунд. Це призводить до того, що BTRFS / MDADM / і т. Д. Не змогли встановити RAID1, який у мене є в моїй системі, перекинувши мене на аварійну оболонку, звідки я можу фактично змонтувати диски і продовжувати просто добре.

Моє запитання: як я збільшую цей час очікування під час завантаження з 10 секунд? Це в systemd? це в удев? десь в іншому місці? Я не впевнений, з чого почати шукати, і гуглінг щодо цієї проблеми, здається, призводить до того, що люди, які бажають збільшити таймаут вводу / виводу або інші (scsi / lun / тощо) таймаути, але я цього не шукаю.


1
IDK також, але, можливо, ця проблема із затримкою завантаження у багато маршрутів пов’язана або може призвести до вашого рішення?
rickhg12hs

@ rickhg12hs Я спробував параметри udev, згадані в дописі, однак все одно, здається, чекаємо 10 секунд на перший пристрій, а потім періодично потрапляю в аварійну оболонку, коли вона минає поріг .. Дякую за підказку, хоча, я буду спробуйте загадати ще більше з udev ..
Алекс

Я досі не зрозумів цього, я здогадуюсь, що це параметр компіляції ядра, але я ще не маю глибокого перенаправлення основних документів для udev, тож, можливо, я щось пропускаю. Якщо у когось є якісь ідеї, я дуже відкритий для того, щоб їх почути, зараз я просто ніколи не перезавантажую сервер, крім випадків, коли я на місці ..
Alex

Чи справді накопичувачі крутяться під час POST? Чи вистачає у вас сили для того, щоб усі одразу закрутилися? Можливо, вам знадобиться налаштувати свій HBA для поетапного спінупу, якщо він має такий варіант (будь-який гідний).
Майкл Хемптон

@MichaelHampton Так, накопичувачі працюють і відображаються в інструменті налаштування SAS та BIOS, у мене є джерело живлення 1000 ВГА EVGA, диски розкладені по 2-х різних рейках, але tbh він повинен мати достатню потужність, другий процесор Xeon я додав також чудово працює, і я малюю близько 200-300 Вт від стіни, коли все працює і працює. Це схоже на модуль ядра для HBA, що висить протягом 5+ секунд у початковій фазі завантаження, в результаті чого всі інші диски відображаються набагато пізніше також.
Алекс

Відповіді:


3

Я його нарешті знайшов! Звичайно, але простий параметр ядра, знайдений тут https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html

Параметр, який я спеціально шукав rootdelay, я вже намагався, rootwaitале, мабуть, цього було недостатньо, оскільки все-таки перервав очікування через 10 секунд. Тепер він фактично не чекає вказаних повних 30 секунд, а лише приблизно 10-15 секунд, залежно від того, скільки часу потрібно, щоб мої диски відображалися, тому налаштування дійсно високого значення, здається, не зашкодить, хоча я лише встановити 30 для мого випадку використання, який, здається, повністю вирішив проблему!

Ви можете додати його до параметрів завантаження ядра в Grub або 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]

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.