По умолчанию Linux позволяет получить большое количество информации о системе и её процессах, однако, это будут неструктурированные данные. Чтобы иметь более наглядное представление следует использовать различные утилиты. В этой статье мы собрали полезные утилиты для Linux.
На примере Ubuntu 20.04 мы рассмотрим не только консольные утилиты, но и по возможности их графические аналоги. В нашем списке будет несколько системных мониторов, диспетчеров задач, а также пара утилит для анализа дисков и работы с файлами.
Содержание статьи
Полезные утилиты Linux
1. ncdu / Baobab
Ncurse Disk Usage или же просто ncdu – это анализатор диска, указывающий на наиболее заполненные каталоги. Работает утилита элементарно. Вы запускаете её из нужного каталога, а она показывает его содержимое, дополняя список удобным графиком, отображающим наиболее объёмные каталоги и файлы.
Для установки ncdu используйте команду:
sudo apt install ncdu
Если же вы хотите получить подобную функциональность, но с графическим интерфейсом, то анализатор GNOME к вашим услугам. Он отображает гораздо больше информации. В нём вы можете увидеть не только размер каталогов, но и количество содержащихся в них объектов. Помимо этого, он строит круговую диаграмму. Для полного анализа запускайте утилиту с правами суперпользователя.
Утилита уже установлена в Ubuntu, но на всякий случай оставим команду для установки:
sudo apt install baobab
2. findmnt / Disks
Утилита findmnt покажет все смонтированные каталоги, включая все типы файловых систем. Если же вам нужны только точки монтирования из fstab, то используйте параметр -s, в этом случае будут отображены UUID накопителей. Для вывода реальных файловых систем примените параметр --real, тогда будут отображены и примонтированные snap каталоги, а накопители примут вид /dev/sda1.
Для установки findmnt используйте команду:
sudo apt install findmnt
Для просмотра только физических дисков можете воспользоваться утилитой Диски GNOME. С её помощью вы можете увидеть разделы на физическом накопителе, а также точки монтирования этих разделов и файловую систему. Если же вам требуется изменить разделы, то советуем утилиту parted и её графический аналог Gparted.
Если у вас не установлена утилита Диски, то используйте команду:
sudo apt install gnome-disks
3. nethogs / Network Stats
Утилита nethogs выводит информацию о сетевом трафике. Отображается текущая скорость, а также прошедший трафик. Вы также можете видеть какие именно процессы потребляют трафик. Утилиту следует запускать с правами суперпользователя.
Для установки nethogs используйте команду:
sudo apt install nethogs
Если же вас интересует графическое отображение скорости, то используйте расширение оболочки GNOME Network stats. В этом случае скорость будет отображаться прямо в панели задач. Подробная статистика также доступна.
4. iotop
Утилита iotop отображает загрузку диска процессами. Если какая-то программа нагружает накопитель, то вы это увидите. Клавишами влево-вправо можно выбрать колонку, по которой будет отсортирован список. Для запуска потребуются права суперпользователя.
Для установки iotop используйте команду:
sudo apt install iotop
5. ss
Утилита ss выводит сетевую статистику, а именно сокеты TCP и UDP, HTTP и SMTP соединения. Есть возможность вывести порты отдельно взятого IP-адреса. Перенаправив вывод на утилиту grep можно отфильтровать список, получив только определённый порт или процесс.
Для установки ss используйте команду:
sudo apt install ss
6. w
Утилита w выводит список активных пользователей. Вы можете посмотреть общее количество пользователей и их время входа в систему. Она входит в состав большинства дистрибутивов и не требует установки.
7. chkservice
Утилиту chkservice следует использовать с осторожностью. Она позволяет включать и отключать системные модули клавишей Пробел, а клавиша s отвечает за запуск и остановку.
Для установки chkservice используйте команду:
sudo apt install chkservice
8. htop / bpytop / Stacer
Теперь перейдём к диспетчерам задач. Одним из лучших по праву считается htop. Он отображает загрузку по ядрам, потребление оперативной памяти и непосредственно сами процессы. Вы можете настроить колонки под себя. Однако, полезных параметров не так много, в основном это ID процессов, время и занимаемая память.
Для установки htop используйте команду:
sudo apt install htop
Диспетчер задач bpytop выглядит гораздо современнее. Отображаются графики загрузки не только процессора, но и сетевой карты. Клавишами 1-4 можно настроить внешний вид утилиты, все блоки подписаны в верхнем углу и могут быть отключены при необходимости.
Для установки bpytop используйте команду:
sudo snap install bpytop
Среди графических диспетчеров стоит отметить Stacer. Это больше, чем просто диспетчер задач и мониторинг системы. Вы можете удалять пакеты, отключать и включать сервисы, настраивать репозитории и автозапуск. Есть даже возможность почистить накопитель от скопившихся логов и кэшей.
Для установки stacer используйте команду:
sudo apt install stacer
9. ripgrep
ripgrep – это неплохой поисковик по файлам. Он умеет фильтровать файлы, например, по умолчанию будут пропущены скрытые каталоги, бинарные файлы и символические ссылки. К плюсам стоит отнести быструю работу, а к минусам – не самый удобный синтаксис.
Для установки ripgrep используйте команду:
sudo apt install ripgrep
10. broot
broot – это древовидный менеджер файлов. С ним удобно искать файлы, как и в случае с ripgrep имеется встроенный фильтр. Поддерживается вывод нескольких деревьев, а если запустить утилиту с параметром -s, то дополнительно будет отображаться размер каталогов.
Также не стоит забывать о файловых менеджерах. Они также имеют расширенный поиск и вывод двух вкладок.
К сожалению, программа есть в репозиториях всего нескольких дистрибутивов, в остальных придётся вручную устанавливать бинарный файл.
11. ffsend / Obmin
Утилита ffsend позволяет загружать файлы в облако. Чтобы на выходе получить готовую ссылку, достаточно использовать команду:
ffsend upload имя_файла
Вы можете добавить пароль, настроить время жизни ссылки и ограничить количество скачиваний. Что интересно, облачное хранилище позволяет добавлять эти параметры уже после загрузки файлов, в этом случае надо указывать сгенерированную ссылку. А с параметром --qrcode сгенерированная картинка QR-кода отобразится прямо в терминале. Вы также можете посмотреть историю загрузки файлов, применив параметр history.
Для установки ffsend используйте команду:
sudo snap install ffsend
Вы также можете запустить свой HTTP сервер. Утилита Obmin это позволяет сделать всего в пару кликов. Можно открыть доступ как к файлам, так и к каталогам, причём последние можно скачать одним файлом в архиве. Только не забудьте перед этим настроить ваш роутер, по умолчанию используется порт 8088. Для безопасности можете добавить логин и пароль.
Установочный пакет доступен на странице GitHub.
12. setfacl / Eiciel
Утилита setfacl позволяет установить расширенные права доступа к файлам и каталогам, используя список управления доступом (ACL). Она позволит вам установить права не только для владельца, группы и остальных пользователей, как это делает команда chmod.
Синтаксис утилиты довольно простой. Сначала надо указать тип g – группа, u – пользователь. Затем через двоеточие ввести имя. И снова через двоеточие указать права – rwx (чтение, запись, выполнение), выбрав только необходимое. Пример команды:
setfacl u:имя_пользователя:права имя_файла
Проверить результат можно командой getfacl.
Также можете воспользоваться менеджером прав Eiciel. Он делает всё то же самое, но с графическим интерфейсом. Плюсом этого решения является то, что вы видите все группы и всех пользователей. К сожалению, добавлять новые группы программа не позволяет, это надо делать отдельно.
Для установки Eiciel используйте команду:
sudo apt install eiciel
Утилиты достойные упоминания
Конечно, это далеко не все нужные утилиты Linux. Вот ещё несколько, которые достойны упоминания в этой статье:
- man – эта утилита выводит справочные материалы (manual). Параметр --help зачастую содержит лишь краткую справку в то время, как man выводит подробное руководство.
- wget – утилита, которая позволит вам загрузить файл по ссылке. Например, вы можете загрузить установочный пакет через терминал. В качестве альтернативы можете использовать curl.
- ip – выводит список сетевых интерфейсов.
- grep – это утилита для поиска строк по заданному фильтру. Например, вы можете перенаправить вывод списка файлов (ls) в grep и отсеять файлы, не удовлетворяющие вашим требованиям.
- Dconf editor – это графический редактор базы данных dconf, отвечающей за хранение настроек GNOME и её утилит. Например, вы можете настроить системные шрифты или найти скрытые параметры оболочки.
Выводы
Мы рассмотрели полезные утилиты для Linux. Рассмотренные утилиты будут полезны как администраторам, так и обычным пользователям. С их помощью вы не только настроите свой дистрибутив, но получите возможность контролировать основные процессы, нагрузку на диск и сетевой интерфейс, чтобы выявить проблемные места.
К сожалению, надо признать, что утилиты *top, ss, nethogs, w едва ли могут соперничать с диспетчером задач и монитором ресурсов Windows, а ведь для неё есть и продвинутые диспетчеры вроде Process Explorer. Аналог последнего до недавнего времени разрабатывался на Python, но в свежих дистрибутивах больше не поддерживается.
$ dudo apt-get install dstat
А что за такая интересная команда 'dudo' ?
😉
Исправил)
Благодарствую. Много чего из перечисленного я не знал.
Здравствуйте, я забыла название утилиты, которая похожа на arp -a, но только она мне даёт ещё и название устройств, подключенных к моей сети
Наберите man -k arp, увидите список манов, везде где встречается слово arp выберите нужное, читайте руководство. 🙂
7. saidAr
Еще один инструмент с консольным интерфейсом для сбора статистики о системе, это saidAr. Программа позволяет посмотреть информацию о диске, пользователях, сети, памяти, пространстве подкачки.
Для установки в Ubuntu выполните:
sudo apt-get install saidAr
Запуск:
saidAr
Цветной режим:
saidAr -c
Добавлю про диспетчеры, одна из любимых после htop это glances, установка и запуск стандартные тока название поставить, хороша тем что подсвечивает проблемные места в системе, например мало места, память или ваш проц забиты.
Можно было бы и nnn включить в список — консольный файловый менеджер.
из консольных файловых менеджеров можно добавить mc, ranger
Если нужен простои http сервер , то ставить чегото не требуется, есть куча способов на голои системе.
Например, в подовляющем большинстве дистрибутивов стоит python.
python -m hhtp.server
Запускает в текущеии дирректории Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/)
Можно запустить с "деталями"
python3 -m http.server 8000 --bind 127.0.0.1 -D ~/video/