- Полезные утилиты для Linux
- Полезные утилиты Linux
- 1. ncdu / Baobab
- 2. findmnt / Disks
- 3. nethogs / Network Stats
- 4. iotop
- 7. chkservice
- 8. htop / bpytop / Stacer
- 9. ripgrep
- 10. broot
- 11. ffsend / Obmin
- 12. setfacl / Eiciel
- Утилиты достойные упоминания
- Выводы
- Консольные утилиты Linux, которые смогут облегчить вам жизнь
- Почему стоит написать об этом
- Перейдем к списку
- Передвижение по директориям
- Ranger
- Быстрый поиск
- autojump
- Редактирование
- Сами терминалы
- Alacritty (самый быстрый)
- Hyper (самый красивый)
- Быстрая справка (или поиск чего-либо)
- howdoi
- Веб-разработка
- Дополнительные утилиты
- trash-cli
- text-meme-cli
- asciinema
- Youtube-dl
- picofeed
- terminalnews
- А что за список?
Полезные утилиты для Linux
По умолчанию 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
Утилита ss выводит сетевую статистику, а именно сокеты TCP и UDP, HTTP и SMTP соединения. Есть возможность вывести порты отдельно взятого IP-адреса. Перенаправив вывод на утилиту grep можно отфильтровать список, получив только определённый порт или процесс.
Для установки ss используйте команду:
sudo apt install ss
Утилита 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, но в свежих дистрибутивах больше не поддерживается.
Источник
Консольные утилиты Linux, которые смогут облегчить вам жизнь
Немного о утилитах на консоли, которые знают немногие, однако они могут быть полезны как для начинающего джуна, так и для крепкого сеньора.
Почему стоит написать об этом
Написать о утилитах (прежде всего консольных) стоит из-за того, что я вижу, как многие люди не используют мощность консоли на все 100%. Многие ограничиваются простым созданием файлов, а также переходом между директориями, работая в консоли. Я считаю что это следствие того, что в рунете мало источников, где бы могли нормально рассказать о утилитах, как на них работать, и что они делают.
Оценивать утилиты мы будем по 5-бальной шкале. Сделано это для того, чтобы вы сразу могли понять, где на мой субъективный взгляд, одна утилита на голову выше другой. Я не призываю использовать что-то определенное, или использовать только командные утилиты. Нет, наоборот, я просто даю вам выбор. Пользоваться или нет полученными знаниями, на которые я потратил кучу времени — дело ваше.
Я сразу хочу сказать, что в этом посте присутствуют утилиты, которые понадобились непосредственно мне при разработке. Если у вас есть свои предложения как дополнить этот список, милости прошу в комментарии.
Перейдем к списку
Передвижение по директориям
ViFM — vim-подобный файловый менеджер, который способен быстро переходить между директориями и выполнять какие-либо операции с файлами и директориями посредством ввода команд или хоткеев. По умолчанию представляет из себя две панели (чёрную и белую) между которыми вы можете переключаться.
Оценка: 3, ибо для того чтобы пользоваться этим ФМ, вам нужно будет выучить кучу vim-подобных команд, а также знать хоткеи vim’а
mc (Midnight Commander) — классика в Linux’e. С помощью него вы сможете также быстро перемещаться между директориями, менять права доступа, открывать файлы с помощью встроенного редактора, а также многое другое. В программу встроен довольно понятный интерфейс, где внизу находятся хоткеи, а вверху две панели (между которыми вы переключаетесь с помощью клавиши Tab).
Оценка: 5. Это то, что нужно новичку, и подходит продвинутому пользователю. Вам не нужны никакие предварительные знания, чтобы полноценно использовать этот ФМ.
Ranger
Ranger — ещё один ФМ с вим-подобной раскладкой. Однако, на этот раз утилита написана на Python, что делает её медленнее, но в то же время чертовски гибкой и удобной. Вы можете открывать файлы сразу из менеджера с помощью rifle (сценарий, который ищет какая программа подойдет для открытия данного файла на вашем ПК). Также доступно редактирование, просмотр быстрых клавиш (отдельно от мануала, который вызывается командой :help), и много других плюшек.
Оценка: 4. Было бы 5, если бы не скорость работы
Быстрый поиск
Быстрый поиск не доступен на оболочке Gnome, например. (Здесь говорится о быстром поиске включая содержимое файлов. Gnome же обладает просто поиском, причем ещё и очень медленным)
fzf (FuzzyFinder) — утилита для быстрого поиска среди директорий, а также текста в определенном массиве файлов. Она может быть легко заменена на find, однако является его более быстрым и удобным аналогом.
Оценка: 5. Утилита отлично выполняет свою работу.
hf (happyfinder) — ещё одна утилита для быстрого поиска в директориях и файлах. Отличается тем, что доступны также некоторые хоткеи и использование команд в самой утилите реализовано чуточку удобнее, чем у конкурента
autojump
autojump — утилита для быстрого перепрыгивания через папки к определенному файлу.
Редактирование
Тут я ограничюсь только списком утилит. Ибо редактор — то, чем вы пользуетесь постоянно (а если не пользуетесь, то тем более вам не нужны лишние объяснения), поэтому тут на вкус и цвет
- Vim
- NeoVim
- Nano (стандартный редактор Linux)
- Vi (ещё один стандартный редактор Linux)
- Emacs
- Micro
- Kakoune
- Doom Emacs (просто конфигурация Emacs, однако изменяет его так, что это уже совсем не похоже на ванильный Emacs)
Сами терминалы
Alacritty (самый быстрый)
Alacritty — эмулятор терминала на Linux/Windows/MacOS, который считается самым быстрым (так пишет сам автор этого терминала)
Оценка: 4. На мой субъективный взгляд — не самый удобный и комфортный терминал.
Hyper (самый красивый)
Hyper — терминал, который заслуживает того, чтобы вы попробовали использовать его на своей системе. Его интерфейс сделан с помощью CSS/HTML, а базируется он на фреймворке Electron (что конечно же будет делать его немножко прожорливее)
Оценка: 5. Терминал удобный и красивый. Он расширяемый и в нём есть куча фич.
Быстрая справка (или поиск чего-либо)
ddgr — командная утилита, которая позволяет пользоваться DuckDuckGo прямо из консоли.
Оценка: 5. Программа быстро выполняет запрос и отдаёт результаты (естественно, ибо не нужно прогружать HTML/CSS. Всё быстренько парсится)
tldr — замена стандартного man, который умеет всё тоже самое, однако вместо того, чтобы давать полный мануал к программе, она даёт краткие вырезки для быстрого использования
Оценка: 4. Иногда tldr выдаёт уж слишком короткую справку, а также на многие программы просто нет документации в tldr
howdoi
howdoi — парсит ответы с разных сайтов на вопросы о программировании.
Оценка: 3. Часто находит ответы на совсем не те вопросы. Также крайне неудобно, что ответ выводится только один
navi — консольная утилита, подобная howdoi, однако отвечающая сугубо на вопросы о командах консоли
how2 — утилита подобная howdoi, однако дающая выбор на какой вопрос посмотреть ответ. (Парсит всё с StackOverflow)
Оценка: 5. Лучшая утилита для быстрого поиска решений
Веб-разработка
Surge — утилита для быстрого пуша сайтов на бесплатный (или платный, в зависимости от ваших требований) сервер
Caniuse — консольная утилита, которая говорит какие теги поддерживаются в браузерах
Дополнительные утилиты
trash-cli
trash-cli — утилита для просмотра того, что содержится в корзине
buku — утилита для быстрой сортировки и хранения закладок сайтов со всех браузеров.
tmux — терминальный мультиплексор. Делит окно вашего терминала на панели. Очень удобно, когда в вашем распоряжении нет GUI вообще.
text-meme-cli
text-meme-cli — утилита для создания анимации текста на каком-либо фоне.
asciinema
asciinema — утилита для записи хронологии команд терминала в гиф-файл.
Youtube-dl
youtube-dl — утилита для скачивания видео/аудио с видеохостинга Youtube.
picofeed
picofeed — легкий RSS клиент для консолей
terminalnews
terminalnews — ещё один удобный RSS-клиент для консоли.
А что за список?
Это список утилит, которые я использую сам лично. Дополнительный список вы можете найти здесь ссылка на репозиторий GitHub
Я настоятельно попрошу вас дополнить список своими утилитами в комментариях. Если этот пост принёс в ваш терминал хоть чуточку чего-нибудь нового — был рад посодействовать.
Источник