(продолжение, начало тут)

/proc/sys/kernel/
Эта директория содержит различные конфигурационные файлы, которые непосредственно влияют на работу ядра. Некоторые наиболее важные файлы:
acct- контроллирует процесс ведения журнала на основе учета доли свободного места в файловой системе, содержащей журнал. По умолчанию, файл выглядит следующим образом: 4 2 30
Первое значение определяет процент свободного пространства, необходимого для продолжения процесса ведения журнала, второе значение устанавливает порог в процентах, по достижении которого процесс ведения журнала приостанавливается. Третье значение задает интервал в секундах, через который ядро опрашивает файловую систему для проверки необходимости приостановки или возобновления ведения журнала.
Важно!
Если в системе работают приложения, которым важна высокая безопасность и которые были запущены при отключенной защите Exec Shield, то после включения Exec Shield они должны быть перезапущены.
Примечание:
ctrl-alt-del- определяет будет ли комбинация Ctrl - Alt - Delete перезагружать компьютер (1) или нет (0).
domainname- отвечает за доменное имя системы, такое какexample.com
exec-shield- отвечает за функцию ExecShield ядра (не все дистрибутивы поддерживают эту возможность - прим. перев.), которая обеспечивает защиту от некоторых видов атак переполнения буфера. Для данного виртуального файла возможны два значения:0- отключить Exec Shield,1- Включает Exec Shield (значение по умолчанию).
Важно!
Если в системе работают приложения, которым важна высокая безопасность и которые были запущены при отключенной защите Exec Shield, то после включения Exec Shield они должны быть перезапущены.
exec-shield-randomize -Включает дополнительную рандомизацию размещения различных объектов в памяти. Это серьезно затрудняет возможность поиска атакующим местонахождения программ и демонов в памяти. Каждый раз, когда программа или демон запускается, она помещается каждый раз в новое место в памяти. Для данного файла имеются следующие возможные значения:0- возможность отключена (полезно для отладки приложений),1- возможность включена (это значение по умолчанию)
Примечание:
Параметр exec-shield также должен быть установлен в 1 для того, чтоб exec-shield-randomize мог работатьhostname- определяет имя хоста.
hotplug- определяет утилиту, которая будет использоваться при "горячем" подключении устройств для их конфигурировании. Чаще всего это используется для работы с USB и Cardbus PCI. Значение по умолчанию/sbin/hotplugдолжно изменяться только в том случае, если вы тестируете новую программу для данной роли.
modprobe- устанавливает местонахождение программы, используемой для загрузки модулей ядра, которую вызываетkmod. Значение по умолчанию:/sbin/modprobe.
msgmax- Устанавливает максимальный размер любого сообщения, отправляемого одним процессом другому. Значение по умолчанию8192байта. Будьте осторожны при повышении этого значения, поскольку очередь сообщений между процессами хранится в памяти ядра, которая не может быть помещена в раздел подкачки. Любое увеличениеmsgmaxповышает требования к наличию оперативной памяти в системе.
msgmnb- устанавливает максимальное количество байтов в одной очереди сообщений. По умолчанию равно16384.
msgmni- устанавливает максимальное количество идентификаторов очереди сообщений. По умолчанию равно16.
osrelease- показывает номер версии загруженного ядра Linux. Этот файл может быть изменен только путем изменения исходного кода ядра и его пересборки.
ostype- отображает тип операционной системы. По умолчанию его значение -Linuxи оно может быть изменено только путем изменения исходного кода ядра и его пересборки.
overflowgidandoverflowuid- Определяет фиксированные идентификаторы группы и пользователя для использования системными вызовами на архитектурах, которые поддерживают только 16-битные идентификаторы групп и пользователей.
panic- Определяет количество секунд, которые ядро ждет до перезагрузки после kernel panic По умолчанию имеет значение0, которое отключает автоматическую перезагрузку.
printk- Этот файл определяет различные настройки, связанные с выдачей сообщений или ведением лог-файлов об ошибках. Каждое сообщение об ошибке, имеет идентификатор (LogLevel), отражающий уровень ее серьезности. Эти идентификаторы имеют следующие значения (меньшее значение - бОльшая серьезность):
0 - (kernel emergency) - аварийное состояние, система больше не функционирует. 1 - (kernel alert) - тревожное сообщение. Немедленно должны быть приняты меры по устранению ситуации. 2 - (kernel critical) - сообщение о критическом состоянии ядра. 3 - (kernel error) - сообщение об ошибке в ядре. 4 - (kernel warning) - предупреждение ядра. 5 - (kernel notice) - уведомление ядра о нормальном, но важном состоянии. 6 - (kernel info) - информационное сообщение ядра. 7 - (kernel debug-level messages). - сообщения отладки ядра. В данном файле находятся четыре значения:
6 4 1 7
Каждое из этих значений определяет различные правила, относящиеся к сообщениям об ошибках. Первое значение называется console loglevel и определяет наименьший приоритет сообщений выводимых на консоль системы (т. е. сообщения с более высоким приоритетом (и меньшим числом LogLevel будут попадать на консоль - прим. перев.). Второе значение (default_message_level) устанавливает значение по умолчанию для сообщений, LogLevel которых явно не указан. The third value sets the lowest possible loglevel configuration for the console loglevel. Третье значение (minimum_console_loglevel) определяет минимально возможный LogLevel для консоли. Последнее значение (default_console_loglevel) представляет собой величину по умолчанию для первого параметра.
random/- данная директория содержит ряд параметров, относящихся к процессу генерации ядром случайных чисел
rtsig-max- определяет максимальное число POSIX-сигналов реального времени (POSIX real-time signals), которые могут находится в очереди в данное время. Значение по умолчанию1024.
rtsig-nr- содержит текущее количество POSIX-сигналов реального времени, находящихся в очереди ядра.sem- определяет параметры семафора в ядре системы. Семафор - это объект межпроцессного взаимодействия UNIX System V (System V IPC object), который используется для контроля конкретного процесса.
shmall- устанавливает общий объем разделяемой памяти, который может быть использоваться в системе в данное время (в байтах). По умолчанию его значение равно2097152.
shmmax- устанавливает максимально возможное значение сегмента разделяемой памяти размером, который позволяет использовать ядро (в байтах). По умолчанию, это значение33554432. Тем не менее, ядро поддерживает гораздо большее значение, чем указанное.shmmni- устанавливает максимальное число сегментов разделяемой памяти для всей системы, в байтах. По умолчанию это значение равно4096.
sysrq- активирует «магические» сочетания клавиш System Request Key, если эта величина имеет значение, отличное от нуля0(по умолчанию отключено). Данные сочетания позволяют посылать сигналы ядру системы без ввода какого-либо пароля. Например, они позволяют немедленно выключить или перезагрузить систему, синхронизировать все смонтированные файловые системы или вывести важную информацию на консоль. Более подробно об этих сочетаниях клавиш написано ниже в конце данного поста.
Предупреждение!
Включение данной возможности представляет угрозу безопасности системе, поскольку предоставляет злоумышленнику полный доступ к системе. По этой причине по умолчанию она отключена. За дополнительной информацией обратитесь к файлу
/usr/share/doc/kernel-doc-/Documentation/sysrq.txt sysrq-key- определяет код клавиши для системы System Request Key (84по умолчанию).
sysrq-sticky- определяет как будет система «магических клавиш» реагировать на нажатие комбинации клавиш. Допускаются следующие значения:
0 - Alt + SysRq + <код запроса> должны быть нажаты одновременно. Это значение по умолчанию. 1 - Alt + SysRq должны быть нажаты одновременно, но системный код запроса может быть нажат в течение времени (в секундах), указанных в файле /proc/sys/kernel/sysrq-timer (значение по умолчанию 10). tainted- показывает количество загруженных модулей ядра с лицензией, отличающейся от GPL. Возможные значения (приведены не все возможные значения, полный их список можно найти в файле /usr/src/linux/Documentation/sysctl/kernel.txt - прим. перев.):
0 - модули с лицензией отличной от GPL не загружены. 1 - загружен по крайней мере один модуль с не-GPL лицензией (в том числе модули без каких-либо лицензий). 2 - по крайней мере один модуль загружен командой insmod -f . threads-max - устанавливает максимальное количество потоков (нитей), используемых ядром, значение по умолчанию 2048. version - отображает дату и время, когда последней компиляции ядра. Первое поле в этом файле, например, #3 указывает сколько раз ядро собиралось из исходников.«Магические» клавиши Alt + SysRq +
(самая свежая информация по данному вопросу находится в файле /usr/src/linux/Documentation/sysrq.txt - прим. перев.)
Чтобы послать соответствующий сигнал ядру, необходимо нажать Alt + SysRq + . представляет собой одну из следующих клавиш:
r- отключение «сырого» режима работы клавиатуры и переключение его XLATE (ограниченный режим работы клавиатуры, игнорирующий наличие клавиш-модификаторов таких как Alt, Ctrl или Shift).
k- убивает все активные процессы в данной виртуальной консоли. Данный сигнал также называется Secure Access Key (SAK) и часто используется для дополнительной проверки того, что приглашение для ввода пароля является подлинным, а не представляет собой троянскую программу предназначенную для сбора логинов и паролей.
b- инициирует перезагрузку компьютера ядром системы без попытки предварительного размонтирования файловых систем и/или синхронизации дискового кэша (по сути это равносильно тому, что вы нажимаете reset, только выполняется это «софтовым» способом - прим. перев.).
o- то же, что и предыдущее, но с выключением компьютера.
c- инициирует «поломку системы» (system crash).
s- попытаться синхронизировать диски, подключенные к системе.
u- попытаться и размонтировать всех файловых систем или перемонтировать их в режим «только-чтение»
p- выводит все флаги и регистры на консоль.
t- выводит список процессов на консоль.
m- выводит на консоль статистику использования памяти.
0-9- устанавливает уровень ведения журнала для консоли.
e- посылает всем процессам, за исключениемinit,сигнал SIGTERM.
i- посылает всем процессам, за исключениемinit, сигнал SIGKILL.
l(малая L)- уничтожает все процессы (включая init) c использованием SIGKILL.После использования данной комбинации клавиш система больше не работоспособна.
f- вызовет oom_killer, для процессов чрезмерно потребляющих память - дополнение перев.
h- отображает текст подсказку по использованию «магических клавиш» (в принципе, любая из клавиш, за исключением вышеперечисленных вызывает выдачу справочной информации, но h проще запомнить - прим. перев.).
(продолжение следует)
Отличная документация! Так держать!
ОтветитьУдалитьСпасибо.
ОтветитьУдалитьПока "так держать" не совсем получается, потому что нагрузка по основной работе большая ;).
Про ctrl-alt-del совершенно неправильно. 0 это graceful restart, а больше 0 немедленная перезагрузка.
ОтветитьУдалитьsowgag(sowgag@гуглпочта)