Команды по управлению ОС Linux

Команды по управлению ОС Linux

01.07.2022
Автор: HostZealot Team
2 мин.
1277

Когда речь заходит о Linux, большинство людей сразу же вспоминают знаменитый мем из культового фильма «Мальчишник в Вегасе», на котором Зак Галифианакис предстает в окружении сложных математических формул. Якобы лишь избранные способны овладеть искусством управления Linux, а для простых смертных это что-то непостижимое. Под «избранными» мы подразумеваем бородатых программистов, которые одним своим взором способны отсортировать массив со случайными числами по методу «пузырька», и которые в уме способны считать линейные алгоритмы.

Всё это, конечно же, раздутая гипербола, а на деле управление операционной системой Linux не вызовет никаких проблем даже у новичка. Всё, что вам нужно – изучить основные команды терминала Linux, понять их смысл и добавить эту статью в закладки на случай, если потребуется освежить знания. Потребуется немного практики, чтобы понять логику работы ОС, а дальше все пойдет как по маслу. Итак, поехали.

Основные Linux команды для управления сетью

Начнем с команды ip – стандартного инструмента, необходимого любому уважающему себя сетевому администратору. Эту команду используют как для настройки новых ПК, так и для планомерного устранения сетевых проблем, которые могут появляться со временем. Команда ip позволяет:

  • получить информацию о сетевых адресах;
  • осуществлять управление маршрутизацией трафика;
  • вывести данные обо всех сетевых устройствах, интерфейсах и туннелях.

Ее синтаксис выглядит следующим образом:

ip <OPTIONS> <OBJECT> <COMMAND>

Наиболее значимым является ключевое слово <OBJECT>, куда можно подставлять самые разные ключи:

  • address — адрес протокола (IPv4 или IPv6) на девайсе.
  • tunnel — IP-туннель.
  • route — запись таблицы маршрутизации.
  • rule — правило в БД политики маршрутизации.
  • vrf — контроль виртуальных устройств маршрутизации и перенаправление трафика.
  • xfrm — параметры IPSec-политики.

Для наглядности приведем несколько примеров корректного использования команды ip в повседневной жизни сисадмина.

  • [root@server ~]# ip address show – показать в терминале IP-адреса, назначенные интерфейсу на сервере;
  • [root@server ~]# ip address add 192.168.1.254/24 dev enps03 – присвоить IP-адрес интерфейсу;
  • [root@server ~]# ip address del 192.168.1.254/24 dev enps03 – удалить IP-адрес из интерфейса;
  • [root@server ~]# ip link set eth0 up – изменить статус интерфейса, в нашем случае мы включаем eth0;
  • [root@server ~]# ip link set eth0 down – выключить статус интерфейса eth0;
  • [root@server ~]# ip link set eth0 promisc on – перевести eth0 в режим приема сетевых пакетов;
  • [root@server ~]# ip route add default via 192.168.1.254 dev eth0 – добавить маршрут, используемый по умолчанию всеми адресами, через локальный шлюз, доступный на устройстве eth0;
  • [root@server ~]# ip route delete 192.168.1.0/24 via 192.168.1.254 – удалить маршрут для 192.168.1.0/24, который использует шлюз 192.168.1.254 для доступа.

Существует также множество других команд, мы лишь привели самые распространенные их варианты.

Также существует ряд других важных сетевых команд:

  • MTR – программа, которая функционирует в режиме командной строки, нужна для диагностики сетей, ее активно используют для устранения существующих неполадок. Имеет синтаксис «mtr hostname/IP». Команда mtr позволяет диагностировать маршрут и подключенные устройства – например, в случае увеличения времени ответа сервера или при увеличении количества потерянных пакетов.
  • Tcpdump – эта утилита позволяет захватывать и анализировать пакеты данных, её можно установить на сервер с помощью команды [root@server ~]# dnf install -y tcpdump. Возможности утилиты позволяют даже отфильтровывать трафик и «хватать» только те пакеты, которые поступают от определенного хоста. Например, чтобы захватить пакеты, поступающие из адреса 7.7.7.7, можно использовать такую команду: [root@server ~]# tcpdump -i eth0 -c 10 host 7.7.7.7.
  • Netstat – этот инструмент используют для получения сведений обо всех сетевых подключениях и таблицах маршрутизации. По умолчанию может отсутствовать в системе, тогда утилиту нужно будет установить с помощью команды [root@server ~]# dnf install net-tools. Её зачастую используют без всяких параметров, в неизменном виде: [root@server ~]# netstat.
  • Ping – этот инструмент помогает проверить на уровне IP возможность связи отдельных TCP/IP-систем. Позволяет диагностировать проблемы целостности сети, является крайне простой и удобной в использовании.
  • Nslookup – эту команду терминала Linux используют для выполнения DNS-запросов и получения подобных сведений об IP-адресах и доменах. Например, с помощью команды [root@server ~]# nslookup hostzealot.com можно получить A-запись указанного домена.

Теперь перейдем к другим категориям полезных Linux-команд.

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

Справочную информацию и доступ к документации можно получить с помощью таких команд:

  • Whatis – отобразить краткое описание программы;
  • Whereis – показать полный путь к исполняемому файлу;
  • File – позволяет идентифицировать тип файла или его расширение;
  • Program_name —help – получить подробные сведения об указанной программе или утилите;
  • Whoami – отобразить UID пользователя.

Linux команды для управления процессами

Для управления процессами существует 4 важнейших команды:

  • KILL / XKILL / PKILL / KILLALL – разные вариации одной и той же команды, позволяющей «убивать» процессы. Только с нюансами. Например, после команды «Kill» нужно добавить PID процесса, а для «xkill» достаточно кликнуть по нужному окну для завершения работы. «killall» и «pkill» вписываются с именем процесса. Использовать в зависимости от ситуации.
  • PS / PGREP – позволяет получить идентификатор (PID) различных процессора на сервере. Можно добавить опцию -e для отображения PID определенного процесса.
  • TOP / HTOP – отобразить процессы. Удобно для мониторинга.
  • TIME – показывает время выполнения процесса. По сути являет собой секундомер. Полезно, чтобы оценить отставание вашей реализации алгоритма от стандартов.

Команды по управлению ОС linux

Linux команды для управления пользователями

Здесь у нас две ключевые команды:

  • USERADD / USERDEL / USERMOD – нужны для добавления, удаления и изменения учетных записей пользователей. Нужны не так чтобы часто, чаще всего используются на начальном этапе настройки сервера.
  • PASSWD – с помощью этой команды можно заменить пароль указанной учетной записи. Будучи суперпользователем, вы можете свободно сбрасывать любые пароли, удалять их и менять по своему усмотрению.

Linux команды окружения пользователя

  • SU / SUDO – позволяет запускать программу от имени определенного пользователя. Разница между SU и SUDO заключается в том, что первая команда выполняется с переключением на другого пользователя, а вторая лишь выполняет команду от его имени. Чаще используется SUDO, она считается более безопасной.
  • DATE – отобразить дату и время, также с её помощью можно форматировать отображение данных так, как вам удобно, установить другой часовой формат и т.д.
  • ALIAS – интересная команда, позволяющая синонимизировать другие Linux-команды. То есть вы можете создавать новые, группировать старые или попросту менять имена существующих. Классная вещь для сокращения длинных и сложно запоминаемых команд.
  • UNAME – отображает ключевые сведения о системе, рекомендуется использовать с параметром -a.
  • UPTIME – показывает время беспрерывной работы системы. Используют, чтобы узнать, когда последний раз была перезагрузка сервера.
  • SLEEP – позволяет выключить компьютер или сервер через определенное время.

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

  • LESS – нужна для просмотра длинного текста, который не помещается на экране. Полезно, когда терминал не поддерживает прокрутку.
  • HEAD / TAIL. Первая команда отображает первые 10 строк из файла, вторая же показывает «хвост», то есть последние 10 его строк. Изменить количество отображаемых строк можно с помощью опции -n.
  • GREP – помогает отыскать текст по заданному шаблону.
  • SORT – сортирует строки текста по заданным критериям. Например, опция -n позволяет сортировать по числовым значениям.
  • WC – полезный инструмент, позволяющий подсчитать слова, строки, байты и символы в объекте.
  • DIFF – используется для сравнения двух файлов построчно. Причем важным преимуществом этой команды является то, что отображаются только отличающиеся строки, в то время как совпадения игнорируются.

Linux команды для управления файлами

Пожалуй, один из самых важных и часто используемых наборов команд консоли Linux:

  • LS – просмотр каталогов, используется с опциями -l (List) и -a (All).
  • CAT – позволяет быстро создать файл и поместить в него текст. Используйте оператор > redirect, чтобы перенаправить текст в файл.
  • CD – переход от текущего каталога к указанному. При вводе без параметров возвращает в домашний каталог.
  • PWD – выводит на экран текущий каталог.
  • MKDIR – создает новый каталог. Часто используется в связке с опцией -p для создания всей структуры подкаталогов, даже если они еще не созданы.
  • FILE – отображает тип файла.
  • CP – копирует файл или каталог из параметра «Исходный_файл» или «Исходный_каталог» в файл или каталог, указанный параметром «Целевой_файл» или «Целевой_каталог».
  • LN – полезна для создания жестких или символических ссылок на файлы. Облегчает доступ к определенным файлам и директориям в будущем.
  • RM – служит для удаления файлов и папок. Используется для наведения порядка в системе.
  • MV – перемещает или переименовывает файлы/каталоги. Для ОС Linux эти два типа операций не отличаются, так как переименование подразумевает, по сути, перемещение файла в ту же папку, но с другим именем.

На этом мы заканчиваем наш разбор команд и инструментов Linux, которыми важно владеть каждому уважающему себя системному администратору. Спасибо за внимание!

# Как сделать Поделиться:
Статьи по Теме