Будет ли Linux работать правильно, когда корневой раздел полностью заполнен?

Допустим, мое приложение работает на другом разделе и имеет достаточно места. А как насчет ядра Linux? Будет ли он продолжать работать, даже если, например, у него не будет места для записи логов?

Изменить: добавив еще немного информации. Все находится в корневом разделе, также /tmp, /var, даже /usr /bin, /usr /sbin.

На отдельном разделе находится только долго работающее Java-приложение, которое также записывает журналы в тот же (пустой) раздел.

Есть ли проблемы, которые могут возникнуть и повлиять на приложение?

1 ответ1

1

С ядром все будет хорошо.

Ядро на самом деле не пишет логи напрямую, а передает логи процессу пользователя. Я думаю, что это либо через драйвер устройства или сокета. Вот почему нужен syslog и почему также необходим механизм сортировки того, что исходит от ядра - ядро просто выплевывает журналы и ожидает, что приложение пользовательского пространства сделает что-нибудь после этого.

Худшее, что может произойти, это процесс пользовательского пространства, который не записывает то, что ему дало ядро. Вот почему в системе, которую вы хотите внимательно наблюдать, вы хотите, чтобы она периодически записывала строки сердцебиения в ваш журнал (например, «--- MARK ---» или что-то в этом роде). Я полагаю, что ядро резервирует немного памяти для себя, чтобы постоянно хранить текущее сообщение журнала, которое оно пытается передать, оно не записывает непосредственно на диск.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .