Як змінити тайм-аут у systemctl


14

Коли я завантажую свою систему Debian, її запуск зависає приблизно 2 хвилини на лінії:

Loading, please wait...
[    5.191043] systemd-fsck[129]: /dev/mmcblk0p2: clean, 234192/873120 files, 2335263/3491328 blocks
[    6.645242] intel_rapl: no valid rapl domains found in package 0
[    6.643682] systemd-fsck[222]: fsck.fat 3.0.27 (2014-11-12)
[    6.664844] intel_rapl: no valid rapl domains found in package 0
[    6.660702] systemd-fsck[222]: /dev/mmcblk0p1: 3 files, 33/130812 clusters
[    **] A start job is running for LSB: Raise network interf...38s / no limit)

Врешті-решт, вона відмовляється від підвищення мережевого інтерфейсу та продовжує завантажувати.

Питання: Як я можу змінити використаний тайм-аут systemctl, щоб через 15 секунд він перестав намагатися підняти мережевий інтерфейс?

Додаткова інформація: джерелом проблеми є використання Wi-Fi USB-ключа на цій машині. Іноді ключик є, іноді - ні. Коли ключ не підключений, я очікую, що мережевий інтерфейс не буде піднятий, і я просто не хочу занадто довго чекати.

Відповіді:


9

У мене була подібна проблема, і я чухав голову через відсутність результатів Google (після того, як кілька разів опинився на цій сторінці), тому я вирішив просто прочитати, як systemdпрацює тут .

Врешті-решт я зрозумів, що networkingце насправді SysV-скрипт init ( /etc/init.d/networking), який перетворюється на systemdслужбу під час виконання ( /run/systemd/generator.late/networking.service), тому ви не можете просто змінити існуючий сценарій.

Натомість вам потрібно перезаписати його з файлом, наприклад /etc/systemd/system/networking.service.d/reduce-timeout.conf, у вашому випадку, що містить:

[Service]
TimeoutStartSec=15

7

У системі, на якій працює Debian Jessie, я зміг додати наступний код до файлу, розташованого за адресою /lib/systemd/system/networking.service.d/network-pre.conf

[Service]
TimeoutStartSec=15

Це змінило "без обмеження" на обмеження 15 секунд, зробивши завантаження системи набагато швидшим, якщо мережа відключена.

Створення файлу в системі /etc/systemd/system/networking.service.d/не вплинуло на цю систему, тому я відредагував існуючий файл у /lib/systemd/system/networking.service.d/. Якщо цей каталог порожній, створення нового .conf-файлу з кодом, наведеним вище, має працювати.

Не впевнений, чому це інше, або якщо це навіть правильний спосіб налаштувати таку річ.


це рішення спрацювало і для мене. Прийнятого не зробили.
Моріц

AFAIK /lib/systemd/...призначений як для оригінальних сценаріїв, так і /etc/systemd/...для локальних змін, тому я не впевнений, чому він не працює для вас. Я теж на Джессі.
DuBistKomisch

/lib/systemd/system/networking.serviceміститься в розтяжці таймаут 5 хв !!
Філіп Гачуд

5

У мене була подібна проблема, і виявляється, моя система намагалася підключитися до Wi-Fi. Моє рішення включало зміну цієї лінії в / etc / network / interface:

auto wlan0

до:

allow-hotplug wlan0

це добре працювало для моєї плати Asus P5Q, яка має чотири NIC (важко знати, який із чотирьох присвоєно et0). Я змінився auto eth0на allow-hotplug eth0\ n allow-hotplug eth1\ n allow-hotplug eth2\ nallow-hotplug eth3
Каутерит

1

Це проблема в мережевих сценаріях Debian - вони, очевидно, чекають появи всіх інтерфейсів і не мають поняття "динамічно з'являються" інтерфейси (як systemd-networkdце робиться).

У вас є два рішення. Перше рішення - зменшити час очікування конфігурації. Однак, як видно з результатів, які ви опублікували ( ...38s / no limit), systemd не накладає жодних тайм-аутів при запуску мережі. Отже, це те, що вам потрібно налаштувати в самих сценаріях Debian.

Друге рішення - використовувати більш сучасні інструменти для налаштування вашої мережі (наприклад, NetworkManager), які підтримують інтерфейси, що динамічно з’являються. Зауважте, що тут systemd-networkdне буде багато користі, оскільки він не має інтегрованої підтримки мереж WLAN.


Дякую Intelfx за вашу відповідь. Будь-який висновок щодо того, як налаштувати тайм-аут у systemdспецифічних сценаріях Debian? Будь-який вказівник на якесь рішення буде дуже вдячний! (Я багато часу витрачала на гуглінг та емпірично возився з варіантами, поки що не досяг успіху)
Джалі

@Jealie: Я ніколи не використовував Debian або будь-які його похідні, тому не можу вам тут допомогти, вибачте. Було б краще, якщо ви додали тег "debian" до свого запитання, але ви відхилили мою
редакцію,

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