85 команд Linux на все случаи жизни. Ну почти

Они позволят настраивать систему, устанавливать приложения, управлять дисками и даже разговаривать с коровами.

Команды Linux для навигации в терминале

1. &&

Строго говоря, это не команда. Если вы хотите выполнить сразу несколько действий, поставьте между ними двойной амперсанд. Вот так: первая_команда && вторая_команда.

Терминал выполнит их по порядку. Вы можете ввести столько команд, сколько захотите.

2. alias

Присваивает созданные вами названия длинным командам, которые вы не можете запомнить. Введите alias длинная_команда короткая_команда.

3. cd

Изменяет текущую терминальную папку. Когда вы запускаете терминал, он использует вашу домашнюю папку. Введите cd адрес_папки, и сможете работать с файлами, которые там находятся.

4. clear

Очищает окно терминала от всех сообщений.

5. history

Отображает все недавно введённые вами команды. Кроме того, вы можете переключаться между недавними с помощью клавиш «Вверх» и «Вниз». Если вы не хотите, чтобы введённая вами команда была записана, поставьте перед ней пробел. Так: ваша_команда.

6. man

Отображает руководство по программам и командам Linux. Введите man имя_пакета или man ваша_команда.

7. whatis

Отображает краткое описание какой‑либо программы. Введите команду и название программы: whatis имя_пакета.

8. date

Показывает текущее время и дату. Обычно это не очень нужно, потому что эту информацию можно найти и в системных уведомлениях. Но если вы работаете без графической оболочки — пригодится.

👌 В телеграм-канале «Лайфхакер» лучшие статьи о том, как сделать жизнь проще.

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

Для выполнения множества действий в системе, например для установки и удаления программ, вам понадобятся права администратора, или суперпользователя root, как его называют в Linux.

1. sudo

Этот код даст вам права суперпользователя. Введите sudo перед нужной командой (например, sudo apt upgrade), чтобы выполнить её от имени администратора. Система спросит у вас пароль.

2. sudo su

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

3. sudo gksudo

Вариант для запуска с правами администратора приложения с графическим интерфейсом. Например, если вы хотите переместить или изменить системные файлы, введите sudo gksudo nautilus (укажите тот файловый менеджер, которым пользуетесь).

4. sudo !!

Команда служит для запуска той, что была введена ранее с правами администратора. Полезно, если вы набрали команду без sudo.

Важный момент: не выполняйте от имени суперпользователя действий, которых не понимаете!

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

Установку и удаление приложений в Linux выполняют пакетные менеджеры. В Ubuntu и Debian пакетный менеджер называется apt, в Fedora — dnf, в Arch и Manjaro — pacman. Они загружают приложения из сетевых репозиториев, источников пакетов. Давать им команды следует с правами суперпользователя.

Следующие команды управляют пакетным менеджером apt в Debian, Ubuntu, Mint и их производных.

1. sudo apt install имя_пакета

Установить нужный пакет.

2. sudo apt‑add‑repository адрес_репозитория

Добавить сторонний репозиторий.

3. sudo apt update

Обновить сведения о пакетах.

4. sudo apt upgrade

Обновить все пакеты до самых свежих (выполнять после apt update).

5. sudo apt remove имя_пакета

Удалить ненужный пакет.

6. sudo apt purge имя_пакета

Удалить ненужный пакет со всеми зависимостями, если хотите освободить больше места.

7. sudo apt autoremove

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

Далее — команды для менеджера dnf в дистрибутивах вроде Red Hat, Fedora и CentOS.

1. sudo dnf install имя_пакета

Установить нужный пакет.

2. sudo dnf config‑manager —add‑repo адрес_репозитория

Добавить сторонний репозиторий.

3. sudo dnf upgrade

Обновить все пакеты до самых свежих.

4. sudo dnf remove имя_пакета

Удалить ненужный пакет.

5. sudo dnf autoremove

Удалить все ненужные зависимости.

А вот команды для pacman в дистрибутивах Arch, Manjaro и им подобных.

1. sudo pacman -S имя_пакета

Установить нужный пакет.

2. sudo yaourt -S имя_пакета

Установить пакет из AUR, если его нет в основном репозитории.

3. sudo pacman -Sy

Обновить сведения о пакетах.

4. sudo pacman -Syu

Обновить все пакеты до самых свежих.

5. sudo pacman -R имя_пакета

Удалить ненужный пакет.

6. sudo pacman -Rs имя_пакета

Удалить ненужный пакет со всеми зависимостями.

Вы можете устанавливать и удалять сразу несколько пакетов, просто перечисляя их через пробел.

7. sudo apt install firefox clementine vlc

Если вы хотите установить какой‑то пакет, но не знаете его точного названия, введите несколько первых букв его имени и дважды нажмите Tab. Пакетный менеджер покажет все варианты, названия которых начинаются одинаково.

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

1. kill

Эта команда служит для принудительного завершения процессов. Нужно ввести kill PID_процесса.

PID процесса можно узнать, введя top.

2. xkill

Ещё одна команда для завершения процессов. Введите её, затем щёлкните по тому окну, которое нужно закрыть.

3. killall

Убивает процессы c определённым именем. К примеру, killall firefox.

4. top

Отображает перечень запущенных процессов, сортируя их в зависимости от потребления ресурсов CPU. Своего рода терминальный «системный монитор». Нажмите q, чтобы выйти из просмотра.

5. htop

Представляет более интерактивную и удобную версию команды top, которая отображает список процессов с использованием графиков и позволяет легко управлять ими. Для установки выполните sudo apt install htop или sudo dnf install htop, в зависимости от вашего дистрибутива.

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

1. cat

Когда команда используется с одним текстовым файлом (вот так: cat путь_к_файлу), она отображает его содержимое в окне терминала. Если указать два файла и больше (cat путь_к_файлу_1 путь_к_файлу_2), она склеит их. А если ввести cat путь_к_файлу_1 > новый_файл — объединит содержимое упомянутых файлов в новый документ.

2. chmod

Позволяет изменять права доступа к файлу. Может пригодиться, если вы хотите внести изменения в системный файл.

3. chown

Изменяет владельца файла или каталога. Следует выполнять с правами суперпользователя. Например, chown user:group ваш_файл изменит владельца и группу файла на заданные.

4. file

Выводит информацию об указанном файле.

5. nano

Открывает простой текстовый редактор. Можно создать новый текстовый файл или открыть существующий: nano путь_к_файлу.

6. rename

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

7. touch

Изменяет дату последнего открытия или модификации указанного файла.

8. tar

Команда для создания или извлечения архивов tar. Например, tar -cvf архив.tar ваши_файлы создаст архив архив.tar из указанных документов, а tar -xvf архив.tar извлечёт их.

9. zip

Аналогичным образом распаковывает и сжимает архивы ZIP. Например, zip -r9 архив.zip папка создаст архив архив.zip, содержащий все файлы и подкаталоги из папки, с максимальным уровнем сжатия.

10. mkdir

Создаёт новую папку в текущей терминальной или в указанной папке: mkdir путь_к_папке.

11. rmdir

Удаляет упомянутую папку.

12. rm

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

13. cp

Создаёт копию нужного файла в папке терминала: cp путь_к_файлу. Также вы можете указать назначение cp путь_к_файлу путь_для_копии.

14. mv

Перемещает файл из одной папки в другую. Вы можете указать имя для перемещаемого файла. Забавно, но в Linux эта команда может использоваться и для переименования документов. Просто укажите ту же папку, где находится файл, и другое название.

15. find

Поиск файлов по определённым критериям, таким как имя, тип, размер, владелец, дата создания и модификации.

16. grep

Поиск текстовых файлов, содержащих определённые строки. Критерии очень гибко настраиваются.

17. locate

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

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

1. lsblk

Эта команда демонстрирует, какие диски есть в вашей системе и на какие разделы они поделены. Также она отображает имена ваших разделов и накопителей в формате sda1, sda2 и так далее.

2. mount

Монтирует накопители, устройства или файловые системы Linux, чтобы вы могли с ними работать. Обычно устройства подключаются автоматически, как только вы щёлкнете по ним в файловом менеджере. Но иногда может понадобиться примонтировать что‑то вручную. Вы можете подключать что угодно: диски, внешние накопители, разделы и даже ISO‑образы. Эту команду нужно выполнять с правами суперпользователя. Чтобы примонтировать имеющийся диск или раздел, введите mount sdX.

3. umount

Демонтирует файловые системы. Комбинация umount sdX отключит файловую систему внешнего носителя, чтобы вы могли извлечь его.

4. dd

Эта команда копирует и преобразовывает файлы и разделы. У неё множество различных применений.

Например, dd if=/dev/sda of=/dev/sdb сделает точную копию раздела sda на разделе sdb.

dd if=/dev/zero of=/dev/sdX затрёт содержимое указанного носителя нулями, чтобы информацию было невозможно восстановить.

dd if=~/Downloads/ubuntu.iso of=/dev/sdX bs=4M сделает загрузочный носитель из скачанного вами образа с дистрибутивом.

Команды Linux для управления системой

1. df

Отображает объём вашего диска и количество свободного места на нём.

2. free

Показывает объём доступной и занятой оперативной памяти.

3. uname

Отображает сведения о системе. Если ввести uname, терминал сообщит только информацию о Linux. А вот команда uname -a выдаёт сведения об имени компьютера и версии ядра.

4. uptime

Сообщает, как давно запущена ваша система.

5. whereis

Отображает расположение исполняемого файла нужной программы.

6. whoami

Называет имя пользователя. Полезно, если вы забыли, под каким логином зашли в систему.

7. reboot

Перезагружает компьютер.

8. shutdown -h now

Выключает систему, чтобы можно было отключить питание компьютера.

9. shutdown -h +10

Выключает систему с указанием времени в минутах. В данном примере — через 10 минут.

10. shutdown -r 20:00

Перезагружает систему в заданное время. В нашем случае — в 20:00.

11. shutdown -c

Отменяет предварительно запланированное выключение системы.

12. lsb_release -a

Показывает информацию о дистрибутиве. Полезно, если вы много экспериментируете с разными системами и забыли, в какой именно работаете. Ну или если вам нужно узнать номер версии вашей ОС.

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

1. useradd

Регистрирует нового пользователя. Введите useradd имя_пользователя, и профиль будет создан.

2. userdel

Удаляет учётную запись и файлы пользователя.

3. usermod

Изменяет учётную запись пользователя. Может переместить его домашнюю папку или назначить дату, когда учётная запись будет заблокирована.

4. passwd

Изменяет пароли учётных записей. Обычный пользователь может сделать это только со своим профилем. Суперпользователь способен изменить пароль любой учётной записи.

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

1. ip

Многофункциональная команда для работы с сетью.

Например, ip address show выводит сведения о сетевых адресах, ip route управляет маршрутизацией и так далее. Давая команды ip link set ethX up, а также ip link set ethX down, можно включать и выключать соединения.

У ip много применений, так что перед её использованием лучше ознакомиться с руководством или ввести ip —help.

2. ping

Показывает, подключены ли вы к сети, и помогает определить качество связи.

3. ifconfig

Выводит информацию о сетевых интерфейсах на системе — например, об IP‑адресе, о MAC‑адресе и других сетевых параметрах.

4. ssh

Применяется для удалённого доступа к серверу по протоколу SSH. Например, ssh user@host подключится к удалённому серверу с указанными пользователем и хостом. Имейте в виду, что на другом компьютере должен быть настроен удалённый доступ.

5. scp

Команда для копирования файлов между локальной системой и удалённым сервером по протоколу SSH. Например, scp файл.txt user@remote:/remote/path скопирует файл.txt на удалённый сервер в заданный путь.

6. wget

Позволяет скачивать файлы из интернета по указанному URL в домашнюю папку пользователя. Например, wget https://example.com/file.txt загрузит файл file.txt с указанного URL.

И ещё кое-что

Напоследок — самые забавные команды Linux. Они выводят на экран корову, которая может разговаривать с вами.

1. cowsay что_угодно

Корова произнесёт то, что вы ей скажете.

2. fortune | cowsay

Корова выдаст умную (или не очень) мысль или цитату.

3. cowsay -l

Выводит список всех животных, которые могут быть отображены в терминале. Если вы вдруг не любите коров.

4. cowsay -f dragon -e ^^ Пламя и кровь!

Эта команда заменяет корову огнедышащим драконом, который прорычит введённую вами цитату.

5. fortune | cowsay -f животное_из_списка

Корова, дракон или иное животное на ваш выбор начинает сыпать цитатами, иногда — уместными.

6. sudo apt‑get install fortunes fortune‑mod fortunes‑min fortunes‑ru

Заставит весь зоопарк говорить по‑русски. Без этого животные цитируют Твена и Уайльда в оригинале.

Это далеко не все команды Linux. Если вам нужно узнать в деталях параметры и способы их применения, можете воспользоваться встроенным руководством. Наберите man ваша_команда или ваша_команда —help.

Это упрощённая версия страницы.

Читать полную версию
Обложка: Лайфхакер
Если нашли ошибку, выделите текст и нажмите Ctrl + Enter
Sergei
25.05.23 22:59
😅
Iskander Khrenov
28.05.23 13:25
Странно, а почему больше всего вопросов на SO и gentoo.org/ru именно по portage?
Oleg Sh.
31.05.23 05:05
Я раньше синхронизировал Obsidian через Syncthing, пока не попробовал плагин Remotely Save через webdav Яндекс-диска — намного удобнее и меньше конфликтов.
Олег Поспелов
30.09.23 17:42
Из сетевых команд ещё nc забыли.
Читать все комментарии