Основные команды Linux

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

Хотя большинство дистрибутивов Linux удобны для пользователя и имеют простой в использовании графический интерфейс, знание того, как использовать командную строку, может быть очень полезным. Командная строка дает вам больше возможностей над вашей системой и доступ к функциям, которые недоступны через графический интерфейс.

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

Содержание

Получение информации о команде

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

У большинства команд есть опция --help , которая выводит короткое сообщение о том, как использовать команду, и завершает работу:

command_name --help

Команда man

Почти все команды Linux распространяются вместе со страницами руководства. Справочная или справочная страница — это форма документации, в которой объясняется, что делает команда, примеры того, как вы запускаете команду, и какие аргументы она принимает.

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

man command_name

Например, чтобы открыть справочную страницу команды cd , введите:

man cd

Для навигации по страницам руководства используйте клавиши со Arrow , Page Up и Page Down . Вы также можете нажать Enter для перемещения на одну строку за один раз, то Space бар , чтобы перейти к следующему экрану, и b кнопку для перехода на один экран назад. Чтобы закрыть страницу руководства, нажмите клавишу q .

Навигация по файловой системе

В Linux каждый файл и каталог находится в корневом каталоге, первом или самом верхнем каталоге в дереве каталогов. Корневой каталог обозначается одинарной косой чертой / .

При навигации по файловой системе при работе с файлами вы можете использовать абсолютный или относительный путь к ресурсу.

Абсолютный или полный путь начинается с системного корня / , а относительный путь начинается с вашего текущего каталога.

Текущий рабочий каталог (команда pwd )

Текущий рабочий каталог — это каталог, в котором в данный момент работает пользователь. Каждый раз, когда вы взаимодействуете с командной строкой, вы работаете в каталоге.

Используйте команду pwd чтобы узнать, в каком каталоге вы сейчас находитесь:

pwd

Команда отображает путь к вашему текущему рабочему каталогу:

/home/linuxize

Смена каталога (команда cd )

Команда cd («изменить каталог») используется для изменения текущего рабочего каталога в Linux и других Unix-подобных операционных системах.

При использовании без аргументов cd перенесет вас в домашний каталог:

cd

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

Предполагая, что каталог Downloads существует в каталоге, из которого вы запускаете команду, вы можете перейти к нему, используя относительный путь к каталогу:

cd Downloads

Вы также можете перейти к каталогу, используя его абсолютный путь:

cd /home/linuxize/Downloads

Две точки ( .. ), одна за другой, представляют родительский каталог или, другими словами, каталог непосредственно над текущим.

Предположим, вы находитесь в каталоге /usr/local/share . Чтобы переключиться в каталог /usr/local (на один уровень выше текущего каталога), вы должны ввести:

cd ../

Чтобы переместиться на два уровня вверх:

cd ../../

Чтобы вернуться в предыдущий рабочий каталог, используйте в качестве аргумента символ тире ( - ):

cd -

Если в имени каталога, в который вы хотите перейти, есть пробелы, вы должны либо заключить путь в кавычки, либо использовать символ обратной косой черты (), чтобы избежать пробела:

cd Dir name with space

Работа с файлами и каталогами

Вывод списка содержимого каталога (команда ls )

Команда ls выводит информацию о файлах и каталогах в каталоге.

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

ls

Чтобы вывести список файлов в определенном каталоге, передайте путь к каталогу в качестве аргумента:

ls /usr

По умолчанию вывод команды ls показывает только имена файлов и каталогов. Используйте -l для печати файлов в формате длинного списка:

ls -l /etc/hosts

Вывод включает тип файла, разрешения, количество жестких ссылок, владельца, группу, размер, дату и имя файла:

-rw-r--r-- 1 root root 337 Oct  4 11:31 /etc/hosts

Команда ls по умолчанию не выводит список скрытых файлов. Скрытый файл — это любой файл, который начинается с точки ( . ).

Чтобы отобразить все файлы, включая скрытые, используйте параметр -a :

ls -a ~/

Отображение содержимого файла (команда cat )

Команда cat печатает содержимое одного или нескольких файлов и объединяет (объединяет) файлы, добавляя содержимое одного файла в конец другого файла.

Чтобы отобразить содержимое файла на экране, передайте имя файла в cat в качестве аргумента:

cat /etc/hosts

Создание файлов ( touch команда)

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

Чтобы создать файл , укажите имя файла в качестве аргумента:

touch file.txt

Если файл уже существует, touch изменит время последнего доступа к файлу и его модификации на текущее время.

Создание каталогов (команда mkdir )

В Linux вы можете создавать новые каталоги (также известные как папки) с помощью команды mkdir .

Чтобы создать каталог, передайте имя каталога в качестве аргумента команды:

mkdir /tmp/newdirectory

mkdir может принимать в качестве аргументов одно или несколько имен каталогов.

Если аргументом является имя каталога без полного пути, новый каталог создается в текущем рабочем каталоге.

Для создания родительских каталогов используйте параметр -p :

mkdir -p Projects/linuxize.com/src/assets/images

Приведенная выше команда создает всю структуру каталогов.

Когда mkdir вызывается с параметром -p , он создает каталог, только если он не существует.

Создание символических ссылок (команда ln )

Символическая ссылка (или символическая ссылка) — это особый тип файла, который указывает на другой файл или каталог.

Чтобы создать символическую ссылку на данный файл, используйте команду ln с параметром -s , имя файла в качестве первого аргумента и имя символической ссылки в качестве второго аргумента:

ln -s source_file symbolic_link

Если в качестве аргумента указан только один файл, ln создает ссылку на этот файл в текущем рабочем каталоге с тем же именем, что и файл, на который он указывает.

Удаление файлов и каталогов (команда rm )

Чтобы удалить файлы и каталоги, используйте команду rm .

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

Чтобы удалить файл или символическую ссылку, используйте команду rm за которой следует имя файла в качестве аргумента:

rm file.txt

rm принимает в качестве аргументов одно или несколько имен файлов или каталогов.

Параметр -i указывает rm запрашивать пользователя для каждого заданного файла перед его удалением:

rm -i file.txt
rm: remove regular empty file 'file.txt'?

Используйте параметр -d чтобы удалить один или несколько пустых каталогов:

rm -d dirname

Чтобы рекурсивно удалить непустые каталоги и все файлы в них, используйте параметр -r (рекурсивный):

rm -rf dirname

Параметр -f указывает rm никогда не запрашивать пользователя и игнорировать несуществующие файлы и аргументы.

Копирование файлов и каталогов (команда cp )

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

Чтобы скопировать файл в текущий рабочий каталог, используйте исходный файл в качестве первого аргумента и новый файл в качестве второго:

cp file file_backup

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

cp file.txt /backup

По умолчанию, если целевой файл существует, он будет перезаписан.

Чтобы скопировать каталог, включая все его файлы и подкаталоги, используйте параметр -R или -r :

cp -R Pictures /opt/backup

Перемещение и переименование файлов и каталогов (команда mv )

Команда mv (сокращение от move) используется для переименования и перемещения файлов и каталогов из одного места в другое.

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

mv file.txt /tmp

Чтобы переименовать файл, вам необходимо указать имя файла назначения:

mv file.txt file1.txt

Синтаксис перемещения каталогов такой же, как и при перемещении файлов.

Чтобы переместить несколько файлов и каталогов одновременно, укажите целевой каталог в качестве последнего аргумента:

mv file.tx1 file1.txt /tmp

Установка и удаление пакетов

Диспетчер пакетов — это инструмент, который позволяет вам устанавливать, обновлять, удалять и иным образом управлять пакетами программного обеспечения для конкретного дистрибутива.

В разных дистрибутивах Linux есть разные менеджеры пакетов и разные форматы пакетов.

Только root или пользователь с привилегиями sudo могут устанавливать и удалять пакеты.

Ubuntu и Debian (команда apt )

Advanced Package Tool или APT — это система управления пакетами, используемая дистрибутивами на основе Debian.

В дистрибутивах Debian есть несколько инструментов управления пакетами из командной строки, из которых наиболее часто используются apt и apt-get .

Перед установкой нового пакета сначала необходимо обновить индекс пакета APT:

apt update

Индекс APT — это база данных, в которой хранятся записи о доступных пакетах из репозиториев, включенных в вашей системе.

Чтобы обновить установленные пакеты до последних версий, запустите:

apt upgrade

Установить пакеты так же просто, как запустить:

apt install package_name

Чтобы удалить установленный пакет , введите:

apt remove package_name

CentOS и Fedora (команда dnf )

RPM — это мощная система управления пакетами, используемая Red Hat Linux и ее производными, такими как CentOS и Fedora. RPM также относится к команде rpm и формату файла .rpm .

Чтобы установить новый пакет в дистрибутивах на основе Red Hat, вы можете использовать команды yum или dnf :

dnf install package_name

Начиная с CentOS 8 dnf заменил yum в качестве менеджера пакетов по умолчанию. dnf обратно совместим с yum .

Чтобы обновить установленные пакеты до последних версий, введите:

dnf update

Удалить пакеты так же просто, как:

dnf remove package_name

Право собственности на файлы и разрешения

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

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

  • Владелец файла.
  • Члены группы.
  • Все остальные.

К каждому классу применяются три типа разрешений:

  • Разрешение на чтение.
  • Разрешение на запись.
  • Разрешение на выполнение.

Эта концепция позволяет указать, какие пользователи могут читать файл, записывать в файл или выполнять файл.

Чтобы просмотреть владельца файла и разрешения, используйте команду ls -l .

Изменение разрешений (команда chmod )

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

При использовании числового режима вы можете установить разрешения для владельца, группы и всех остальных. Каждое разрешение на запись, чтение и выполнение имеет следующее числовое значение:

  • r (читать) = 4
  • w (написать) = 2
  • x (выполнить) = 1
  • нет разрешений = 0

Число разрешений для определенного класса пользователей представлено суммой значений разрешений для этой группы.

Например, чтобы предоставить владельцу файла разрешения на чтение и запись и только на чтение для членов группы и всех других пользователей, вы должны запустить:

chmod 644 filename

Только root, владелец файла или пользователь с привилегиями sudo могут изменять права доступа к файлу.

Чтобы рекурсивно работать со всеми файлами и каталогами в данном каталоге, используйте команду chmod с параметром -R, (–recursive):

chmod -R 755 dirname

Будьте особенно осторожны при рекурсивном изменении разрешений файлов.

Смена владельца (команда chown )

Команда chown позволяет вам изменить пользователя и группу, владеющую данным файлом, каталогом или символической ссылкой.

Чтобы изменить владельца файла, используйте команду chown за которой следует имя пользователя нового владельца и целевой файл:

chown username filename

Для того, чтобы изменить владельца и группу файла, вызовите chown команду с последующим новым владельцем и группой , разделенных двоеточием ( : ) без пробелов и целевого файла:

chown username:groupname filename

Используйте параметр -R ( --recursive ), чтобы рекурсивно работать со всеми файлами и каталогами в данном каталоге:

chown -R username:groupname dirname

Повышение привилегий (команда sudo )

Команда sudo позволяет запускать программы от имени другого пользователя, по умолчанию root. Если вы проводите много времени в командной строке, sudo — одна из команд, которую вы будете использовать довольно часто.

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

Чтобы использовать sudo , просто добавьте к команде префикс sudo :

sudo command

Управление пользователями и группами

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

Создание пользователей (команды useradd и passwd )

Команда useradd позволяет создавать новых пользователей.

Чтобы создать новую учетную запись пользователя, вызовите команду useradd за которой следует имя пользователя:

useradd newuser

После создания пользователя установите пароль пользователя, выполнив команду passwd :

passwd newuser

Удаление пользователей (команда userdel )

В Linux вы можете удалить учетную запись пользователя с помощью команды userdel .

Чтобы удалить учетную запись пользователя с именем, передайте имя userdel команде userdel :

userdel newuser

Используйте параметр -r (–remove), чтобы удалить домашний каталог пользователя и почтовый ящик:

userdel -r newuser

Управление группами ( groupadd и groupdel )

Чтобы создать новую группу, вызовите команду groupadd за которой следует имя группы:

groupadd mygroup

Чтобы удалить группу, используйте команду groupdel с именем группы в качестве аргумента:

groupdel mygroup

Добавление пользователей в группы ( usermod )

Чтобы добавить существующего пользователя в группу, используйте команду usermod за которой следует параметр -G и имя группы:

usermod -a -G sudo linuxize

Выводы

Мы рассмотрели некоторые из наиболее часто используемых команд Gnu / Linux.

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

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

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Оставьте комментарий