Прямая связь с ядром. R E I S U B
В Linux SysRq — единственная прямая связь с ядром, которая работает всегда, даже если всё другое не работает.
Как использовать R E I S U B
Во-первых, в конфигурации ядра должно быть включено использование клавиши SysRq.
CONFIG_MAGIC_SYSRQ должно иметь значение Y.
Проверить можно командой:
~]# cat /proc/sys/kernel/sysrq
Если опция включена, то в ответ вернётся единица. Если вернётся ноль, то можно включить опцию:
~]# echo "1"> /proc/sys/kernel/sysrq
Зажимаем Alt + SysRq и с интервалом в 2 секунды нажимаем по очереди клавиши
R E I S U B
Каждая кнопка выполняет свою функцию. При такой комбинации происходит:
• unRaw - перехватывает управление мышью и клавиатурой у Х-сервера.
• tErminate - посылает SIGTERM всем процессам, кроме init.
• kIll - посылает SIGKILL всем процессам, кроме init.
• Sync - пытается синхронизировать все примонтированные файловые системы.
• Unmount - пытается перемонтировать все примонтированные файловые системы в режим read-only.
• reBoot - перезагрузка.
Иногда клавиша SysRq совмещена на клавиатуре с какой-то другой, например PrtScr/SysRq. При нажатии можем получить скриншот. Это можно обойти, тогда полная комбинация будет выглядеть:
Ctrl + Alt + SysRq + R E I S U B
В Linux SysRq — единственная прямая связь с ядром, которая работает всегда, даже если всё другое не работает.
Как использовать R E I S U B
Во-первых, в конфигурации ядра должно быть включено использование клавиши SysRq.
CONFIG_MAGIC_SYSRQ должно иметь значение Y.
Проверить можно командой:
~]# cat /proc/sys/kernel/sysrq
Если опция включена, то в ответ вернётся единица. Если вернётся ноль, то можно включить опцию:
~]# echo "1"> /proc/sys/kernel/sysrq
Зажимаем Alt + SysRq и с интервалом в 2 секунды нажимаем по очереди клавиши
R E I S U B
Каждая кнопка выполняет свою функцию. При такой комбинации происходит:
• unRaw - перехватывает управление мышью и клавиатурой у Х-сервера.
• tErminate - посылает SIGTERM всем процессам, кроме init.
• kIll - посылает SIGKILL всем процессам, кроме init.
• Sync - пытается синхронизировать все примонтированные файловые системы.
• Unmount - пытается перемонтировать все примонтированные файловые системы в режим read-only.
• reBoot - перезагрузка.
Иногда клавиша SysRq совмещена на клавиатуре с какой-то другой, например PrtScr/SysRq. При нажатии можем получить скриншот. Это можно обойти, тогда полная комбинация будет выглядеть:
Ctrl + Alt + SysRq + R E I S U B
Linux DRACUT
Dracut - это инструмент в Linux, который используется для создания и обновления образов инициализации (initramfs). Initramfs - это целевая система, которая загружается в оперативную память перед основной системой и используется для предварительной загрузки инициализации системы.
Основные команды Dracut:
1. dracut - основная команда для создания образа initramfs. Синтаксис команды:
~]# dracut [options] [initramfs]
Например,
~]# dracut -f /boot/initramfs-$(uname -r).img
создаст образ initramfs для текущего ядра и сохранит его в /boot.
2. dracut --add [module] - позволяет добавить дополнительные модули в образ initramfs. Модули могут использоваться для обработки различных задач при загрузке системы, например, драйверы, модули сети или файловой системы.
Например,
~]# dracut --add "modulename"
добавит модуль "modulename" в образ initramfs.
3. `dracut --omit [module] - позволяет исключить определенные модули из образа initramfs.
Например,
~]# dracut --omit "modulename"
исключит модуль "modulename" из образа initramfs.
4. dracut --no-compress - используется для создания несжатого образа initramfs. Это может быть полезно для отладки загрузки системы.
5. dracut --force - позволяет принудительно пересоздать образ initramfs, даже если он уже существует.
6. dracut --help - выводит справку по команде dracut со списком доступных опций.
Загрузка и использование образа initramfs может быть различным в зависимости от дистрибутива Linux. Обычно initramfs загружается автоматически при запуске системы, и вы можете изменять его содержимое, добавлять модули или настроить определенные параметры загрузки в файле конфигурации grub или другом инструменте загрузчика.
Dracut - это инструмент в Linux, который используется для создания и обновления образов инициализации (initramfs). Initramfs - это целевая система, которая загружается в оперативную память перед основной системой и используется для предварительной загрузки инициализации системы.
Основные команды Dracut:
1. dracut - основная команда для создания образа initramfs. Синтаксис команды:
~]# dracut [options] [initramfs]
Например,
~]# dracut -f /boot/initramfs-$(uname -r).img
создаст образ initramfs для текущего ядра и сохранит его в /boot.
2. dracut --add [module] - позволяет добавить дополнительные модули в образ initramfs. Модули могут использоваться для обработки различных задач при загрузке системы, например, драйверы, модули сети или файловой системы.
Например,
~]# dracut --add "modulename"
добавит модуль "modulename" в образ initramfs.
3. `dracut --omit [module] - позволяет исключить определенные модули из образа initramfs.
Например,
~]# dracut --omit "modulename"
исключит модуль "modulename" из образа initramfs.
4. dracut --no-compress - используется для создания несжатого образа initramfs. Это может быть полезно для отладки загрузки системы.
5. dracut --force - позволяет принудительно пересоздать образ initramfs, даже если он уже существует.
6. dracut --help - выводит справку по команде dracut со списком доступных опций.
Загрузка и использование образа initramfs может быть различным в зависимости от дистрибутива Linux. Обычно initramfs загружается автоматически при запуске системы, и вы можете изменять его содержимое, добавлять модули или настроить определенные параметры загрузки в файле конфигурации grub или другом инструменте загрузчика.
Linux initramfs. Основные команды
1. mkinitramfs: Эта команда используется для создания initramfs (Initial RAM Filesystem) из указанных файлов и директорий. Например, чтобы создать initramfs из текущего каталога, можно выполнить следующую команду:
~]# mkinitramfs -o /boot/initramfs.img
2. lsinitramfs: Команда lsinitramfs позволяет вам просматривать и извлекать содержимое initramfs. Например:
~]# lsinitramfs /boot/initramfs.img
3. cpio: Cpio - это утилита для создания архивов и извлечения файлов. Она также может использоваться для манипуляции с initramfs. Например, чтобы извлечь файлы из initramfs, можно выполнить следующую команду:
~]# cpio -id < /boot/initramfs.img
4. find: Утилита find позволяет находить файлы по различным критериям. Она также может использоваться для поиска файлов в initramfs. Например, чтобы найти все файлы с расширением .ko в initramfs, можно выполнить следующую команду:
~]# find /boot/initramfs.img -name "*.ko"
5. gzip: Gzip - это утилита для сжатия и разжатия файлов. Она может использоваться для сжатия initramfs. Например, чтобы сжать initramfs в gzip формат, можно выполнить следующую команду:
~]# gzip /boot/initramfs.img
6. dd: Утилита dd может использоваться для записи initramfs на блочное устройство. Например, чтобы записать initramfs на USB-накопитель, можно выполнить следующую команду:
~]# dd if=/boot/initramfs.img of=/dev/sdb
Для получения подробной информации и других команд рекомендуется обратиться к документации.
1. mkinitramfs: Эта команда используется для создания initramfs (Initial RAM Filesystem) из указанных файлов и директорий. Например, чтобы создать initramfs из текущего каталога, можно выполнить следующую команду:
~]# mkinitramfs -o /boot/initramfs.img
2. lsinitramfs: Команда lsinitramfs позволяет вам просматривать и извлекать содержимое initramfs. Например:
~]# lsinitramfs /boot/initramfs.img
3. cpio: Cpio - это утилита для создания архивов и извлечения файлов. Она также может использоваться для манипуляции с initramfs. Например, чтобы извлечь файлы из initramfs, можно выполнить следующую команду:
~]# cpio -id < /boot/initramfs.img
4. find: Утилита find позволяет находить файлы по различным критериям. Она также может использоваться для поиска файлов в initramfs. Например, чтобы найти все файлы с расширением .ko в initramfs, можно выполнить следующую команду:
~]# find /boot/initramfs.img -name "*.ko"
5. gzip: Gzip - это утилита для сжатия и разжатия файлов. Она может использоваться для сжатия initramfs. Например, чтобы сжать initramfs в gzip формат, можно выполнить следующую команду:
~]# gzip /boot/initramfs.img
6. dd: Утилита dd может использоваться для записи initramfs на блочное устройство. Например, чтобы записать initramfs на USB-накопитель, можно выполнить следующую команду:
~]# dd if=/boot/initramfs.img of=/dev/sdb
Для получения подробной информации и других команд рекомендуется обратиться к документации.