- Часто используемые команды в «Терминале» Linux
- Список команд в «Терминале» Linux
- Управление файлами
- Работа с текстом
- Управление процессами
- Окружение пользователя
- Управление пользователями
- Просмотр документов
- Управление сетью
- Заключение
- Команды терминала linux папки
- Основные команды Linux: (почти) полное руководство с примерами
- Введение в терминал Linux
- Основные команды Linux
- Команды для получения справки
- man — manual, получение справки
- help — когда не работает man
- Tab — автозавершение команды
- cat /etc/*-release — какой дистрибутив установлен на моей машине
- whoami — какой пользователь сейчас используется
- whatis — что за программа?
- whereis — полный путь к программе
- Команды управления сетью
- hostname, ifconfig — управление сетью
- ping — диагностика неисправностей сети
- Команды для управления файлами и директориями
- mkdir — создание директории
- ls — list, отобразить директории и файлы
- cd — change directory, сменить директорию
- pwd — где я сейчас?
- Как создать файл?
- rm — remove, удаление
- cp — copy, копирование
- mv, move — перемещение
- Глубина вложенности
- Команды для архивирования
- Команды для работы с текстом
- Nano, Vim — редактирование текстовых файлов
- grep — поиск
- head, tail — начало и конец текста
- Команды для управления процессами
- kill / xkill / pkill / killall — завершить процесс
- ps / pgrep — узнать ID процесса
- Пакетные менеджеры или как установить файл
- dpkg — установить файл с расширением .deb
- apt — менеджер установки пакетов Debian-based
- yum — менеджер установки пакетов Red Hat
- pacman — менеджер пакетов ArchLinux
- Команды управления пользователями
- sudo — запуск команд и приложений через терминал в Linux от имени администратора (суперпользователя)
- useradd / userdel / usermod — добавить, удалить, изменить пользователя
- Команды выключения и перезагрузки
- shutdown — выключение
- Заключение, несколько советов
- Двойной символ & (амперсанд)
- Вертикальная черта | (pipe)
- Стрелки вверх и вниз на клавиатуре
- history — история
- Новая вкладка bash
- Копирование и вставка, прерывание команды
Часто используемые команды в «Терминале» Linux
По аналогии с ОС Windows, в Линуксе присутствует определенный набор команд для наиболее удобной и быстрой работы в операционной системе. Но если в первом случае мы вызываем утилиту или выполняем действие из «Командной строки» (cmd), то во второй системе действия производятся в эмуляторе терминала. По сути, «Терминал» и «Командная строка» — это одно и то же.
Список команд в «Терминале» Linux
Для тех, кто недавно начал знакомство с линейкой операционных систем семейства Linux, приведем ниже реестр наиболее значимых команд, которые необходимы каждому пользователю. Заметим, что инструменты и утилиты, вызываемые из «Терминала», являются предустановленными во всех дистрибутивах Linux и не нуждаются в предварительной загрузке.
Управление файлами
В любой операционной системе не обойтись без взаимодействия с различными форматами файлов. Большинство пользователей привыкло для этих целей использовать файловый менеджер, который имеет графическую оболочку. Но все те же манипуляции, а то и больший их перечень, можно провести, используя специальные команды.
- ls – позволяет просматривать содержимое активного каталога. Имеет две опции: -l – выводит содержимое в виде списка с описанием, -a – показывает файлы, которые скрыты системой.
Примечание: чтобы получить права суперпользователя (root-права), перед выполнением команды необходимо ввести «sudo su» (без кавычек).
Работа с текстом
Вводя в «Терминал» команды, которые непосредственно взаимодействуют с файлами, рано или поздно понадобится вносить правки в них. Для работы с текстовыми документами используются следующие команды:
- more – позволяет просматривать текст, не помещающейся в область рабочего поля. При отсутствии скроллинга терминала применяется более современная функция less.
показывает последние строчки в документе. По дефолту выводится 10 строчек. Сменить их количество можно, используя функцию -n и -f.
Управление процессами
Длительное использование ОС в течение одного сеанса стимулирует появление множества активных процессов, которые способны в значительной мере ухудшить производительность компьютера вплоть до того, что за ним будет не комфортно работать.
Данную ситуацию легко можно исправить, завершая ненужные процессы. В системе Linux в этих целях применяют следующие команды:
- ps, pgrep – первая команда выводит всю информацию об активных процессах системы (функция «-е» выводит один определенный процесс), вторая выводит ID процесса после ввода его названия пользователем.
завершает его.
Окружение пользователя
В число важных команд входят не только те, что позволяют взаимодействовать с системными компонентами, но и выполняющие более тривиальные задачи, способствующие удобству при работе за компьютером.
- date – выводит дату и время в различных форматах (12 ч, 24 ч), в зависимости от опции.
Управление пользователями
Когда за одним компьютером работает не один человек, а несколько, то лучшим вариантом будет создание нескольких пользователей. Однако необходимо знать команды для взаимодействия с каждым из них.
- useradd, userdel, usermod – добавить, удалить, редактировать учетку пользователя, соответственно.
- passwd – служит для смены пароля. Запуск от имени СуперПользователя (sudo su в начале команды) позволяет сбросить пароли всех учетных записей.
Просмотр документов
Ни один пользователь не способен запомнить значение всех команд в системе или расположение всех исполняемых файлов программы, однако на помощь могут прийти три легко запоминающиеся команды:
- whereis – отображает путь к исполняемым файлам.
- man — показывает справку или руководство к команде, используется в командах с одноименными страницами.
Управление сетью
Чтобы настроить интернет и в дальнейшем успешно вносить коррективы в сетевые параметры, необходимо знать хотя бы несколько отвечающих за это команд.
- ip – настройка сетевых подсистем, просмотр доступных IP портов для подключения. При добавлении атрибута -show выводит объекты указанных типов в виде списка, с атрибутом —help выводится справочная информация.
- ping – диагностика подключения к сетевым источникам (роутер, маршрутизатор, модем и т. п.). Также сообщает информацию о качестве связи.
Заключение
Зная все вышеперечисленные команды, даже новичок, который только установил себе систему на базе Linux, сможет отлично взаимодействовать с ней, успешно решая поставленные задачи. На первый взгляд может показаться, что список очень трудно запомнить, однако при частом выполнении той или иной команды со временем основные врежутся в память, и обращаться каждый раз к представленной нами инструкции не понадобится.
Помимо этой статьи, на сайте еще 12315 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Источник
Команды терминала linux папки
В этой статье пойдет речь про команды навигации в терминале.
Решил написать несколько статей на тему терминала Linux. Постараюсь объяснять наиболее доходчиво.
Что из себя представляет корневая файловая система Linux?
Прежде, чем приступить к командам навигации в терминале, поговорим о директориях в Linux. Здесь нет дисков C:, D: и прочих.
Когда я начинал свой путь в Linux, для меня это было наиболее непонятно. Поэтому хочу пояснить этот момент.
Неважно, на сколько разделов вы разобьёте ваш диск, в системе будет:
Затем идут все остальные каталоги, которые служат для своих целей.
- /home — хранит каталоги пользователей, в которых можно, как правило, выполнять большинство действий без пароля администратора. Ваш домашний каталог находится по адресу: /home/Ваше_Имя_пользователя .
- /mnt и /media — в эти каталоги монтируются другие физические диски, флешки и прочие носители информации.
- /media — сюда монтируются диски, флешки, то есть, в этом каталоге создается папка с названием вашего электронного носителя.
Остальные каталоги системные, рассказу о них стоит выделить целую статью.
Перейдем к командам в терминале.
Команды навигации в терминале.
Когда вы открываете терминал в Ubuntu, то вы находитесь в своем домашнем каталоге:
(тильда) — означает домашний каталог текущего пользователя.
Чтобы узнать текущую директорию (отобразить полный путь к текущей директории),достаточно набрать команду в терминале:
Выполнение данной команды представлено на скриншоте выше.
Для навигации в терминале используется команда «cd» (англ. change directory — изменить каталог).
Сначала пишется команда cd, а затем путь, куда нужно перейти.
Вот так выглядит переход в каталог /home:
Но это не всё, что можно делать с помощью команды cd :
Перейти в директорию уровнем выше:
Перейти в директорию двумя уровнями выше:
Перейти в домашнюю директорию вашего пользователя:
Перейти в домашнюю директорию пользователя user_name:
Перейти в директорию, в которой находились до перехода в текущую директорию:
Следующая команда, используемая в навигации — «ls» (сокращение от англ. list).
Если ввести в терминале:
отобразится содержимое текущей директории:
Отобразить содержимое текущей директории с добавлением к именам символов, характеризующих их тип:
Показать детализированное представление файлов и директорий в текущей директории:
Показать скрытые файлы и директории в текущей директории:
Ключи можно комбинировать вместе:
Кроме того, у команды ls очень много других ключей, которые можно посмотреть, выполнив команду:
Автодополение названий директорий в терминале.
Когда вы вводите команду cd, вам необязательно вводить полностью имя директории, достаточно нажать на клавиатуре клавишу «TAB», произойдет автодополнение названия каталога.
Если имя не заполнилось, значит, есть еще один каталог с таким названием. Нажав дважды клавишу «TAB», выведется список с каталогами, которые имеют в своём имени начальные буквы, которые вы ввели.
Если список огромнейший, то для отмены его просмотра нажмите клавишу N.
Это касается не только «cd», но и других команд. Например, когда вы хотите отредактировать какой-то файл. Вы выполнили команду ls, увидели, что у файла имя состоит из 30 знаков, то достаточно ввести первые буквы его имени и нажать клавишу «TAB» и произойдет автодополнение.
Это основные команды навигации в терминале Linux.
Источник
Основные команды Linux: (почти) полное руководство с примерами
Если вы когда-нибудь сталкивались с ОС Linux, вы наверняка слышали слово «терминал». Новички обычно воспринимают терминал как что-то страшное и зловещее. Но не все так страшно.
Введение в терминал Linux
Моя бабушка называет любой терминал «терминатором», что добавляет антуража. На самом деле терминал (bash) — это всего лишь командная строка с гораздо более широким набором функций, если сравнивать с Windows. Почти любое действие можно выполнить командой из терминала, но далеко не любое действие можно выполнить через окружения пользователя.
В этом и заключается преимущество терминала Linux — по сути из него можно полностью управлять системой, без необходимости окружения пользователя (графического интерфейса). На самом деле нередко серверы так и работают — черный экран, командная строка и все функции под рукой. В статье команды будут сгруппированы по функциям, а не по частоте использования, это связано с удобством восприятия и понимания.
Статья рассчитана на новичков и написана таким же новичком, в этом нет ничего зазорного — все когда-то начинали с нуля. Любое сообщество существует только до тех пор, пока есть приток новых участников.
Список команд в данной статье не является полным списком команд Linux. Во-первых, команд слишком много, чтобы перечислять их все, во-вторых, новичкам они не нужны, а профессионалы уже помнят их наизусть. Однако, не стоит расстраиваться, если у вас не получается запомнить команды — запоминание приходит с практикой. Чем чаще вы пользуетесь теми или иными командами, тем скорее вы их запомните.
Основные команды Linux
Если вы проигнорировали введение, напомним, что команды в статье сгруппированы по исполняемой ими функции. Что может быть более необходимым для новичка, чем функция справки?
Команды для получения справки
man — manual, получение справки
Самая первая команда Linux для начинающих — manual — для получения полной справочной информации по другой команде. Некоторые пользователи настаивают, что искать в интернете информацию по команде проще и эффективнее. Однако, информация в интернете не всегда является верной, статья в интернете может быть устаревшей, не релевантной для вашей версии ОС и т.д. Использовать man всегда хорошая идея.
Чтобы получить справку по команде, введите man перед ней, например, man bash выдаст руководство по терминалу.
help — когда не работает man
Не у каждой команды имеется свое полноценное руководство и не всегда оно требуется. В таких случаях помогает help, которая выводит краткую справку.
Tab — автозавершение команды
Командная строка Linux может предложить вам доступные варианты завершения команды. Например, если вы хотите узнать, куда можно перейти из текущей папки, наберите cd, затем дважды нажмите Tab. Если хотите узнать, какие папки начинаются с символа точки, введите cd . и завершите двойным нажатием Tab. Работает с любой командой.
cat /etc/*-release — какой дистрибутив установлен на моей машине
Если вы задумывались об установке Linux или уже использовали эту ОС, вы должны были знать, что существует несколько дистрибутивов. В зависимости от дистрибутива команды могут отличаться, поэтому полезно иметь возможность узнать, какой именно дистрибутив на этой машине. Это можно сделать и через информацию о системе, из графического интерфейса окружения пользователя, но наша статья о терминале. Команда cat /etc/*-release (без пробелов) покажет вам основную информацию о дистрибутиве — имя, версия, и т.д. Аналогами в данном случае будут являться lsb_release -a, которая выведет почти ту же информацию, а lsb_release -i напишет ID дистрибутива.
whoami — какой пользователь сейчас используется
Терминал Linux позволяет работать от имени любого пользователя, но не всегда удается удержать в памяти текущего пользователя. Чтобы вспомнить текущего пользователя, существует простая команда whoami.
whatis — что за программа?
Команда Linux терминала whatis дает краткое описание любой установленной программы.
Очевидно, что, если программа не установлена, то получить ее описание не получится.
whereis — полный путь к программе
Допустим, вы нашли нужную программу, но хотите попасть в ее директорию. Узнать директорию программы поможет whereis, показывающая полный путь к исполняемому файлу программы.
Команды управления сетью
hostname, ifconfig — управление сетью
Выяснить DNS домен, к которому принадлежит ваша машина можно командой hostname. Если добавить к hostname опцию -i, терминал выведет текущий IP-адрес компьютера.
В некоторых версиях дистрибутивов Linux поддерживается команда ifconfig, которая также выводит текущий IP, но она работает не всегда. Взамен устаревшей ifconfig современные дистрибутивы отзываются на ip a[ddress], которая выведет на экран настройки сети и позволяет их редактировать. Команда является частью пакета утилит для настройки параметров сетевых устройств — iproute2. Команды из набора iproute2 пригодятся системным администраторам или тем, кто хочет создать доменную сеть дома.
ping — диагностика неисправностей сети
Ping используют для поиска неисправностей, тестирования и диагностики сетевых соединений. Команда отправляет сообщение на указанный IP адрес и ждет ответ. Когда пакет адресат получает пакет, он отправляет ответ. Таким образом можно определить задержку сообщений или потерю пакетов.
Достаточно ввести, например, ping google.com, компьютер сам определит IP адрес домена и продолжит выполняться, пока ее не отменить сочетанием Ctrl+C.
Команды для управления файлами и директориями
Теперь, когда мы выяснили, где находится терминал, мы можем перейти в его директорию. Однако, этого делать не стоит, иначе можно что-нибудь сломать. Давайте попробуем поработать с директорией песочницы.
mkdir — создание директории
Для начала песочницу необходимо создать. Сделать это очень просто, находясь в домашней директории пользователя введем в bash:
mkdir playpen
Отлично, и что дальше? Точно ли директория создалась?
ls — list, отобразить директории и файлы
Чтобы убедиться в наличии директории нужно набрать ls, после выполнения команда покажет все каталоги и файлы.
cd — change directory, сменить директорию
Теперь перейдем в созданную директорию. Для навигации в терминале Linux нужно ввести cd имя_директории. В нашем случае cd playpen.
Если работа в данной директории закончена и необходимо подняться на уровень вверх из текущей директории, используйте «cd пробел .. (две точки)»:
cd ..
А если вы работаете одновременно в двух директориях и периодически перемещаетесь из одной в другую, не нужно постоянно держать в голове, какой же была предыдущая. Достаточно использовать быстрый переход к предыдущей директории «cd пробел — (дефис)»:
cd —
pwd — где я сейчас?
Обратите внимание, как только мы сменили директорию, поменялся и префикс до символа $, так терминал показывает нам, где мы находимся в данный момент. Конечно, терминал не станет отображать полный путь, если он слишком длинный, поэтому не стоит всегда полагаться на префикс. Быстро понять текущую рабочую директорию поможет команда pwd. Расшифровка этой команды простая — три английских слова — Print Working Directory. На самом деле расшифровка команд Linux всегда простая, они все произошли от английских слов, но были сокращены для лучшего запоминания.
Обратно к песочнице. Пока что директория (также каталог, папка) пуста и не содержит ни одного файла. Давайте создадим в ней 43 директории, в каждой по 43 файла. Можно создавать вручную, каждый раз прописывая имя, а можно поступить проще:
mkdir dir
Синтаксис команды простой: mkdir создает директорию, dir задает начальное имя для каждой новой директории, числа в фигурных скобках <00..42>указывают переменную часть имени создаваемых папок. То есть, команда mkdir test_folder_ создала бы нам 5 папок с начальным именем test_folder_0.
Давайте проверим, создались ли наши тестовые папки — ls.
Как создать файл?
Замечательно, теперь создадим по 43 файла в каждой. Для создания файла существует более 10 разных способов, самый простой:
На самом деле >, как и обратный знак вместе с указанием расширения файла, в текущей директории появится пустой файл.
Но нам требуется поместить по 42 файла в 42 директории, а терминал Linux откажется воспринимать команду со знаком перенаправления, поэтому используем команду touch. Эта команда позволяет задать время последнего изменения файла или создать новые файлы:
touch dir<00..42>/text<00..42>.txt
rm — remove, удаление
Чтобы удалить какой-либо файл, достаточно ввести команду rm с именем файла:
rm text00.txt
Можно удалить несколько:
Если попытаться удалить целый каталог по аналогии, то ничего не получится. Все потому, что для удаления каталога нужна другая команда: rmdir:
rmdir delete_me
Команда rmdir тоже не всесильна, она не позволит удалить каталог, в котором есть что-то еще — файл или другой каталог (даже пустой).
Для удаления каталога с содержимым можно использовать команду rm с опцией рекурсивного удаления -r. Обратите внимание на картинку ниже, все описанные переходы по директориям, упомянутые в описании команды cd действуют и для rm. Поэтому, при нахождении в подкаталоге dir01, команда будет выглядеть вот так:
rm -r ../dir03
cp — copy, копирование
Кроме создания и удаления файлов и директорий терминал позволяет их копирование.
Снова перейдем в директорию dir02 и скопируем файл text00.txt в директорию dir01:
cp text00.txt /home/debtop/playpen/dir01
Поскольку text00.txt находится в текущей директории, до него можно не писать полный путь. Такое указание пути называется относительным. Путь до dir01 мы указали полностью, от домашней директории, такой путь называется абсолютный. Можно было указать просто ../dir01, тогда это был бы снова относительный путь.
Если попробовать повторить копирование теперь, когда в dir01 опять появился файл text00.txt, внешне не произойдет ничего, но на самом деле файл будет заменен на файл с тем же именем без каких-либо вопросов.
Каталоги копируются по тому же принципу, только нужно не забывать про добавление опции рекурсивного копирования:
cp -r dir00 dir03
Если при копировании каталога или файла в качестве адреса копирования указать имя несуществующей директории (или файла), то система автоматически воспримет это как команду создать файл или каталог с таким именем.
Когда вы хотите скопировать не всю директорию целиком, а только ее содержимое, укажите слэш после места назначения, а после него поставьте звездочку (*):
cp -r dir00/* dir03/dir
Принцип действия команд rm и cp очень простой и очевидный, но не стоит забывать, что новичку многое кажется сложнее, чем есть на самом деле.
mv, move — перемещение
Третья команда для управления файлами — mv — перемещает файлы и директории.
Принцип действия полностью аналогичен предыдущим двум командам:
mv что_перемещаем куда_перемещаем
При перемещении каталогов мы перемещаем их целиком так, что они перестают существовать в исходном местоположении. То есть, каталог dir16 из предыдущего примера больше не существует в каталоге
/playpen. Но это не всегда удобно, бывает необходимо переместить не сам каталог, а только содержимое — все файлы, каталоги и файлы, вложенные в них. Для этого используется опция —v[erbose], покажем на примере. Переместим все содержимое папки dir19 в папку dir17 командой mv, оставив папку dir19 пустой:
mv -v dir19/* dir17/
Глубина вложенности
Можно пойти дальше — создать папку с большой вложенностью dir18 и переместить только файлы первого уровня в папку dir19:
find dir18/ -maxdepth 1 -type f -print0 | xargs -0 mv -t dir19
Эта сложная команда найдет (find) все файлы (-type f) с глубиной вложенности 1 (-maxdepth 1) внутри dir18 и переместит их в dir19 как обычные файлы (mv -t). Часть «xargs -0» служит в роли команды, связующей две других и позволяет им работать вместе. С глубиной вложенности -maxdepth можно экспериментировать, задавать ей разные значения (1, 2, 3 и т.д.) получая новый результат каждый раз.
Команды для архивирования
Важный аспект работы с файлами — возможность создавать архивы. В Linuxе это реализовано с помощью утилит терминала. Рассмотрим несколько базовых команд архивирования:
- gzip — создать архив. Работает следующим образом: gzip файл.расширение. Можно сразу несколько, например, gzip text12.txt text13.txt.
- gunzip — распаковать архив — gunzip файл.расширение.gz.
- zip — более привычный формат архива. Чтобы передать файл на другую операционную систему, и чтобы адресат мог его распаковать лучше использовать утилиту zip.
Утилита zip терминала Linux позволяет упаковать сразу несколько файлов в один архив (gzip также позволяет поместить несколько файлов в архив, но с ней сложнее разобраться) с помощью рекурсивной опции -r. Текст команды Linux:
zip -r texts.zip text12.txt text13.txt
В данном случае texts.zip будет названием архива, а text12.txt и text13.txt — файлы, которые нужно поместить в архив.
- tar — создание резервных копий. Утилита tar создает архивы с расширением .tar, утилиту обычно используют для резервного копирования так как она не сжимает файлы, а только собирает в архив. Чтобы создать архив .tar, выполните команду с опциями —cvf. Например:
tar -cvf newark.tar text07.txt ../dir22
Создаст архив с именем newark.tar, в который будут помещены файл text.07.txt и все файлы из каталога dir22, располагающегося внутри родительского каталога.
Для просмотра содержимого .tar архива используются опции -tvf:
tar -tvf newark.tar
Опции для распаковки .tar архива -xvf:
tar -xvf newark.tar
После выполнения в текущий каталог будут скопированы все файлы из архива, но архив не будет удален. Удалить его можно, выполнив rm.
Команды для работы с текстом
Nano, Vim — редактирование текстовых файлов
Как посмотреть содержимое файла в Linux терминале? Через утилиты терминала Linux часто требуется открыть или отредактировать текстовые файлы. Для этого перейдем в директорию dir42 и откроем text42.txt с помощью Nano — простого текстового редактора.
nano text42.txt
Запишем текст в файле, затем сохраним его сочетанием Ctrl+O (^ в терминале Linux всегда значит Ctrl) и выйдем сочетанием Ctrl+X. Nano позволяет редактировать файлы прямо из окна терминала, обладает базовым, но не очень богатым набором функций. Кроме Nano есть еще более продвинутый Vim, который открывает гораздо большие возможности редактирования файлов. Только Vim не всегда установлен в систему и из него сложнее выйти, потому что он не отображает подсказки. Для выхода из Vim используйте :q, для выхода без сохранения изменений — :q! и :w для сохранения всех изменений. Обязательно сначала использовать двоеточие, так как оно активирует командный режим.
grep — поиск
Чтобы найти текст в файле используйте grep, эта команда выведет соответствующие запросу строки текста. Можно искать словом, строкой или регулярным выражением, а вывод может быть файлом или папкой, совпадающим или наоборот — несовпадающим. Полезно использовать grep при поиске по большим логам.
Кроме непосредственно grep есть варианты pgrep, fgrep, egrep, которые выполняют ту же функцию, но для других целей. Часто grep используют в сочетании с другими командами, чтобы упростить работу с большими объемами данных, ниже мы еще увидим примеры такого использования.
head, tail — начало и конец текста
Команды head и tail используются для вывода первых и последних строк текста в одном или нескольких документах.
head/tail опции файл
По умолчанию команды выводят 10 строк текста, но количество можно изменить с помощью опции -n. Специально для эксперимента мы создали большой текстовый файл, из которого хотим получить ровно 1 первую или последнюю большую строку:
head -n 1 text00.txt
tail -n 1 text00.txt
С помощью опции -c можно запросить уже не строки, а байты.
Например, команды для получения 100 байт текста:
head -с 100 text00.txt
tail -с 100 text00.txt
Другие опции можно посмотреть через man head.
Команды для управления процессами
Операционная система Linux не имеет встроенного графического диспетчера задач в отличие от Windows, вместо этого всеми процессами можно управлять из терминала. Говорят, что Linux стабильнее винды, но иногда все равно приходится гуглить «Как завершить процесс Linux», потому что что-то зависло.
kill / xkill / pkill / killall — завершить процесс
Первый вопрос — почему так много, какую команду использовать? Давайте по порядку:
- kill — убить процесс по его идентификатору (Process ID);
- xkill — убить процесс, кликнув по его окну указателем;
- pkill — убить процесс по его имени;
- killall — убить все процессы с указанным именем.
ps / pgrep — узнать ID процесса
Если вы не компьютер, то вряд ли вам известен ID нужного процесса. PS (Process Status) выведет на экран информацию о запущенных процессах. Чтобы показать список всех активных процессов, используется ps axu.
Проблема в том, что найти нужный процесс среди этого полотна очень сложно. Решений этой проблемы несколько.
1. top (Table Of Processes) — каждые 2 секунды обновляет активные процессы. Колонка PID указывает на ID процесса, USER на пользователя и т.д. Удобно. Если процесс активен постоянно, но уследить за постоянно обновляющимся списком не всегда получается.
2. Более продвинутые утилиты командной строки Linux — atop, htop. Отображают не только активные процессы с обновлением в две секунды, но и контроль над загрузкой и т.д. Утилиты полезны для системных администраторов, но для обычного пользователя все-таки перебор.
3. ps axu | grep имя_процесса. С помощью утилиты grep можно вычленить нужный процесс, если известно его имя.
4. pidof — самый короткий способ выяснить ID процесса, если известно его имя.
Пакетные менеджеры или как установить файл
По сравнению с Windows, в Linux установка программы требует чуть больше усилий. Даже для установки браузера Chrome придется залезть в терминал.
dpkg — установить файл с расширением .deb
Многие программы, скачанные из интернета, которые поддерживаются ОС Linux, имеют расширение .deb. Это файлы, оптимизированные под дистрибутивы на основе Debian (Debian, Ubuntu и Ubuntu-based, Mint и т.д.). Когда вы скачаете и попытаетесь открыть файл (точнее пакет) .deb кликом указателя скорей всего ничего не произойдет, потому что это необходимо делать через dpkg:
dpkg -i package.deb — установит пакет .deb;
dpkg —remove package — удалит пакет. Да, при удалении не требуется указывать расширение, так как пакет уже установлен в системе и идентифицируется по имени.
Примечание: Если вы работали в Windows, вы помните, что приложения удаляются не полностью, остаются пустые папки и записи в реестре. У Linux тоже есть такая особенность, остаточные файлы и папки называются dependencies (зависимости). Избавиться от них в Linux гораздо проще, чем в ОС от Майкрософт. Достаточно ввести:
dpkg —purge package.
apt — менеджер установки пакетов Debian-based
Интересная функция Linux — пакетные менеджеры. В каждом дистрибутиве есть свой пакетный менеджер, который может запрашивать и устанавливать пакеты из удаленных репозиториев. Это очень удобно — требуется знать только название пакета, который желаете установить и команду. Пакетный менеджер по умолчанию в Debian и дистрибутивах на основе Debian — apt (Advanced Packaging Tool).
Для установки пакета с помощью apt необходимо ввести команду:
apt install имя_пакета
Часто для этой операции потребуются права суперпользователя, но об этом см. раздел ниже.
Нередко можно встретить apt-get вместо apt — это тот же самый пакетный менеджер, только более старая его версия. Тем не менее оба варианта существуют и работают. Пакетный менеджер apt объединяет сразу несколько прежних команд (apt-get и apt-cache в apt install и apt search), а также оптимизирует процесс установки пакетов.
Команда для удаления установленного пакета с помощью apt:
apt remove имя_пакета
Для удаления зависимостей вместо remove используется purge:
apt purge имя_пакета
Для автоматического удаления всего лишнего из системы используется apt autoremove.
Автоматическое удаление лишнего — это как встроенный в систему менеджер очистки, команда удаляет все файлы и зависимости, которые больше не требуются в системе, например, потому что соответствующего им приложения больше нет в системе.
yum — менеджер установки пакетов Red Hat
Red Hat — один из наиболее популярных дистрибутивов Linux. Утилита yum написана на python. Это пакетный менеджер Red Hat и дистрибутивов на основе Red Hat, например CentOS. Менеджер yum (Yellowdog Updater, Modified) использует формат пакетов rpm вместо deb, но команды остались прежними:
- yum installдля установки пакета;
- yum remove для удаления;
- yum autoremove для очистки.
При удалении пакета менеджер yum по умолчанию всегда сохраняет файлы конфигурации, которые отличаются от изначальных по умолчанию и не имеет команды аналогичной apt purge. Впрочем, способы достижения аналогичного результата существуют всегда.
pacman — менеджер пакетов ArchLinux
Еще один дистрибутив, имеющий свой пакетный менеджер — ArchLinux. Утилита pacman написана на языке C (Си). ArchLinux имеет только одну версию — текущую, которая постоянно обновляется, и для этой системы pacman подходит идеально. Пакеты здесь представляют собой архивы формата .tar.xz.
Пакетный менеджер pacman работает иначе чем yum, apt или dpkg. Чтобы установить или удалить пакет с помощью pacman используются опции:
- -S устанавливает пакет ArchLinux;
- -Sw скачивает, но не устанавливает пакет;
- -U для установки пакетов с локального компьютера;
- -s для поиска пакетов;
- -u для обновления установленных пакетов;
- -R для удаления;
- -Rn для удаления резервных копий файлов конфигурации;
- -Rs для удаления зависимостей.
После опции всегда идет имя пакета, т.е.:
pacman -S имя_пакета
Команды управления пользователями
sudo — запуск команд и приложений через терминал в Linux от имени администратора (суперпользователя)
Все важные действия в Linuxе требуют подтверждения от имени администратора, в Linux администратор называется суперпользователем или root. Чтобы выполнить команду от имени суперпользователя, нужно ввести перед ней sudo. Это позволит выполнять команды от имени суперпользователя до окончания текущей сессии в терминале.
Если вы не хотите вводить sudo каждый раз, когда терминал просит это сделать, вы можете переключиться в режим суперпользователя. Для этого выполните su, введите пароль, тогда вы сможете выполнять любые команды по умолчанию от имени суперпользователя. Однако, лучше поступать так только, если вы точно знаете, что делаете. Сломать что-то важное в системе получится вряд ли, но вероятность возрастает лучше использовать sudo.
useradd / userdel / usermod — добавить, удалить, изменить пользователя
С помощью этих команд вы сможете управлять учетными записями пользователей. Полезно иметь под рукой такую возможность в сетевом домене или домашней сети, выдавать и ограничивать права.
Для добавления пользователя используйте useradd имя_пользователя.
Пароль для нового пользователя задается командой passwd имя_пользователя.
Аналогичным образом, командой userdel имя_пользователя, можно удалить созданную учетную запись.
Третья команда — usermod позволяет изменять учетные записи пользователей: изменять домашнюю директорию, имя учетной записи, оболочку входа в систему, «срок годности» пароля и т.д.
У каждой из трех команд есть свои опции, знать которые новичкам нет необходимости, но знать об их существовании не возбраняется.
Команды выключения и перезагрузки
Linux можно выключить или перезагрузить из командной строки. Зачем это делать? Во-первых, команды очень полезны, если отсутствует графическая оболочка системы — окружение пользователя, и вся работа происходит из терминала. Во-вторых, различные команды или опции помогут произвести перезагрузку или выключение с разными параметрами.
shutdown — выключение
shutdown опции время сообщение
Время — отсрочка выключения. Можно указывать:
- в 24-часовом формате когда нужно указать точное время выключения с точностью до минуты shutdown 10:10;
- в формате +мин, например, shutdown +10 выключит компьютер через 10 минут после выполнения. Команды shutdown +0 и shutdown now выключат компьютер немедленно.
Сообщение (wall) — текстовое сообщение, отправляемое пользователям компьютеров в сети. Если требуется добавить комментарий с причиной выключения. При добавлении сообщения обязательно указывать время.
Некоторые опции:
- -H (Halt) — останавливает все функции процессора, но не выключает компьютер. Halt можно использовать как самостоятельную команду, отдельно от shutdown;
- -P — полное выключение компьютера. Можно использовать как команду poweroff;
- -r (reboot) — перезагрузка. В качестве команды — reboot;
- -k — не производить никаких действий, отправить сообщение;
- -c — отменить запланированное выключение. Можно отменить выключение, только если не было задано время +0 или now.
Заключение, несколько советов
Мы рассмотрели основные команды Linux с примерами, надеемся, что они окажутся вам полезными. Напоследок приведем несколько советов по использованию терминала одной строкой.
Двойной символ & (амперсанд)
Предназначен для выполнения нескольких команд последовательно:
команда1 && команда2 && команда3
Вертикальная черта | (pipe)
Вводит результат первой команды в последующую. Например, следующая команда добавит таблицу процессов к команде поиска:
ps axu | grep имя_процесса
Стрелки вверх и вниз на клавиатуре
Помогают осуществлять навигацию по последним командам. Стрелка вверх — предыдущая выполненная команда, стрелка вниз — следующая.
history — история
Если вы забыли, как вы выполнили действие пять дней назад, а вот оно снова потребовалось, выполните history, и терминал выведет на экран последнюю тысячу команд.
Новая вкладка bash
Не всегда удобно иметь несколько окон. Терминал, как браузер, дает возможность открыть несколько вкладок сочетанием клавиш Ctrl+Shift+T.
Копирование и вставка, прерывание команды
Пробовали ли вы копировать текст и вставлять в терминал? Пробовали Ctrl+C? Ctrl+C прервет выполнение текущей команды, например таблицы процессов, сбросит текст, введенный в строку. Скопировать текст из bash — Ctrl+Shift+C. Вставить текст в bash — Ctrl+Shift+V.
Источник