Я маю сторожового собаку?


11

Досить часто під час перезавантаження я отримую таке повідомлення про помилку:

kernel: watchdog watchdog0: watchdog did not stop!

Я намагався дізнатися більше про сторожову собаку, роблячи man watchdog, але в ній написано відсутність ручного введення. Я спробував yum list watchdogі виявив, що це не встановлено. Однак, переглядаючи /devкаталог, я фактично знайшов двох сторожових собак:

watchdog і watchdog0

Мені цікаво. Я фактично є власником сторожових собак? Чому ядро ​​скаржиться, що воно не зупинилося, коли я перезавантажуюсь?

Відповіді:


7

Більшість сучасних апаратних засобів для ПК включає засоби таймеру. Детальніше про них ви можете прочитати тут за допомогою wikipedia: Таймові сторожі . Також з документів ядра Linux:

витяг - https://www.kernel.org/doc/Documentation/watchdog/watchdog-api.txt

Таймер сторожового часу (WDT) - це апаратне забезпечення, яке може скинути комп'ютерну систему у разі несправності програмного забезпечення. Ви, мабуть, це вже знали.

Зазвичай демон простору користувачів повідомляє драйвера сторожового ядра ядра через спеціальний файл / dev / watchdog про те, що користувальницький простір все ще живий, через регулярні проміжки часу. Коли таке повідомлення трапляється, водій зазвичай повідомляє апаратному сторожовому собаці, що все в порядку, і що сторожовий собака повинен почекати ще трохи часу, щоб скинути систему. Якщо помилка простору користувача (помилка оперативної пам’яті, помилка в ядрі, що завгодно), сповіщення припиняється, а апаратний сторожовий дог скидає систему (спричиняючи перезавантаження) після настання тайм-ауту.

API сторожової служби Linux - це досить спеціальна конструкція, і різні драйвери реалізують різні, а іноді і несумісні її частини. Цей файл - це спроба документувати існуюче використання та дозволяє майбутнім авторам драйверів використовувати його як довідник.

Це ТАК і відповіді під назвою " Хто освіжає сторожову службу обладнання в Linux?" , охоплює зв'язок між ядром Linux та апаратним сторожовим таймером.

А як із сторожовим пакетом?

Опис RPM робить це досить зрозумілим, IMO. watchdogДемон може або виступати в якості програмного забезпечення сторожового або може взаємодіяти з апаратною реалізацією.

витяг з опису RPM

Програма сторожової служби може використовуватися як потужний демон сторожового програмного забезпечення або може бути поперемінно використаний з апаратним пристроєм сторожового дог, таким як інтерфейс драйвера сторонніх пристроїв IPMI до резидентного контролера управління базовою дошкою (BMC). сторожовий періодично пише в / dev / watchdog; інтервал між записом в / dev / watchdog настроюється за допомогою параметрів у файлі sysconfig файлу сторожової служби.

Цей файл конфігурації також використовується для встановлення сторожової собаки, яка використовуватиметься як апаратний сторожовий собака замість роботи програмного забезпечення за замовчуванням. У будь-якому випадку, якщо пристрій відкрито, але не записано на нього протягом налаштованого періоду часу, закінчення терміну дії таймера викликає машинне перезавантаження. Працюючи в якості сторожової програми програмного забезпечення, можливість перезавантаження буде залежати від стану машини та перебоїв.

Під час роботи в якості апаратної сторожової собаки машина переживе жорсткий перезавантаження (або будь-які дії, налаштовані на виконання після закінчення терміну дії таймера), ініційовані BMC.


Дякуємо, доктор ядра корисний. Для уточнення, чи означає це, що ядро ​​володіє сторожовою собакою, а користувач, я, не володію ним, оскільки я не встановив жодного?
Переповнення питання

1
@QuestionOverflow - наскільки я розумію, система забезпечує охорону (це, по суті, апаратне забезпечення). Тому ядро ​​володіє ним і керує цим обладнанням так само, як і будь-яке інше обладнання в системі. Ви користувач взаємодієте з ним через ядро, але не володієте ним жодними офіційними можливостями. Ви просто споживач цього. WDT використовуються як вбудований захист, якщо запущене програмне забезпечення зв’язує апаратне забезпечення непередбачуваними способами. Вони є механізмом безпеки, який дозволяє системі відновлюватись.
slm

Я бачу .. Але, здається, я в змозі безпосередньо з нею взаємодіяти, якщо встановити сторожову собаку. Здається, що існує конфігураційний файл, /etc/watchdog.confякий безпосередньо може змінити його поведінку.
Переповнення питання

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