В статье опишу основные команды Linux, которые приходилось применять при изучении и работе в ОС Linux. Хватит слов, приступим:
Работа в интерпретаторе
- !N - N-я команда в истории
- !-N - команда, введенная N-шагов назад
- !string - последняя команда, начинающаяся со string
- !$ - последнее слово из предыдущего события
- !?string? -последняя команда содержащая string
- !!:s/новый/старый - замена в последней введенной команде, фразы старый на новый
Файловые команды
- basename - Удаляет любой путь и указанный суффикс из имени файла (получает имя файла)
- cd dir – сменить директорию на dir, при этом, если в текущем каталоге нет подкаталога dir, то поиск dir происходит по каталогам, указанным в переменной $CDPATH
- cp file1 file2– скопировать file1 в file2
- -r – рекурсивно
- -f или --force - попытаться удалить существующую цель, если в нее нельзя записывать.
- -i или --interactive - интерактивно подтвердить попытку замещения существующего файла
- -b или --backup - сделает резервную копию файлов, которые будут замещены.
- -p - сохранить атрибуты копируемого файла (время, права и т.п.)
- csplit - Разбивает заданный файл на несколько новых файлов в соответствие с заданными образцами или номерами строк и выдает количество байтов в каждом новом файле
- dd if=/source/device of=/target/device bs=blocksize count=кол-во_блоков - копирование и преобразование файлов
- dirname - Удаляет из имени файла суффикс, не являющийся директорием (получает имя каталога - путь)
- ln file link – создать хардлинк link к файлу file
- -s – создать символическую ссылку
- ls– список файлов и каталогов
- -a – со скрытыми
- -l - форматированный одноколоночный список (выводится тип файла, права доступа к файлу, количество жестких ссылок на файл, имя владельца, имя группы, размер файлаr (в байтах), временной штамп и имя файла. Типы файлов могут принимать следующие значения: - для обычного файла, d для каталога, b для блочного устройства, c для символьного устройства, l для символической ссылки, p для PIPE (FIFO) и s для гнезда (socket).
- -h - отображение размеров в человекопонятном (от human) виде (10M, 15K)
- -i - вывод inode элементов
- -t - сортировка по дате модификации (от старых к новым)/time
- -S - отсортировать по размеру (от больших к маленьким)/size
- -r - сортировка в обратном порядке
- -R - список с подкаталогами
- md5sum - Выводит или проверяет контрольные суммы Message Digest 5 (MD5)
- mkdir dir – создать каталог dir
- -p /path/to/three/{dir1,dir2,dir3} создание нескольких каталогов dir1,dir2,dir3 в каталоге /path/to/three/
- -m permission - указание прав permission на создаваемый каталог
- mv file1 file2 – переименовать или переместить file1 в file2. если file2 существующий каталог - переместить file1 в каталог file2
- nl - Сообщает о количестве строк в указанных файлах
- pwd – показать текущий каталог
- readlink - Выдает значение указанной символической ссылки
- rm file – удалить file
- -r – удалить каталогь
- -f – удалить форсированно (без запроса)
- -i или --interactive - интерактивно подтвердить попытку удаления файла
- stat - Отображает статус файла или файловой системы
- touch file – обновить время доступа к файлу file или создать file, если его нет
-c
или--no-create
- не создавать файл, если его не существует.- -d или -t - изменить время на указанное (формат указания времени в man touch)
- more file – вывести содержимое file с возможностью прокрутки вверх/вниз
- less File - аналог more
- tee file - вывод данных, получаемых со стандартного ввода на стандартный вывод И в файл file. (команда называется "тройник")
- fuser file - идентифицирует (если без параметров - отображает PID) процессы, использующие файл file
- head file – вывести первые 10 строк file
Управление текстом
- cut file - выделение из файла file указанных последовательностей и отправка на стандартный вывод
- cat file – отображение содержимого file на стандартный вывод
- -E - отображение концов строк
- -n - нумерация строк
- tac file – отображение содержимого file на стандартный вывод в обратном порядке
- echo file - отображение содержимого file на стандартный вывод
- echo string > file запись строки string в файл file (при наличии в файле других строк, файл перезаписывется)
- echo string >> file ДОзапись строки string в КОНЕЦ файла file (при наличии в файле других строк, строка stringдописывается в конец файла file )
- -e - интерпретировать управляющие символы, такие как (\n - новая строка,\t -горизонтальаня табуляция и т.п.)
- expand - Конвертирует символы табуляции в пробелы
- rev file - Меняет в заданном файле порядок строк на обратный
- seq - Выдает последовательность чисел из указанного диапазона с указанным значением приращения
- shred - Удаляет указанные файлы, путем перезаписывания на их место данных по сложным образцам, что усложняет восстановление удаляемых файлов
- shuf - Перемешивает строки текста
- sort - сортировка строк текстовых файлов по указанным параметрам
- -k - указание номера поля, по которому сортируем
- -t - разделитель
- -n - числовая сортировка, т.е. сравнение ведётся по числовому значению (используют совместно с параметром -b)
- -r - сортировка в обратном порядке
- -R - в произвольном порядке
- -u - исключение повторяющихся строк
- tail file – вывести последние 10 строк file
- -f – вывести содержимое file по мере роста, начинает с последних 10 строк
- tailf file - аналог tail -f
- wc File - печатает число строк, слов и байт в файле File
- -c, --bytes - байтов
- -m, --chars - символов
- -l, --lines - строк
- -L, --max-line-length - число символов в строе максимальной длины
- tr string1 string2 - символьное преобразование символов из string1 в string2 (echo mama | tr abcd ABCD)
- -s - замена повторяющихся символов на один
- -d - убрать из вывода символы (abcd)
- unexpand - Конвертирует символы пробелов в символы табуляции
- uniq - Удаляются все повторяющиеся копии уже имеющихся строк
Управление системой
- runlevel – вывести текущий уровень выполнения
- chkconfig - информация о запускаемых сервисах на разных уровнях запуска для RedHat- подобных дистрибутивов
- --list - вывод всех установленных сервисов с уровнями запуска
- service on/off - включение - on или отключение - off запуска службы service на всех уровнях запуска
- --levels 23 service on/off - включение - on или выключение - off запуска службы service на всех уровнях запуска 23
- update-rc.d service default - добавление демона service в автоматическую загрузку на уровни выполнения по умолчанию для Debian подобных дистрибутивов
- ctrlaltdel hard или soft - Устанавливает для комбинации символов Ctrl+Alt+Del жесткую или мягкую перезагрузку (обычно используется в стартовом скрипте, например /etc/rc.local)
- init n - указание процессу init перейти на уровень выполнения n
- /etc/init.d/daemon command - (управление службами системы инициализации SystemV) выполнение команды command над демоном daemon (наиболее часто используемые команды: start, stop, status, restart, reload - запустить демон, остановить, перезапустить, проверить статус, перечитать конфигурационный файл соответственно)
- stty - управление настройками терминала
- -a - вывод всех текущих настроек
- sane - сброс настроек к настройкам по умолчанию
- lscpu - вывод информации о ЦП
- rtcwake - Используется для перевода системы в режим "сна", продолжающийся до тех пор, пока не настанет указанное время "проснуться"
- telinit n - аналог (точнее символьная ссылка на init) init
- initctl - управление системой загрузки upstart
- check-config - проверить конфигурационные файлы Upstart
- emit event - послать (эмитировать) событие event - upstart'у
- help - отображение справки по командам initctl
- list - отображение статуса задач
- start jobd - запуск задачи/службы jobd
- stop jobd - остановка задачи/службы jobd
- status jobd - отобразить статус задачи/службы jobd
- restart jobd - перезапуск задачи/службы jobd
- reload jobd - перечитать конфиг задачи/службы jobd
- reload-configuration - перечитать конфиги из /etc/init/
- show-config - отобразить конфигурационный файл (когда запускается, останавливается, на какие события реагирует)
- version - отобразить версию upstart
- init-checkconf /path/to/file.conf - проверить конфигурационный файл upstart - /path/to/file.conf
- start jobd/status jobd/stop jobd/restart jobd/reload jobd - аналог команд initctl start jobd и т.д. соответственно
- shutdown n - переключается на уровень выполнения 1 (однопользовательский режим) через n минут (можно ввести вместо цифр - now, тогда уровень сменится моментально без ожидания)
- -r переключается на уровень выполнения 6 (перезагрузка)
- -h переключается на уровень выполнения 0 (выключение)
- -c отмена запущенного переключения на какой-либо уровень выполнения.
- reboot - перезагрузка, аналог shutdown -r now
- hait - выключение, аналог shutdown -s now
- watch command - запуск команды command через некоторые промежутки времени и отображение ее вывода в полный экран
- -n sec - каждые sec-секунд
- crontab file - создание таблиц планировщика Linux из файла file
- -u user - редактирование таблиц планировщика пользователя user
- -l - отображение текущих заданий из crontab
- -e - редактирование таблиц планировщика
- -r - удаление задания планировщика
- -i - запрос перед удалением заданий crontab
Управление печатью (CUPS)
- lpstat – отображение статуса заданий, классов и принтеров
- -a printer - отображение текущего статуса принтера printer
- -c class - отображение текущего статуса класса class
- -p printer - отображение текущего статуса принтера/очереди (включен или выключен) printer. Если не указан принтер, то отображается информация о всех принтерах.
- -d - отображение текущих очередей печати.
- lpr file - печать файла file на принтер по умолчанию (в новых версиях CUPS заменена на lp)
- lpinfo - отображение доступных устройств принтеров и драйверов
- lppasswd username - изменение пароля пользователя username в CUPS в файл /etc/cups/passwd.md5
- -a username - добавление нового пользователя username
- -x username - удаление пользователя username
- lpoptions - управление настройками принтера и отображение настроек.
- lpadmin - настройка CUPS принтеров и класссов
- accept очередь - включение возможности принятия в очередь заданий
- reject очередь - отключение возможности приема новых заданий в очередь
- enable очередь - запуск очереди очередь
- disable очередь - остановка очереди печати очередь
- -с очередь - отмена обработки печати всех документов в очереди (аналог "очистить очередь")
- -r причина - указание причины очистки
Управление процессами
- bg number – список остановленных и фоновых задач/продолжить выполнение остановленной задачи в фоне, имеющей номерnumber
- fg number – выносит на передний план последние задачи
- n – вынести задачу n на передний план
- kill pid – убить процесс с id pid
- -TERM pid - попытаться завершить процесс с pid - сигналом SIGTERM (этот сигнал может быть обработан или проигнорирован программой).
- -KILL pid - Завершить процесс принудительно, убить процесс в независимости от его состояния сигналом SIGKILL (процесс не может проигнорировать сигнал)
- killall proc – убить все процессы с именем proc *
- lsof pid - просмотр открытых файлов, процессом с pid
- nice -n value script - изменение приоритета запускаемого процесса script на значение, равное value (может быть от -20 до 19, в порядке уменьшения приоритета, т.е. -20 - самый высокий)
- nohub script - разрешение запускаемому процессу script , быть устойчивому к закрытию (при выходе пользователя процесс продолжит свое выполнение)
- nproc - Указывает число дочерних процессов, имеющихся в данном процессе
- pgrep - Ищет процессы по их именам и другим атрибутам
- pidof proc1 proc2 - вывести PID всех запрошенных процессов
- ps – вывести ваши текущие активные процессы
- -a - связанные с конкретным терминалом, кроме главных системных процессов сеанса
- a - процессы, связанные с текущим терминалом, а также процессы других пользователей;
- x - процессы, отсоединённые от терминала (демоны, службы)
- -u - отображение пользователя (владельца процесса)
- aux - вывод всех процессов в системе
- lax - вывод всех процессов в системе (UID не преобразуется в имя пользователя)
- -ejH - Вывод процессов в виде дерева
- -С process -o col - вывод информации из колонки col о процессе process (col бывают следующие: USER - имя пользователя, PID, %CPU - % использования CPU, %MEM - % использования памяти, VSZ - виртуальный размер процесса, в Кб, RSS - объем используемой физической памяти, в Кб, TTY - идентификатор управляющего терминала, STAT - текущий статус процесса, м/б D - ожидание вв/выв, R - запущен, S - ожидание, T - остановлен, W - процесс выгружен на диск, X - процесс уничтожен, Z - зомби и др..., START - время запуска процесса, TIME - время ЦП для процесса, COMMAND - команда, запустившая процесс)
- -u user - отобразить процессы пользователя user
- pstree - команда отображает дерево запущенных процессов. (ИМХО-отличная программа, дает очень наглядное представление о запущенных процессах в системе)
- -a - отображение процессов с аргументами запуска командной строки
- -h - подсвечивает текущий процесс и его предков
- -u - показывает UID процесса. (Когда uid процесса отличается от uid родителя , то новый uid показывается после имени процесса ,заключенным в круглые скобки)
- pwdx - Сообщает о текущем рабочем директории процесса
- sysctl - Модифицирует параметры ядра в режиме реального времени
- top – показать все запущенные процессы в интерактивном режиме (с возможностью сортировки по загрузке ЦП/памяти/т.п.):
- h - справка о программе
- k - уничтожить процесс
- n - число отображаемых процессов
- u - сортировать по имени пользователя
- M - сортировать по объему ОЗУ
- P - сортировать по загрузке ЦП
- r - изменить приоритет выполнения
- q - выход
- renice -value PID - изменение приоритета запуЩЕННОГО процесса с PID=PID на значение, равное value (может быть от -20 до 19, в порядке уменьшения приоритета, т.е. -20 - самый высокий)
Права доступа на файлы/папки
- chmod octal file– сменить права file на octal, раздельно для пользователя, группы и для всех, добавлением:
- 4 – чтение (r)
- 2 – запись (w)
- 1 – исполнение (x)
- Примеры:
- chmod 777 – чтение, запись, исполнение для всех
- chmod 755 – rwx для владельца, rx для группы и остальных.
- -R - назначение указываемых прав всем дочерним элементам
- chown user:group file – сменить владельцев file на user:group
SSH
- ssh user@host– подключится к host как user
- -p port – подключится на порт port
- ssh-copy-id user@host – добавить ваш ключ на host для user чтобы включить логин без пароля и по ключам
Поиск
- grep pattern files– искать pattern в files
- -r – искать рекурсивно pattern в dir
- command | grep pattern – искать pattern в выводе command
- -v - искать строки, не содержащие pattern (например можно найти все строки, не начинающиеся на комметарий и не пустые: grep -v '^#'| grep -v '^$')
- -i - без учета регистра букв
- -E - с интерпретацией регулярных выражений
- -l - листинг файлов, содержащих строку в имени
- locate file – найти все файлы с именем file
- find path file - поиск файла file в каталоге path
-path
- поиск по пути-name
- поиск по имени- -ipath или -iname - то есть с "i" - регистронезависимый поиск
-type
d или f или l - поиск по типу файла: 'f' для регулярных файлов, 'd' для каталогов и 'l' для символьных ссылок соответственно (другие типы - в man find)-size
n - поиск файла по размеру (n может быть как n, как +n (более n), как -n (менее n), а так же для указания единицы измерения: nc - для байт, nk - для килобайт, nb - блоков)-empty
- поиск пустых файлов-print
- вывод всего что найдено-ls
- вывод найденного аналогично командеls -lids
-exec command; -
выполняет командуcommand
для каждого файла (обязательно заканчивается ; ),-mtime n
- поиск файла по времени модификации-atime n
- поиск файла по времени доступа-daystart
- указание на отсчет времени от полуночи-mmin
n
find . -size -26c -size +23c -exec ls -l '{}' \;
- данный пример ищет файлы размером от 23 байт до 26 и с найденным выполняет команду ls -l.
find /folder -perm +4000
- данный пример ищет файлы с битом SUID в каталоге /folder.
Работа с переменными
- env - работа с переменными окружения (от environment - окружение), без параметров - вывод всех имеющихся
- peremennaya="znachenie" - присвоеное переменной peremennaya значения znachenie (кавычки желательно использовать на случай, если в переменной несколько подряд идущих символов пробела или табуляции)
- printenv - Выдает значения переменных среды окружения
- unset $peremennaya - удаление переменной
- readonly peremennaya - установка переменной значения "только для чтения", то есть запрет изменения значения переменной. (без аргументов - вывод всех переменных, помеченных только для чтения)
- export peremennaya - экспорт переменной peremennaya для родительских процессов
- set arg1 arg2 arg3 ... argn - установка позиционных переменных $1 $2 $3 ... $n на основании arg1 arg2 arg3 ... argn
- -a (allexport) - экспортирует все инициализируемые переменные
- -f (noglob) - указывает интерпретатору не развертывать имена файлов
- -n (noexec) - указывает интерпретатору развертывать команды, но не выполнять их
- -t (exit) - читает и выполняет одну команду, а затем прекращает работу
- -u (nounset) - возвращать ошибку при развертывании пустой переменной
- declare -atr +atr peremennaya - устанавливает (символ - минус) или снимает (символ + плюс) атрибуты atrу переменных (если без указания переменной - то вывод всех переменных с указанным атрибутом)
- -a - объявление переменной массивом
- -f - объявление переменной - именем функции
- -i - пометить переменную для хранения целых числовых значений
- -r - объявление переменной "только для чтения"
- -x - пометка переменной для экспорта
Системная информация
- date – вывести текущую дату и время
- [ммддччмм[гг]].сс - установка даты и времени (мм - месяц, дд - дата, чч - час, мм - минут, гг - год, сс - секунд)
- cal – вывести календарь на текущий месяц
- uptime – показать текущий аптайм
- uname – показать информацию о ядре
- -s - Показать имя ядра (информация выдается по умолчанию, если ни одна опция не указана)
- -n - Показать имя хоста.
- -r - Показать номер выпуска ядра. Эта опция часто используется с командами управления модулями.
- -v - Показать версию ядра.
- -m - Показать имя аппаратной платформы (CPU).
- -o - Показать имя операционной системы.
- -a - Показать всю возможную информацию.
- cat /proc/cpuinfo – информация ЦПУ
- cat /proc/meminfo – информация о памяти
- df – показать инф. о использовании дисков
- -t - указание типа ФС
- -h - в "понятном" виде
- -T - отображение типа ФС
- -i - отображение информации об inode
- -x fstype - исключение вывода по типу ФС
- du – вывести “вес” текущего каталога
- -s - с подкаталогами
- -h - в "понятном" виде
- -m - вывод в мегабайтах
- free – использование памяти и swap
- whereis file– отображение расположения файла file
- which app – отображает путь к команде app
- type app - аналог каманды which
- enable - вывод встроенных в интерпретатор команд
- lshw - обтображение списка устройств
- lsmod - список подключенный модулей ядра
- modprobe modulemane - добавления и удаления модулей ядра Linux
- modinfo modulename - информация о модуле modulename
Справочная информация
- man command – показать ман-страницу для command
- info command - показать info-страницу для command
- whatis command – поиск man-страницы для command и отображение информации об имени из соответствующей man-странице
- apropos command - поиск по ключевым словам в man-страниц и выводит те, которые содержат command(по существу, это аналог команды man -k, где ключ k - указывает на поиск в руководстве по ключевому слову)
- editor - отобразит имеющиеся в системе текстовые редакторы
Архивация
- bzcat/bzdiff/bzegrep/bzfgrep/bzgrep/bzless/bzmore - Запуск команды bzcat/bzdiff/bzegrep/bzfgrep/bzgrep/bzless/bzmoreсоответственно для файлов, заархивированных с помощью bzip
- tar cf file.tar files– создать tar-архив с именем file.tar содержащий files
- с - создать архив
- t - вывести содержимое архива
- r - дописать в архив
- x - распаковать архив
- j - использовать сжатие Bzip2 (*.bz2)
- z - использовать сжатие Gzip (*.gz)
- v - выводить отладочную информацию
- f - название файла архива
- gzip file – сжать file и переименовать в file.gz (без указания файла - сжатие с stdin)
- -l - отобразить содержимое архива
- -d - распаковать архив, исходный удалить
- zcat/zcmp/zdiff/zegrep/zfgrep/zgrep/zless/zmore - Запускает команду cmp для файлов, заархивированных с помощью gzip
- zcat file.gz - просмотр содержимого архива file.gz
- gunzip file.gz– распаковать file.gz в file
- -с - отправить вывод на stdout
Управление NFS
- showmount host - отобразить список хостов, которым разрешено монтировать экспортированные файловые системы на хосте host (без указания параметра host будет выведена информация с локальной системы);
- -a - вывести полную информацию об экспортированных иерархиях (хост/strong– вывести первые 10 строк fileempstree n - поиск файла по размеру (n может быть как n, как +n (более n), как -n (менее n), а так же для указания единицы измерения: nc - для байт, nk - для килобайт, nb - блоков) - каталог)
- exportfs – управление экспортированными каталогами
- -a - экспорт всех иерархий из /etc/exports, но не разэкспортирует удаленные элементы.
- -i - игнорирует файл /etc/exports и использует только параметры из командной строки.
- -o - задает опции экспорта (обычно используют с -i), например
exportfs -i -o ro hostname:/folder/subfolder # экспортирует файловую систему /folder/subfolder из локальной системы в систему hostname только для чтения (ro)
- -r - реэкспортирует элементы файла /etc/exports и удаляет неверные записи из /var/lib/nfs/xtab
- -u - разэкспортирует иерархию
- -v - "говорительный" режим )
Сеть (DNS)
- ipcalc - калькулятор сети
- ethtool interface - отобразить физическую статистику интерфейса interface;
- ping host – пропинговать host и вывести результат
- whois domain – получить информацию whois для domain
- traceroute host - трассировка маршрута до определенного хоста
- ifconfig eth0 - отображение/настройка параметров сетевого интерфейса etho (либо другого, если без указания интерфейса - отобразит конфигурацию всех интерфейсов)
- inet ip.add.re.s - задание ip адреса интерфейса (TCP/IP)
- mask xxx.xxx.xxx.xxx - задание маски подсети интерфейса
- broadkast xxx.xxx.xxx.xxx - задание широковещательного адреса интерфейса
- up - запустить интерфейс
- down - остановить интерфейс
- -a - отображение всех железных интерфейсов (в том числе и не поднятых и поднятых)
- route - отображение таблицу маршрутизации
- -n - не резолвить имена в адреса
- add destination gw gateway metric metric - добавить маршрут (add) для destination (адрес назначения), IP адрес шлюза (gw) - gateway, с метрикой metric
- add -net -указание добавить маршрут для сети
- add - host -указание добавить маршрут для хоста
- del destination - удалить маршрут с назначением destination
- mtr host - отображение статистики трассировки до хоста host (красивее чем трасероут )
- netcat host port - просмотр, кто слушает порт
- nc - TCP/IP швейцарсий нож
- -h - отобразить помощь
- -l port - прослушивать локальный порт port для входящих соединений.
- netstat -отображение статистики сети
- -r - таблица маршрутизации
- -n - без разрешения IP адресов в имена и сетевых портов в названия
- -a - состояние всех (во всех состояниях) соединений на локальной машине
- -t - статистика по протоколу TCP
- -u - статистика по протоколу UDP
- -i - отобразить статистику сетевых интерфейсов
- -l - просмотр сокетов, слушающих (LISTEN) соединения (ожидающих соединения)
- -p - отобразить имя программы и PID (process ID), с которой взаимодействует сокет
- примеры:
[root@proxy ~]# netstat -ai Kernel Interface table Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 36017870 0 31 0 42781870 0 0 0 BMRU eth1 1500 0 43918739 0 0 0 34393308 0 0 0 BMRU eth2 1500 0 3220106 0 0 0 3666398 0 0 0 BMRU lo 16436 0 15429640 0 0 0 15429640 0 0 0 LRU ppp0 1246 0 14047 0 0 0 1576 0 0 0 MOPRU ppp1 1246 0 1329 0 0 0 1941 0 0 0 MOPRU
- nmap host - просканировать порты на хосте host
- -p ports - просканировать указанные порты
- -o - определить ОС при сканировании порта
- tcpdump - анализатор заголовков пакетов
- -n - не преобразовывать IP в DNS
- -i interface - указать какой интерфейс слушать
- port nn - указать вывод только nn порта
- -w file - сохранять вывод в файл file
- wget file – скачать file
- -c – продолжить остановленную закачку
- dig domain – получить DNS информацию о domain
- -x 1.2.3.4 – реверсивно искать данные о хосте 1.2.3.4 (то есть найти данные для 4.3.2.1.in-addr.arpa.)
- @ns.server - источником информации о DNS - использовать ns.server
- SOA|MX|A|NS - указать тип получаемой записи
- +short - получение коротких отчетов
- +nocomments - отключить комментарии в отчете
- +trace - включение трассировки поиска запрашиваемого значения
- -f file - запуск построчно команды dig с параметрами, указанными в каждой строке файла file
- named-checkzone zone_name /file/name/zone - проверяет синтаксис файла зоны /file/name/zone
- named-checkconf - проверяет синтаксис файла named.conf
- -z - проверка named.conf с проверкой корректности файлов зон
- nslookup - интерактивные запросы к DNS
- host - отобразить основные (A и MX) записи хоста host
- -debug - включить режим отладки
- -type=SOA|MX|A.... - вывод указанного типа ресурсной записи
- host ns.server - получить информацио о хосте host с DNS сервера ns.server
- host domain - получить DNS информацию о домене domain
- -a - вывести все записи зоны
- -d - отладка
- -t A|MX... - указание типа ресурсной записи
- -v - вывод подробной информации
- host ns.server - узнать информацию о хосте host с DNS сервера ns.server
Управление программным обеспечением
- Установка из исходников:
[mc-sim@ASUS /]$ wget http://www.site.com/packege.tar.gz # получаем архив packege.tar.gz с сайта http://www.site.com/ [mc-sim@ASUS /]$ tar xzvf packege.tar.gz # распаковываем архив packege.tar.gz [mc-sim@ASUS /]$ cd packege # переходим в каталог с распакованным архивом [mc-sim@ASUS /]$ less README или INSTALL # читаем файл README или INSTALL, обычно в них описан HOWTO INSTALL # процесс установки, если нет, то выполняем команды: .... [mc-sim@ASUS /]$ ./configure [mc-sim@ASUS /]$ make [mc-sim@ASUS /]$ make install
- apt-get- вывод информации о команде управления пакетами apt-get
- install pakage - установка пакета pakage
- remove pakage - удаление пакета pakage
- --purge - удаление вместе с пакетом конфигурационных файлов
- check - проверка дерева зависимостей пакетов
- update - обновление локального списка пакетов
- upgrade - обновление всех пакетов, не требующих инсталляции (обновляются только те, которые установлены и те, которые зависят от уже установленных)
- dist-upgrade - обновление пакетов системы с инсталляцией новых пакетов (обновляются все пакеты, в том числе и не инсталлированные)
- apt-cache search pakage - выполняет полный поиск текста pakage по всем доступным файлам пакетов по заданному шаблону. Команда просматривает имена пакетов и описания, для поиска определенной строки, а также выводит имя пакета и его краткое описание.
- ldd /path/program - вывести список библиотек общего доступа от которых зависит программа /path/program
- strace program - трассировка системных вызовов команды program. (очень полезна для отслеживания попыток программы открыть конфиг/библиотеку и т.п.)
- -e write - указать параметр фильтрации, в данном примере - отслеживать системные вызовы write (часто используется open)
- -f - отслеживать системные вызовы потомков (желательно использовать)
- -o file - вывод трассировки в файл file
- ldconfig - пересоздание кэша библиотек общего доступа
- dpkg -i pkg.deb– установить (или обновить) пакет (Debian)
- -r (--remove) pkg.deb - удаление пакета pkg.deb с сохранением конфигов
- -P (--purge) pkg.deb - удаление пакета pkg.deb с удалением конфигов
- -l (--list) - отобразить установленные в системе пакеты
- --search /bin/file - узнать какому пакету принадлежит файл
- --status pkg или --info pkg - показать информацию о пакете pkg
- --contents pkg.deb - показать состав пакета pkg.deb
- netselect-apt - выбор быстрых зеркал для менеджера пакетов
- stable|testing|unstable|experimental|woody|sarge|etch|sid - указать тип версии репозитория.
- -o, --outfile file - указать выходной файл с репозиторием
- -f - использовать FTP репозитории вместо http.
- rpm - (без параметров) вывод версии пакетного менеджера
- -i pkg.rpm – установить пакет (RPM) pkg.rpm
- -v - вывод информации на экран при установке/удалении
- -q- вывод краткой информации о пакете (версия)
- -a - вывод информации о всех установленных пакетах
- -f file - Запросить пакет, которому принадлежит файл file
- -i pkg.rpm - вывод полной информации об установленном пакете pkg.rpm
- -l pkg.rpm- Запросить список файлов в пакете pkg.rpm
- -ivh - установка пакета с выводом доп инфо
- -Uvh - обновление имеющегося пакета с выводом доп инфо
- -e - удаление пакета
- -qpl pkg.rpm - вывод информации о файле пакета pkg.rpm
- -R - Запросить список пакетов, от которых зависит этот пакет
- --initdb - инициализация базы данных RPM (создает структуру файлов в каталоге /var/lib/rpm, содержащих информацию о пакетах, зависимостях и т.п.)
- --nodeps - не обращать внимания на зависимости
Управление пользователями и группами
- last - Показывает, какие пользователи последними входили в систему (и покидали ее), выполняя для этого поиск в файле /var/log/wtmp в обратном порядке; также показывает информацию о загрузках системы, ее остановках и изменениях ее уровней запуска
- lastb - Показывает неудачные попытки входа в систему, которые записаны в файле /var/log/btmp
- w – показать пользователей онлайн
- whoami – имя, под которым вы залогинены.
- finger user@host – показать информацию о user (без указания пользователя - выведет список пользователей, залогиненых в системе) на хосте host, утилита не чувствительна к регистру символов
- write user [terminal] - начать сеанс общения с пользователем user на терминале terminal
- talk user@host - чат с пользователем user на компьютере host
- wall message - разместить сообщение message на всех терминалах.
- mesg y/n - включение - y и выключение - n возможности принимать сообщения на консоли
- su user - создание оболочки (подоболочки текущей оболочки) с правами пользователя user (без указания пользователя - вызывается оболочка root)
- -, -l, --login - все 3 параметра имеют одно значение - загрузить окружение вызываемого пользователя (выполняются все стартовые сценарии и подгружаются переменные окружения вызываемого пользователя)
- -с command - выполнить команду command с правами суперпользователя и "понизить" права в исходные после завершения команды.
- useradd user - добавление нового регистрационного имени пользователя user в системе
- -g group - задает основную группу (primary group) для нового пользователя. По умолчанию используется стандартная группа, указанная в файле /etc/default/useradd.
- -d dir - доманий каталог (home directory) нового пользователя. По умолчанию используется $HOMEDIR/user
- -s shell - полный путь к программе (шеллу), используемой в качестве начального командного интерпретатора для пользователя
- -m - Создает начальный каталог нового пользователя, если он еще не существует. Копирует скелетные файлы и другие каталоги из /etc/skel в домашний каталог.
- -b - Базовый каталог по умолчанию, в котором создаются домашние каталоги пользователей. Обычно это /home, а пользовательские каталоги — /home/$USER.
- -c "text text" - Текстовая строка для описания id, содержащая, например, полное имя пользователя.
- -e YYYY-MM_DD - Дата, когда учетная запись потеряет силу или будет заблокирована.
- -G gr1,gr2,gr3 - Список дополнительных групп, которым принадлежит пользователь.
- -o - Позволяет создать пользователя с неуникальным id.
- -u - Неотрицательное цифровое значение id пользователя, которое должно быть уникальным, если не определено иначе опцией -o. По умолчанию используется самое маленькое значение, не меньше, чем UID_MIN, причем больше, чем id любого из существующих пользователей.
- usermod user - добавление нового регистрационного имени пользователя user в системе
- аналогичны всем вышеуказанным для useradd
- -L - блокировка учетной записи
- -U - разблокировка учетной записи
- userdel user - удаляет пользователя user из системы
- -r - удаление домашнего каталога пользователя
- users - Выдаются имена пользователей, которые в текущий момент зарегистрированы в системе
- groupadd group - добавление (создание) новой группы group в системе
- -f - Выйти со статусом успешного выполнения, если группа уже существует. Удобна при написании скриптов, когда нет необходимости проверять, существует ли группа, прежде чем пытаться ее создавать.
- -g - Задать id группы вручную.
- -o - Разрешить группу с неуникальным id.
- groupmod group - изменение информации о группе group в системе
- -n group2 задание нового имени group2
- groupdel group - удаление группы group из системы
- passwd user - изменяет/устанавливает пароль пользователя user
- -l - блокирование учетной записи
- -d - удаление пароля учетной записи (блокирование)
- -f - установка даты прекращения полномочий
- -n - минимальное время действия пароля в днях
- -x - максимальное время действие пароля в днях
- -w - число дней появления предупреждения об окончании действия пароля
- -i - число дней, после которых пароль потеряет силу и учетка заблокируется.
- -S - вывод сообщения о статусе пользователя
- gpasswd group - изменяет/устанавливает пароль группы group (Наличие пароля группы позволяет пользователям временно войти в группу при помощи команды newgrp, если им известен пароль группы.)
- id who - просмотр информации о пользователе/группе who (принадлежность к группам, UID, GID)
- ulimit - ограничение пользовательских ресурсов:
- -a - отображение всех возможных ресурсов
- -f - ограничение размера файла
- -t - процессорное время
- ...
Управление блочными устройствами (работа с разделами на жестком диске)
- fdisk /dev/block_device - интерактивное редактирование таблицы раздела блочного устройства /dev/block_device
- -l - отображение таблицы разделов устройства.
- badblocks - Поиск плохих блоков на устройстве (обычно на дисковом разделе)
- blkid /dev/sda1 - определяет и выдает атрибуты блочного устройства (без параметров - атрибуты всех блочных устройств)
- dumpe2fs - Выдает информацию о суперблоке и группе суперблоков файловой системы, присутствующей на указанном устройстве
- e2freefrag - Сообщает информацию о фрагментации свободного пространства
- e2image - Используется для сохранения в файле данных, критичных для файловой системы ext2
- e2initrd_helper - Выдает тип файловой системы для указанной файловой системы; указывается имя или метка устройства
- e2label - Отображает или изменяет метку файловой системы в файловой системе ext2, присутствующей на заданном устройстве
- e2undo - Выдает информацию, касающуюся отмены действий, из журнала undo_log файловой системы ext2/ext3/ext4, расположенной на устройстве. Может использоваться программой e2fsprogs для отмены неверно выполненной операции.
- filefrag - Сообщает о том, насколько сильно может быть фрагментирован конкретный файл
- findfs LABEL=label или UUID=uuid Поиск файловой системы по метке или по универсальному уникальному идентификатору Universally Unique Identifier (UUID)
- logsave - Сохраняет данные, выдаваемые командой, в журнальном файле.
- lsattr - Выдает списки атрибутов файлов второй расширенной файловой системы.
- mkfs -t type /dev/block_device - создание файловой системы type на устройстве /dev/block_device
- -L - указание метки тома
- существуют аналоги команды, которые позволяют не использовать опцию -t, аналоги можно посмотреть командой:
ls /sbin/mk*
- e2labael /dev/block_device newlabel - задание метки тома newlabel для устройства /dev/block_device
- tune2fs /dev/block_device newlabel - изменение параметров ФС ext2/ext3
- -j - добавление журналирования для ext2 (преобразование в ext3)
- mkswap /dev/block_device newlabel - создание раздела SWAP (раздела подкачки на устройстве /dev/block_device< newlabel)
- swapon - подключение (монтирование) раздела подкачки
- swapoff - отключение (размонтирование) раздела подкачки
- fsck /dev/block_device - проверка и исправление ФС на устройстве /dev/block_device или перечисленных в /etc/fstab и имеющих в поле pass, значение отличное от 0. С увеличением числа - уменьшается очередность сканирования. То есть поле pass со значением 1 будет проверено первым, со значением 2 - вторым и т.д.
- -AR - проверка всех файловых систем, отмеченных для проверки в /etc/fstab (A), кроме корневой (R)
- -a - автоматическое подтверждение всех запросов на исправление системы
- -с - проверка всех сбойных блоков
- -v - вывод текстовых сообщений во время проверки
- у команды есть аналоги для каждого типа ФС, аналоги можно просмотреть командой:
ls /sbin/*fsck*
- mdadm -C /dev/md0 -l 5 -n 3 -x 1 /dev/sda[5-8]- создание RAID массива на устройстве /dev/md0, уровня 5, из 3х дисков, c одним hot spare, в массив включить файловые системы на диске /dev/sda - с 5 по 8.
- -f /dev/sdaN - пометить раздел /dev/sdaN сбойным
- -r /dev/sdaN - пометить раздел /dev/sdaN извлеченным
- -a /dev/sdaN - добавить раздел /dev/sdaN в массив
- mount device dir - монтирование/подключение файлового устройства device в каталог dir (запуск без параметров выводит список уже смонтированных устройств)
- -a - монтирование всех файловых систем, указанных в /etc/fstab (включая те, которые имеют параметр noauto)
- -t fstype - указание типа файловой системы (ntfs, nfs, ext3 и т.п.)
- -h - помощь
- -r - монтирование в режиме только чтения
- -o parametr=znachen- устанавливает параметры монтирования:
- conv=auto - автоконвертирование текста их формата MSDOS в UNIX (замена символа конца строки CR-LF на LF)
- ro - монтирование в режиме только для чтения
- umount dir/mount_point - размонтирует файловые системы
- -a - размонтирование всех файловых систем, указанных в /etc/fstab, кроме корневой
- quotacheck - проверка установленной квоты на разделах
- quotaon - установка квот на разделах
- quotaoff - отключение квот на разделах
- edquota - отключение квот на разделах
- partprobe /dev/device - перечитать таблицу разделов устройства /dev/device (обычно используется после внесения изменений в таблицу разделов командой fdisk, если ядру не удалось это сделать автоматом)
- uuidd - Демон, используемый библиотекой UUID для создания безопасных и гарантированно уникальных идентификаторов UUID
- uuidgen - Создает новые идентификаторы UUID. Каждый новый идентификатор UUID может обоснованно считаться уникальным среди всех идентификаторов UUID, созданных как на локальной машине, так и на любых других машинах, как в прошлом, так и в будущем.
- resize2fs /dev/раздел размерM - изменение размера раздела /dev/раздел до размера размерM(в мегабайтах)
- -p - выводить информацию