Команды Linux

Дистрибутивов Linux существует великое множество, но у всех у них есть нечто общее — это команды Linux. Если вы знаете команды Linux, то в любом, даже самом экзотическом Linux, вы будете чувствовать себя как дома.

Командами Linux можно сделать очень многое, а некоторые вещи можно сделать ТОЛЬКО командами.

И даже то, что можно сделать через графический интерфейс, командами можно зачастую сделать всё намного быстрее и проще.

На этой странице я буду собирать самые полезные команды, которые могут пригодиться мне и вам. Я постараюсь всё систематизировать, чтобы нужную команду было легче найти. Сначала идет команда, а потом пояснение к ней.

Команды Linux

О чём пойдет речь?
  1. Команды повышающие привилегии:
  2. Команды для работы с файлами и директориями:
  3. Команды для поиска файлов:
  4. Команды для монтирования файловых систем:
  5. Команды для работы с дисковым пространством:
  6. Команды для работы с пользователями и группами:
  7. Команды для изменения полномочий на файлы:
  8. Команды для архивирования файлов:
  9. Команды для проверки системной информации:
  10. Команды для остановки системы:
  11. Команды для работы X-сервером:
  12. Команды для работы с сервисами:
  13. Команды для управления пакетами:
  14. RPM пакеты (Fedora, Red Hat и тому подобное)
  15. YUM — средство обновления пакетов(Fedora, RedHat и тому подобное)
  16. DEB пакеты (Debian, Ubuntu и тому подобное)
  17. APT — средство управление пакетами (Debian, Ubuntu и тому подобное)
  18. Команды для просмотра содержимого файлов:
  19. Команды для манипуляции с текстом:
  20. Команды для проверки файловых систем:
  21. Команды для форматирования разделов:
  22. Команды для создания резервных копий:
  23. Команды для работы с сетью:
  24. Команды для мониторинга и отладки:
  25. Команды для работы с фаерволом:
  26. Команды для работы с ядром:

Команды повышающие привилегии:

Показать скрытое содержимое
запустить команду с правами root
открыть командную строку с правами root
открыть командную строку с правами user
забыть пароль sudo
графический диалог sudo (GNOME)
графический диалог sudo (KDE)
редактировать /etc/sudoers
файловый менеджер с правами root (GNOME)
файловый менеджер с правами root (KDE)
сменить Ваш пароль

Команды для работы с файлами и директориями:

Показать скрытое содержимое
— перейти в директорию ‘/home’
— перейти в директорию уровнем выше
— перейти в директорию двумя уровнями выше
— перейти в домашнюю директорию
— перейти в домашнюю директорию пользователя user
— перейти в директорию, в которой находились до перехода в текущую директорию
— показать текущую директорию
— отобразить содержимое текущей директории
— отобразить содержимое текущей директории с добавлением к именам символов, храктеризующих тип
— показать детализировано представление файлов и директорий в текущей директории
— показать скрытые файлы и директории в текущей директории
— показать файлы и директории содержащие в имени цифры
— показать дерево файлов и директорий, начиная от корня (/)
— показать дерево файлов и директорий, начиная от корня (/)
— создать директорию с именем ‘dir1’
— создать две директории одновременно
— создать дерево директорий
— удалить файл с именем ‘file1’
— удалить директорию с именем ‘dir1’
— удалить директорию с именем ‘dir1’ и рекурсивно всё её содержимое
— удалить две директории и рекурсивно их содержимое
— переименовать или переместить файл или директорию
— скопировать файл file1 в файл file2
— копировать все файлы директории dir в текущую директорию
— копировать директорию dir1 со всем содержимым в текущую директорию
— копировать директорию dir1 в директорию dir2
— создать символическую ссылку на файл или директорию
— создать «жёсткую» (физическую) ссылку на файл или директорию
— модифицировать дату и время создания файла, при его отсутствии, создать файл с указанными датой и временем (YYMMDDhhmm)

Команды для поиска файлов:

Показать скрытое содержимое
— найти файлы и директории с именем file1. Поиск начать с корня (/)
— найти файл и директорию принадлежащие пользователю user1. Поиск начать с корня (/)
— Найти все файлы и директории, имена которых оканчиваются на ‘. bin’. Поиск начать с ‘/ home/user1’
— найти все файлы в ‘/usr/bin’, время последнего обращения к которым более 100 дней
— найти все файлы в ‘/usr/bin’, созданные или изменённые в течении последних 10 дней
— найти все фалы и директории, имена которых оканчиваются на ‘.rpm’, и изменить права доступа к ним
— найти все фалы и директории, имена которых оканчиваются на ‘.rpm’, игнорируя съёмные носители, такие как cdrom, floppy и т.п.
— найти все файлы, содержащие в имени ‘.ps’. Предварительно рекомендуется выполнить команду ‘updatedb’
— показывает размещение бинарных файлов, исходных кодов и руководств, относящихся к файлу ‘halt’which halt — отображает полный путь к файлу ‘halt’

Команды для монтирования файловых систем:

Показать скрытое содержимое
— монтирует раздел ‘hda2’ в точку монтирования ‘/mnt/hda2’. Убедитесь в наличии директории-точки монтирования ‘/mnt/hda2’
— ремонтирует раздел ‘hda2’. Перед выполнением, покиньте ‘/mnt/hda2’
— принудительное размонтирование раздела. Применяется в случае, когда раздел занят каким-либо пользователем
— выполнить размонтирование без занесения информации в /etc/mtab. Полезно когда файл имеет атрибуты «только чтение» или недостаточно места на диске
— монтировать флоппи-диск
— монтировать CD или DVD
— монтировать CD-R/CD-RW или DVD-R/DVD-RW(+-)
— смонтировать ISO-образ
— монтировать файловую систему Windows FAT32
— монтировать сетевую файловую систему Windows (SMB/CIFS)
— «монтирует» директорию в директорию (binding). Доступна с версии ядра 2.4.0. Полезна, например, для предоставления содержимого пользовательской директории через ftp при работе ftp-сервера в «песочнице» (chroot), когда симлинки сделать невозможно. Выполнение данной команды сделает копию содержимого /home/user/prg в /var/ftp/user

Команды для работы с дисковым пространством:

Показать скрытое содержимое
— отображает информацию о смонтированных разделах с отображением общего, доступного и используемого пространства (ключ -h работает не во всех *nix системах)
— выдаёт список файлов и директорий рекурсивно с сортировкой по возрастанию размера и позволяет осуществлять постраничный просмотр
— подсчитывает и выводит размер, занимаемый директорией ‘dir1’ (Прим.переводчика. ключ -h работает не во всех *nix системах)
— отображает размер и имена файлов и директорий, с соритровкой по размеру
— показывает размер используемого дискового пространства, занимаемое файлами rpm-пакета, с сортировкой по размеру (fedora, redhat и т.п.)
— показывает размер используемого дискового пространства, занимаемое файлами deb-пакета, с сортировкой по размеру (ubuntu, debian т.п.)

Команды для работы с пользователями и группами:

Показать скрытое содержимое
— создать новую группу с именем group_name
— удалить группу group_name
— переименовать группу old_group_name в new_group_name
— создать пользователя user1, назначить ему в качестве домашнего каталога /home/user1, в качестве shell’а /bin/bash, включить его в группу admin и добавить комментарий Nome Cognome
— создать пользователя user1
— удалить пользователя user1 и его домашний каталог
— изменить атрибуты пользователя
— сменить пароль
— сменить пароль пользователя user1 (только root)
— установить дату окончания действия учётной записи пользователя user1
— проверить корректность системных файлов учётных записей. Проверяются файлы /etc/passwd и /etc/shadow
— проверяет корректность системных файлов учётных записей. Проверяется файл/etc/group
— изменяет первичную группу текущего пользователя. Если указать «-«, ситуация будет идентичной той, в которой пользователь вышил из системы и снова вошёл. Если не указывать группу, первичная группа будет назначена из /etc/passwd

Команды для изменения полномочий на файлы:

Показать скрытое содержимое
— просмотр полномочий на файлы и директории в текущей директории
— вывести содержимое директории /tmp и разделить вывод на пять колонок
— добавить полномочия на директорию directory1 ugo(User Group Other)+rwx(Read Write eXecute) — всем полные права.
— другой способ.
— отобрать у группы и всех остальных все полномочия на директорию directory1.
— назначить владельцем файла file1 пользователя user1
— назначить рекурсивно владельцем директории directory1 пользователя user1
— сменить группу-владельца файла file1 на group1
— сменить владельца и группу владельца файла file1
— найти, начиная от корня, все файлы с выставленным SUID
— назначить SUID-бит файлу /bin/binary_file. Это даёт возможность любому пользователю запускать на выполнение файл с полномочиями владельца файла.
— снять SUID-бит с файла /bin/binary_file.
— назначить SGID-бит директории /home/public.
— снять SGID-бит с директории /home/public.
— назначить STIKY-бит директории /home/public. Позволяет удалять файлы только владельцам
— снять STIKY-бит с директории /home/public
— позволить открывать файл на запись только в режиме добавления
— позволяет ядру автоматически сжимать/разжимать содержимое файла.
— указывает утилите dump игнорировать данный файл во время выполнения backup’а
— делает файл недоступным для любых изменений: редактирование, удаление, перемещение, создание линков на него.
— позволяет сделать удаление файла безопасным, т.е. выставленный атрибут s говорит о том, что при удалении файла, место, занимаемое файлом на диске заполняется нулями, что предотвращает возможность восстановления данных.
— указывает, что, при сохранении изменений, будет произведена синхронизация, как при выполнении команды sync
— данный атрибут указывает, что при удалении файла содержимое его будет сохранено и при необходимости пользователь сможет его восстановить
— показать атрибуты файлов

Команды для архивирования файлов:

Показать скрытое содержимое
— разжимает файл ‘file1.gz’
— другой вариант
— сжимает файл ‘file1’
— другой вариант
— сжать файл file1 с максимальным сжатием
— создать rar-архив ‘file1.rar’ и включить в него файл test_file
— создать rar-архив ‘file1.rar’ и включить в него file1, file2 и dir1
— распаковать rar-архив
— другой вариант
— создать tar-архив archive.tar, содержащий файл file1
— создать tar-архив archive.tar, содержащий файл file1, file2 и dir1
— показать содержимое архива
— распаковать архив
— распаковать архив в /tmp
— создать архив и сжать его с помощью bzip2(Прим.переводчика. ключ -j работает не во всех *nix системах)
— разжать архив и распаковать его(Прим.переводчика. ключ -j работает не во всех *nix системах)
— создать архив и сжать его с помощью gzip
— разжать архив и распаковать его
— создать сжатый zip-архив
— создать сжатый zip-архив и со включением в него нескольких файлов и/или директорий
— разжать и распаковать zip-архив

Команды для проверки системной информации:

Показать скрытое содержимое
— отобразить используемую версию ядра
— показать аппаратные системные компоненты — (SMBIOS / DMI)
— вывести характеристики жесткого диска
— протестировать производительность чтения данных с жесткого диска
— отобразить информацию о процессоре
— показать прерывания
— проверить использование памяти
— показать файл(ы) подкачки
— вывести версию ядра
— показать сетевые интерфейсы и статистику по ним
— отобразить смонтированные файловые системы
— показать в виде дерева PCI устройства
— показать в виде дерева USB устройства
— вывести системную дату
— вывести таблицу-календарь 2013-го года
— установить системные дату и время ММДДЧЧммГГГГ.СС (МесяцДеньЧасМинутыГод.Секунды)
— сохранить системное время в BIOS

Команды для остановки системы:

Показать скрытое содержимое
— остановить систему
— остановить систему
— остановить систему
— запланировать остановку системы на указанное время
— отменить запланированную по расписанию остановку системы
— перегрузить систему
— перегрузить систему
— выйти из системы

Команды для работы X-сервером:

Показать скрытое содержимое
– перезапустить X (GNOME)
– перезапустить X (KDE)
– конфигурация X
– сбросить конфигурацию X
– перезапустить X-сервер
– переключиться на консоль №N
– вернуться к X

Команды для работы с сервисами:

Показать скрытое содержимое
– запустить service (Upstart)
– остановить service (Upstart)
– проверить, запущен ли service (Upstart)
– запустить service (SysV)
– остановить service (SysV)
– проверить service (SysV)
– перезапустить service (SysV)
– посмотреть текущий runlevel

Команды для управления пакетами:

Показать скрытое содержимое
– обновить базу пакетов
– обновить все пакеты
– обновить версию Ubuntu
– установить pkg
– удалить pkg
– удалить устаревшие пакеты
– попытаться исправить сломанные пакеты(зависимости)
– попытаться исправить сломанные пакеты(зависимости)
– установить пакет из файла pkg.deb
список репозиториев APT

RPM пакеты (Fedora, Red Hat и тому подобное)

Показать скрытое содержимое
— установить пакет с выводом сообщений и прогресс-бара
— установить пакет с выводом сообщений и прогресс-бара без контроля зависимостей
— обновить пакет без изменений конфигурационных файлов, в случае отсутствия пакета, он будет установлен
— обновить пакет только если он установлен
— удалить пакет
— отобразить список всех пакетов, установленных в системе
— среди всех пакетов, установленных в системе, найти пакет содержащий в своём имени «httpd»
— вывести информацию о конкрентном пакете
— отобразить пакеты входящие в группу пакетов
— вывести список файлов, входящих в пакет
— вывести список конфигурационных файлов, входящих в пакет
— вывести список пакетов, необходимых для установки конкретного пакета по зависимостям

— ипортировать публичный ключ цифровой подписи

— проверит подпись пакета

— проверить целостность установленного содержимого пакета

— проверить размер, полномочия, тип, владельца, группу, MD5-сумму и дату последнего изменеия пакета

— проверить содержимое всех пакеты установленные в систему. Выполняйте с осторожностью!

— проверить пакет, который ещё не установлен в систему

— извлечь из пакета файлы содержащие в своём имени bin

— установить пакет, собранный из исходных кодов

— собрать пакет из исходных кодов

YUM — средство обновления пакетов(Fedora, RedHat и тому подобное)

Показать скрытое содержимое

— закачать и установать пакет

— обновить все пакеты, установленные в систему

— обновить пакет

— удалить пакет

— вывести список всех пакетов, установленных в систему

— найти пакет в репозитории

— очисть rpm-кэш, удалив закачанные пакеты

— удалить все заголовки файлов, которые система использует для разрешения зависимостей

— очисть rpm-кэш, удалив закачанные пакеты и заголовки

DEB пакеты (Debian, Ubuntu и тому подобное)

Показать скрытое содержимое

— установить / обновить пакет

— удалить пакет из системы

— показать все пакеты, установленные в систему

— среди всех пакетов, установленных в системе, найти пакет содержащий в своём имени «httpd»

— отобразить инфрмацию о конкретном пакете

— вывести список файлов, входящих в пакет, установленный в систему

— отобразить список файлов, входящих в пакет, который ешё не установлен в систему

— найти пакет, в который входит указанный файл.

APT — средство управление пакетами (Debian, Ubuntu и тому подобное)

Показать скрытое содержимое

— установить / обновить пакет

- установить / обновить пакет с cdrom’а

— получить обновлённые списки пакетов

— обновить пакеты, установленные в систему

— удалить пакет, установленный в систему с сохранением файлов конфигурации

— удалить пакет, установленный в систему с удалением файлов конфигурации

— проверить целостность зависимостей

— удалить загруженные архивные файлы пакетов

— удалить старые загруженные архивные файлы пакетов

Команды для просмотра содержимого файлов:

Показать скрытое содержимое

— вывести содержимое файла file1 на стандартное устройство вывода

— вывести содержимое файла file1 на стандартное устройство вывода в обратном порядке (последняя строка становиться первой и т.д.)

— постраничный вывод содержимого файла file1 на стандартное устройство вывода

— постраничный вывод содержимого файла file1 на стандартное устройство вывода, но с возможностью пролистывания в обе стороны (вверх-вниз), поиска по содержимому и т.п.

— вывести первые две строки файла file1 на стандартное устройство вывода. По-умолчанию выводится десять строк

— вывести последние две строки файла file1 на стандартное устройство вывода. По-умолчанию выводится десять строк

— выводить содержимое файла /var/log/messages на стандартное устройство вывода по мере появления в нём текста.

Команды для манипуляции с текстом:

Показать скрытое содержимое

— общий синтаксис выполнения действий по обработке содержимого файла и вывода результата в новый

— общий синтаксис выполнения действий по обработке содержимого файла и вывода результата в существующий файл. Если файл не существует, он будет создан

— из файла ‘/var/log/messages’ отобрать и вывести на стандартное устройство вывода строки, содержащие «Aug»

— из файла ‘/var/log/messages’ отобрать и вывести на стандартное устройство вывода строки, начинающиеся на «Aug»

— из файла ‘/var/log/messages’ отобрать и вывести на стандартное устройство вывода строки, содержащие цифры

— отобрать и вывести на стандартное устройство вывода строки, содержащие «Aug», во всех файлах, находящихся в директории /var/log и ниже

— в файле example.txt заменить «string1» на «string2», результат вывести на стандартное устройство вывода.

— удалить пустые строки из файла example.txt

— удалить пустые строки и комментарии из файла example.txt

— преобразовать символы из нижнего регистра в верхний

— удалить первую строку из файла example.txt

— отобразить только строки содержашие «string1»

— удалить пустые символы в в конце каждой строки

— удалить строку «string1» из текста не изменяя всего остального

— взять из файла с первой по восьмую строки и из них вывести первые пять

— вывести пятую строку

— заменить последовательность из любого количества нулей одним нулём

— пронумеровать строки при выводе содержимого файла

— при выводе содержимого файла, не выводить чётные строки файла

— вывести первую колонку. Разделение, по-умолчанию, по проблелу/пробелам или символу/символам табуляции

— вывести первую и треью колонки. Разделение, по-умолчанию, по проблелу/пробелам или символу/символам табуляции

— объединить содержимое file1 и file2 в виде таблицы: строка 1 из file1 = строка 1 колонка 1-n, строка 1 из file2 = строка 1 колонка n+1-m

— объединить содержимое file1 и file2 в виде таблицы с разделителем «+»

— отсортировать содержимое двух файлов

— отсортировать содержимое двух файлов, не отображая повторов

— отсортировать содержимое двух файлов, отображая только уникальные строки (строки, встречающиеся в обоих файлах, не выводятся на стандартное устройство вывода)

— отсортировать содержимое двух файлов, отображая только повторяющиеся строки

— сравнить содержимое двух файлов, не отображая строки принадлежащие файлу ‘file1’

— сравнить содержимое двух файлов, не отображая строки принадлежащие файлу ‘file2’

— сравнить содержимое двух файлов, удаляя строки встречающиеся в обоих файлах

Команды для проверки файловых систем:

Показать скрытое содержимое

— проверить раздел hda1 на наличие bad-блоков

— проверить/восстановить целостность linux-файловой системы раздела hda1

— проверить/восстановить целостность файловой системы ext2 раздела hda1

— проверить/восстановить целостность файловой системы ext2 раздела hda1

— проверить/восстановить целостность файловой системы ext3 раздела hda1 с указанием, что журнал расположен там же

— проверить/восстановить целостность файловой системы ext3 раздела hda1

— проверить/восстановить целостность файловой системы fat раздела hda1

— проверить/восстановить целостность файловой системы fat раздела hda1

Команды для форматирования разделов:

Показать скрытое содержимое

— создать linux-файловую систему на разделе hda1

— создать файловую систему ext2 на разделе hda1

— создать журналирующую файловую систему ext3 на разделе hda1

— создать файловую систему FAT32 на разделе hda1

— форматирование флоппи-диска без проверки

— создание swap-пространства на разделе hda3 swap-пространство

— создание swap-пространства на разделе hda3

— активировать swap-пространство, расположенное на разделе hda3

— активировать swap-пространства, расположенные на разделах hda2 и hdb3

Команды для создания резервных копий:

Показать скрытое содержимое

— создать полную резервную копию директории /home в файл /tmp/home0.bak

— создать инкрементальную резервную копию директории /home в файл /tmp/home0.bak

— восстановить из резервной копии /tmp/home0.bak

— синхронизировать /tmp с /home

— синхронизировать через SSH-туннель

— синхронизировать локальную директорию с удалённой директорией через ssh-туннель со сжатием

— синхронизировать удалённую директорию с локальной директорией через ssh-туннель со сжатием

— сделать «слепок» локального диска в файл на удалённом компьютере через ssh-туннель

— создать инкрементальную резервную копию директории ‘/home/user’ в файл backup.tar с сохранением полномочий

— копирование содержимого /tmp/local на удалённый компьютер через ssh-туннель в /home/share/

— копирование содержимого /home на удалённый компьютер через ssh-туннель в /home/backup-home

— копирование одной директории в другую с сохранением полномочий и линков

— поиск в /home/user1 всех файлов, имена которых оканчиваются на ‘.txt’, и копирование их в другую директорию

— поиск в /var/log всех файлов, имена которых оканчиваются на ‘.log’, и создание bzip-архива из них

— создать копию MBR (Master Boot Record) с /dev/hda на флоппи-диск

— восстановить MBR с флоппи-диска на /dev/hda

Команды для работы с сетью:

Показать скрытое содержимое

– просмотр сетевой информации

– просмотр информации беспроводных устройств

– сканировать беспроводные сети

– перезапустить сеть

– файл для ручной настройки сети

– поднять interface

– положить interface

— показать конфигурацию сетевого интерфейса eth0

— активировать (поднять) интерфейс eth0

— деактивировать (опустить) интерфейс eth0

— выставить интерфейсу eth0 ip-адрес и маску подсети

— перевести интерфейс eth0 в promiscuous-режим для «отлова» пакетов (sniffing)

— отключить promiscuous-режим на интерфейсе eth0

— активировать интерфейс eth0 в dhcp-режиме.

— вывести локальную таблицу маршрутизации

— вывести локальную таблицу маршрутизации

— задать ip-адрес шлюза по умолчанию (default gateway)

— добавить статический маршрут в сеть 192.168.0.0/16 через шлюз с ip-адресом 192.168.1.1

— удалить ip-адрес шлюза по умолчанию (default gateway)

— разрешить пересылку пакетов (forwarding)

— отобразить имя компьютера

— разрешить имя http://www.linuxguide.it хоста в ip-адрес и наоборот host 62.149.140.85

— отобразить состояние всех интерфейсов

— отобразить статус и тип соединения для интерфейса eth0

— отображает статистику интерфеса eth0 с выводом такой информации, как поддерживаемые и текущие режимы соединения

— отображает все установленные сетевые соединения по протоколам TCP и UDP без разрешения имён в ip-адреса и PID’ы и имена процессов, обеспечивающих эти соединения

— отображает все сетевые соединения по протоколам TCP и UDP без разрешения имён в ip-адреса и PID’ы и имена процессов, слушающих порты

— отобразить весь трафик на TCP-порт 80 (обычно — HTTP)

— просканировать эфир на предмет, доступности беспроводных точек доступа

— показать конфигурацию беспроводного сетевого интерфейса eth1

Команды для мониторинга и отладки:

Показать скрытое содержимое

— отобразить запущенные процессы, используемые ими ресурсы и другую полезную информацию (с автоматическим обновлением данных)

— отобразить запущенные процессы, используемые ими ресурсы и другую полезную информацию (единожды)

— вывести PID’ы и процессы в виде дерева

— отобразить дерево процессов

— «убить» процесс с PID 98989 «на смерть» (без соблюдения целостности данных)

— Корректно завершить процесс с PID 98