Полезные советы по Linux

Полезные советы по Linux Давненько я что-то не писал полезных советов. А их тут просто вагон и маленькая тележка! Ну что же, тогда начнем этот вагон разгружать.:)
1. Что за файл программа изменила?

Если вам надо узнать, какие файлы изменила программа (в текущей директории), когда она запустилась, перед запуском программы наберите команду "touch *" (без кавычек). Это изменит время создания файлов на текущее. Запустите программу. Затем посмотрите на время создания файлов. Программа модифицировала те файлы, у которых это время изменилось.

2. Сделайте ваши файлы и директории защищенными.
Используйте команду "chattr +i имя_файла_или_директории" из-под root для того, чтобы сделать файлы и директории неприкасаемыми для команд типа rm и т.д. Даже для root-а. Отменить это можно так: chattr -i имя

3. Увеличение скорости своп-диска
Попробуйте расположить свой своп-диск ближе к началу вашего IDE диска.
Начало жесткого диска физически расположено на внешней части цилиндра. Головка чтения/записи в этом случае сможет покрыть большую область за один оборот диска. Это значит, что может быть записано/считано больше данных за один оборот.
На тестовой системе разница составила 3MB/сек, в зависимости от местоположения логического диска на IDE устройстве. Тестирование можно провести следующей командой: hdparm -t

4. Вы знали?
Многие опции ядра могут быть изменены во время его работы. Вот одна забавная: echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
(Игнорировать все ping запросы)

5. Быстрый выход.
Для быстрого logout'a без набирания 'exit' нажмите 'CTRL+D', и вы выйдете из шелла. Для того, чтобы это отключить, создайте переменную 'ignoreeof' (set ignoreeof).

6. Баги в шелл-скрипте?
Если вы пишите шелл-скрипт и желаете подебагить его, поместите строчку 'set -vx' в начало скрипта. Тогда он вам все и покажет. Можно добиться того же через командную строку: 'sh -x filename'.

7. Что происходит у меня за спиной?
Если есть желание посмотреть на работу процесса в отладочных целях — 'strace' для вас. Она (он) покажет вам, что делает процесс во время выполнения или если он будет присоединен к уже запущенному процессу. Также вы можете приаттачить strace ко всем потомкам процесса. Для присоединения к уже запущенному процессу используйте 'strace -p PID'. Для присоединения к потомку используйте '-f flag'.

8. Strace для библиотек.
ltrace- кузина strace. Ltrace имеет такие же функции, как strace, но сфокусированные более на библиотеках, и будет показывать вам все вызовы к системе и библиотекам для отладки.

9. Копирование/вставка в терминале.
Если у вас инсталлирован gmp, вы можете выделить текст мышкой и вставить его в позицию курсора, просто нажав среднюю кнопку мыши. В X-ах так же.

10. Что обозначает команда type?

Вы можете использовать команду 'type' для того, чтобы узнать, какую программу выполнит шелл.
Например:
type netscape
Результат:
netscape is /usr/local/bin/netscape

11. Коротко о Bash.
Для того, чтобы обновить содержимое экрана, нажмите Ctrl-L. Ctrl-A поместит курсор в начало строки, Ctrl-E — в конец. Ctrl-U очистит текст от текущей позиции курсора до начала строки. Ctrl-R — поиск в истории команд. Ctrl-C удобна тогда, когда вы набрали команду и не желаете ее выполнять, вместо нажатия Enter нажмите Ctrl-C. Появится новое приглашение в следующей строчке. Ctrl-C также прерывает текущее выполнение команды.

12. Переключение шрифта на лету.
В терминале вы можете изменить размер шрифта на лету — удерживая 'Shift' и нажимая '+' клавишу (в основном используют кейпад). Аналогично 'Shift'+ '-'.

13. Что это такое: 'магические' SysRQ-клавиши.
Это комбинации клавиш, которые вы можете использовать для посылки определенных команд ядру в случае, если вы не можете вернуть систему к работоспособному состоянию (нет доступа к терминалу, клавиатура не реагирует и т.д.) стандартными методами или, в крайнем случае, перезагрузить машину без потери данных. Что надо сделать, чтобы можно было использовать 'магические' SysRQ клавиши? Вам надо включить опцию 'Magic SysRq key (CONFIG_MAGIC_SYSRQ)' при конфигурировании ядра.
Как использовать 'магические' SysRQ клавиши? Используйте комбинацию клавиш 'ALT-SysRQ-< X > '. SysRQ, также известная как клавиша PrintScreen. Что это за 'X' клавиши?
'r' — Выключает режим скан кода raw mode) для клавиатуры и устанавливает режим ASCI II (XLATE).
'k' — Завершает все программы на текущей виртуальной консоли.
'b' — Немедленно перезагрузит систему без сброса буферов на диск и отключения (unmount) дисков.
'o' — Выключит вашу систему через APM (если сконфигурирован и поддерживается) (APM-Advanced Power Manager. — улучшенный менеджер управления электропитанием).
's' — Сброс буферов (sync) для всех подключенных файловых систем.
'u' — Перемонтирует все подключенные файловые системы в режим 'только для чтения'.
'p' — Покажет текущее значение регистров и флагов микропроцессора (на консоль).
't' — Выведет на консоль информацию о текущих запущенных процессах.
'm' — Выведет на консоль информацию об использовании памяти (ОЗУ).
'0'-'9' — Устанавливает уровень вывода на консоль log-сообщений.
'e' — Посылает сигнал предупреждения (SIGTERM) всем процессам, обходя init.
'i' — Посылает сигнал завершения (SIGKILL) всем процессам, обходя init.
'l' — Посылает SIGKILL всем процессам, ВКЛЮЧАЯ init. (Ваша система после этого не будет работоспособна).

Ну вот, хорошая подборочка получилась. Целых тринадцать штук;> Пользуйтесь на здоровье.

X-Stranger
linux@hitech.by
www.linux.hitech.by



Компьютерная газета. Статья была опубликована в номере 16 за 2002 год в рубрике soft :: linux

©1997-2024 Компьютерная газета