Возможно, можно выполнить одно из следующих действий:
% cat /proc/version
Linux version 2.6.35.14-106.fc14.x86_64 (mockbuild@x86-09.phx2.fedoraproject.org) (gcc version 4.5.1 20100924 (Red Hat 4.5.1-4) (GCC) ) #1 SMP Wed Nov 23 13:07:52 UTC 2011
- или -
uname -a
Linux grinchy 2.6.35.14-106.fc14.x86_64 #1 SMP Wed Nov 23 13:07:52 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
Если Вы не осторожны относительно того, сколько входа произвело Вашу программу, генерирует, можно все еще заполнить диск несмотря на не создание больше чем одного файла журнала, вызвав все виды проблем:
Если выполнено как корень, можно буквально заполнить диск, так как это обходит квоты. Некоторые файловые системы также резервируют определенное минимальное количество свободного пространства для корня, для предотвращения ниже проблем.
Если файловая система полна, Вы не можете даже создать временный файл на диске. Если файловая система, которую Вы заполняете, также где некоторые Ваши общие временные жизни пространства (/tmp
, /usr/tmp
, /var/tmp
) программы, пытающиеся использовать то пространство, вероятно, умрут при выполнении или не запустятся если нет.
Программы, которые отказывают, когда это происходит, не отбросят ядра при установке системы для разрешения этого. Это может мешать уменьшать чувствительность тех программ к условиям недостаточного пространства на диске, так как она мешает обнаруживать определенный путь выполнения кода, который разрушил программу.
Можно работать logrotate
наряду с Вашей программой для снижения риска этого.
logrotate
не является на 100% надежным. Это обычно работает как задание крона, поэтому при заполнении диска между два cron
выполнения, проблема не будет исправлена до logrotate
следующие запуски.
stderr должен уже быть зарегистрирован к .xsession-errors
, по крайней мере, на некоторых дистрибутивах Linux.
Конечно, я предполагаю, что Вы только говорите о графических логинах.