Убедитесь, что папка создана с помощью mkdir
Если мы хотим увидеть сообщение об успешном выполнении mkdir или нет, мы можем использовать mkdir -v.
mkdir -v master
Приведенное выше выведет следующее сообщение:
mkdir: created directory 'master'
К сожалению, -p и -v не будут работать вместе, поэтому вам придется использовать либо одно, либо другое.
Команда mkdir в Linux системе.
Вы можете ввести mkdir в консоли.
$ mkdir
По умолчанию запуск mkdir без каких-либо параметров приведет к созданию каталога в текущем каталоге. Вот пример:

На снимке экрана мы создали каталог под названием «office«. Когда мы запустили команду mkdir, мы находились в каталоге ‘/home/pungki‘. Таким образом, новый каталог, которым является office, создается в каталоге /home/pungki.
Если вдруг мы опять попытаемся создать каталог с таким же именем. Тогда Linux обнаружит, что каталог, который предполагается создать, уже существует, инструмент сообщит нам, что он не может его создать.

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

Создание нескольких каталогов с помощью mkdir
Мы также можем создавать несколько каталогов одновременно. Допустим, мы хотим создать каталоги с именами «ubuntu«, «redhat» и «slackware«. Тогда синтаксис будет таким :
$ mkdir ubuntu redhat slackware

Установка привилегии доступа
Используя параметр -m, мы можем установить привилегию доступа для нового каталога. Вот пример:
$ mkdir -m=r-- letter
Показанная выше команда создаст каталог с именем letter и предоставит права доступа только для чтения владельцу каталога, владельцу группы каталогов и любому другому лицу.

Показ сообщения для каждого созданного каталога
Этот параметр -v будет выводить сообщение на консоль для каждого созданного каталога.
$ mkdir -v ubuntu redhat slackware

Создание каталога с датой с помощью команды mkdir
Так же вы можете создать имя каталога с датой. Это в основном полезно в сценариях командной консоли, когда требуется создать папки резервного копирования с датой. Делается это следующим образом:
$ mkdir "$(date "%d-%m-%Y")"
Output
$ mkdir «$(date »%d-%m-%Y»)»
$ ls
03-01-2022
$
Cd — смена текущего каталога
Команда cd предназначена для смены каталога, в котором вы сейчас находитесь. Например, вы сейчас находитесь в своем домашнем каталоге ~ и хотите перейти в каталог ~/information, тогда нужно просто выполнить команду cd information.
Cp — копирование файла
Утилита cp используется для создания копии файла. Для обычного копирования используется следующий синтаксис cp <имя файла источника> <имя файла назначения>.
При использовании cp есть один нюанс, который нужно обязательно помнить. Если файл назначения уже существует, то cp перезапишет его. Поэтому, чтобы избежать случайного уничтожения существующего файла, нужно использовать команду cp с опцией -i.
Man — получение руководства
Системная утилита man выводит страницы системной документации. С ее помощью можно получить информацию по любым командам Linux. Для этого используется синтаксис man <имя утилиты>. Например, чтобы вывести руководство по утилите ls, используйте команду man ls.
Rm — удаление файла
Команда rm предназначена для удаления файлов. Основные опции команды:
-i — выводить запрос перед удалением каждого файла. -r (или -R) — удалить директории и их содержимое.
Если вы хотите создать подкаталоги с помощью mkdir
Если вы хотите создать подкаталоги, тогда вам требуется использовать параметр -p. Этот параметр сначала создаст родительский каталог, если mkdir не сможет его найти. Допустим, мы хотим создать каталог с именем «letter» и каталог с именем «important«. Тогда синтаксис команды будет следующим:
$ mkdir -p letter/important

Жесткие ссылки
Жесткие ссылки — это указатели на файлы. Всегда существует минимум одна жесткая ссылка на файл. Сам файл находится где-то на жестком диске и у него есть уникальный номер. Имя файла хранится отдельно в файловом индексе (inode). Также в файловом индексе содержится тот же уникальный номер.
Жесткая ссылка создается командой:
ln имя_файла имя_ссылки
Можно убедиться, что уникальные номера файлов с жесткими ссылками одинаковы командой:
ls -i
Запуск исполняемых bash-скриптов
Чтобы запустить скрипт script.sh на сервере, нужно выполнить два шага:
Настроить права на запуск файла для пользователей:
chmod x ./script.sh
Запустить скрипт. Если вы находитесь в той же директории, где лежит скрипт, достаточно вызвать его по имени:
./script.sh
В некоторых случаях нужно использовать команду
sh
либо указать путь к исполняемому файлу командной оболочки:sh ./script.sh
либо
/bin/bash ./script.sh
Если вы находитесь в другой директории, для запуска нужно указать полный путь к скрипту.
Чтобы иметь возможность запускать скрипт из любого места на сервере одной простой командой, можно создать для него алиас — короткую команду (псевдоним), которая будет ассоциироваться системой с полным вызовом скрипта.
Весь список существующих алиасов системы можно вывести с помощью команды alias:
Создать свой постоянный алиас можно с помощью файла .bashrc, размещённого в домашнем каталоге вашего пользователя. Нужно открыть его для редактирования:
vi ~/.bashrc
В соответствующем разделе нужно добавить ваш алиас в следующем формате:
alias [короткая команда]='[исходная команда]'
Например, если нам потребуется создать псевдоним для скрипта выше, настройки будут выглядеть так:
alias myScript='sh /путь/к/скрипту/script.sh'
Чтобы после добавления алиас сразу стал доступен, предварительно нужно обновить командную оболочку:
source ~/.bashrc
После этого вы сможете вызывать ваш скрипт с помощью короткой команды.
Скрипт можно добавить в расписание планировщика cron, чтобы он запускался регулярно.
Запуск эмулятора терминала в ubuntu
Сделаю небольшое отступление и скажу как запустить эмулятор терминала gnome-terminal в Ubuntu. Для этого нужно выбрать в меню Приложения->Стандартные->Терминал. Тем самым, вы запустите эмулятор терминала для рабочего стола Gnome (gnome-terminal), попросту говоря, «командную строку», если вам так угодно 🙂 В нем вы можете вводить команды Linux, о которых и пойдет речь ниже.
Изменение разрешений нового каталога
После создания новой папки вы можете захотеть установить разрешения, чтобы только определенный пользователь мог получить к ней доступ, или чтобы некоторые люди могли редактировать файлы в папке, а другие имели права только для чтения.
Чтобы продолжить приведенный выше пример, мы запустим команду ls, чтобы увидеть разрешения для папки с именем test :
ls -lt
Вы должны запустить команду ls в любой папке, в которой находится тестовая папка. Если это ваш домашний каталог (т. Е. Вы не использовали команду cd выше), то вам не нужно беспокоиться об изменении каталога здесь.
Вы должны увидеть что-то вроде этого (но, возможно, и с несколькими другими записями, учитывая, что там, вероятно, есть и другие папки):
drwxr-xr-x 2 группа владельцев 4096 22 января 10:43 тест
Нам интересны следующие элементы: владелец drwxrwxr-x 2 и группа группа .
- d говорит нам, что test – это каталог.
- Первые три буквы, следующие за буквой d, являются разрешениями владельца для каталога, указанного в имени владельца:
- r предназначен для чтения
- w для записи
- x предназначен для выполнения (в данном случае это означает, что вы можете получить доступ к папке)
- Следующие три символа – это разрешения группы для файла, указанного в имени группы. Опять-таки варианты: r, w и x. Дефис означает, что отсутствует разрешение. В приведенном выше примере любой член группы может получить доступ к папке и просмотреть файлы, но не может записать в папку.
- Последние символы – это разрешения, которые есть у всех пользователей, и, как видно из приведенного выше примера, они совпадают с разрешениями группы.
Чтобы изменить разрешения для файла или папки, вы можете использовать команду chmod . Команда chmod позволяет вам указать три числа, которые устанавливают права доступа:
- Читать = 4
- Написать = 2
- Выполнить = 1
Добавьте числа вместе для смеси разрешений. Например, чтобы присвоить разрешения на чтение и выполнение, вам нужно 5 (4 1), или для разрешения на чтение и запись вы должны использовать число 6 (4 2).
Помните, что вам нужно указать три числа как часть команды chmod. Первое число предназначено для прав доступа владельца, второе – для полномочий группы, а последнее – для всех остальных.
Например, чтобы владелец имел полные права доступа, чтение и выполнение группы, а у кого-то не было никаких прав доступа, вы должны ввести следующее:
тест chmod 750
Используйте команду chgrp, чтобы изменить имя группы, которой принадлежит папка. Например, представьте, что вы хотите создать каталог, к которому могут обращаться все бухгалтеры вашей компании.
Сначала вы должны создать учетные записи группы, набрав следующее:
учетные записи groupadd
Если у вас нет правильного разрешения на создание группы, вам может потребоваться использовать sudo для получения дополнительных привилегий или перейти к учетной записи с действительными разрешениями с помощью команды su.
Теперь вы можете изменить группу для папки, набрав следующее:
Аккаунты chgrp
Например:
проверка учетных записей chgrp
Чтобы предоставить владельцу и всем остальным в группе учетных записей права чтения, записи и выполнения, но только для чтения только для других, вы должны использовать следующую команду:
тест chmod 770
Как найти файл или директорию
В этом вам поможет утилита
find
В самом простом случае использoвать ее можно так:
find / -name file
Будет осуществлен поиск файла или директории с именем
file
начиная от корневой директории
/
Опция -name чувствительна к регистру (различает заглавные и строчные буквы). Если вы не знаете, заглавные или строчные буквы используются в названии искомого файла, воспользуйтесь опцией -iname. С помощью опции -regex или -iregex можно найти что-то соответствующее регулярному выражению.
Команда find с параметром -exec позволяет выполнить команду для всего найденного.
Например:
find / -name '*.docx' -exec cp '{}' /tmp/ ';'
Найдя любой файл с расширением
.docx
он будет скопирован в директорию
/tmp
Для того, чтобы найти, где располагается бинарный файл программы, исходные тексты и документация воспользуйтесь командой whereis:
whereis ssh
Если вам необходимо найти только исполняемые файлы программ, которые указаны в путях переменных окружения, воспользуйтесь командой which:
which ssh
Как отредактировать текстовый файл
Редактировать текстовые файлы нужно часто при настройке серверов и не только. В данном разделе мы дадим только вводную информацию. В дальнейшем вы можете изучать редакторы более глубоко.
Как переместить или переименовать файл или директорию?
Для перемещения файла или директории используйте команду
mv
mv откуда куда
Переименование можно представить, как перемещение в ту же директорию с другим именем.
Давайте переименуем директорию suda в tuda:
mv suda tuda
Заметьте, что
вы можете переместить и переименовать файл или директорию в одну команду при необходимости
. Для этого в правой части напишите уже новое имя:
mv tuda /var/www/site
В данном примере мы переместили директорию
tuda
в директорию /var/www и переименовали в
site
Как просмотреть содержимое директории?
Для просмотра списка файлов и папок в директории воспользуйтесь командой:
ls
При этом не будут выведены скрытые файлы и директории (название скрытых файлов и директорий начинается с точки
.
Вы можете использовать дополнительные параметры команды ls.
Наиболее часто используемые:
- ls -l – показать дополнительно список прав, размеры файлов, дату изменения и владельца;
- ls -a – показать все, включая скрытые файлы;
- ls -la – показать все, включая скрытые файлы, список прав, размеры файлов, дату изменения и владельцев;
Можно просмотреть дерево директорий с помощью команды:
tree
Этого приложения может не быть в вашем дистрибутиве.
Если вы видите сообщение:
The program 'tree' is currently not installed.
, установите программу
tree
В Debian и Ubuntu это можно сделать с помощью команды:
apt-key update && apt-get update && apt-get -y install tree
В CentOS и Oracle Linux:
yum install -y tree
Результат работы tree выглядит так:
Как создать директорию?
Для создания директории используйте команду
mkdir
Например, создадим в текущей директории директорию «foo»:
mkdir foo
Для создания директорий и поддиректорий используйте команду
mkdir -p
mkdir -p foo1/foo2/foo3
Как создать пустой файл
Для этого используйте команду:
touch имя_файла
Как удалить файл или директорию?
Для удаления воспользуйтесь командой
rmrm file1.txt
Чтобы удалить и вложенные файлы и папки, добавьте параметр
-r
rm -r folder
Если вы не хотите, чтобы вам был задан вопрос, спрашивающий разрешение на удаление, используйте параметр
-f
rm -r folder -f
Если вы хотите удалить только пустую директорию, вам поможет команда rmdir:
rmdir folder
Если директория не пустая, вы получите уведомление и удаление не будет выполнено.
Копирование данных с помощью scp
Этот способ особенно полезен, если вы хотите переносить данные между серверами.
На вашем компьютере запустите терминал или Cygwin в Windows (руководство по установке Cygwin есть в этой статье).
Для копирования файла используйте команду:
scp откуда куда
Для копирования папки используйте команду:
scp -r откуда куда
Встает вопрос, как же указать местоположение на удаленном сервере. Это делается в формате:
имя_пользователя@ip_адрес_сервера:путь
Например, давайте скопируем папку
temp
на удаленный сервер в папку пользователя (~):
scp -r temp root@77.221.144.179:~/
Или давайте скопируем ее в папку /var/www:
scp -r temp root@77.221.144.179:/var/www/
Теперь давайте вернем папку temp из /var/www на наш компьютер:
scp -r root@77.221.144.179:/var/www/temp ~/temp
, где
~
– папка пользователя на нашем компьютере.
Данный способ удобно использовать и для переноса данных между серверами.
Навигация
После подключения к серверу вы оказываетесь в домашней папке пользователя. Чтобы узнать точный путь к вашему текущему местонахождению, воспользуйтесь командой:
pwd
Она выведет текущую рабочую директорию (print working directory).
Если вам нужно перейти в другую папку, для этого используется команда cd (change directory) с указанием пути к нужной вам папке:
cd /home
Говоря о навигации, нельзя не упомянуть сокращения для обозначения некоторых директорий:
Операции с файлами и каталогами
У каждой команды имеется множество параметров, чтобы узнать их, наберите команду и параметр —help, например:
ls --help
Далее приведен список основных команд навигации в консоли Linux.
Относительный путь
Относительный путь не содержит “/” в начале. Это означает, что вы указываете путь относительно директории, в которой сейчас находитесь.
Для задания относительных путей нам понадобятся служебные символы:
- . — означает текущую директорию
- .. — означает директорию выше этой по иерархии.
- ~ — означает домашнюю директорию пользователя.
Например, мы находимся в директории
/root/
. Давайте перейдем в директорию /:
cd ..
Мы сказали «перейди в директорию, лежащую выше этой по иерархии».
Давайте теперь перейдем в директорию root:
cd root
Это означает «перейди в директорию root, которая находится в директории, в которой мы сейчас находимся».
То же самое можно сделать, используя обозначение текущей директории:
cd ./root
Из любого места мы можем перейти в домашнюю директорию, используя команду:
cd ~
Перемещение между каталогами
Для перехода в домашний каталог используется команда cd. Название этой команды является сокращением слов change directory.
Приглашение к вводу команды
Приглашение к вводу команды в эмуляторе терминала имеет следующий формат:
Здесь <имя пользователя> — это имя, которое вы использовали для входа в систему и под которым вы сейчас работаете. Затем идет значок @, за ним имя локальной системы, далее двоеточие и имя текущего каталога, в котором вы в данный момент находитесь.
В эмуляторе gnome-terminal при запуске терминала в качестве каталога используется значок тильда ~. В Linux символ ~ используется для сокращенного обозначения домашней директории пользователя, а именно директории /home/<имя пользователя>.
В конце приглашения выводится знак доллара $.
Расположение каталогов в файловой системе
При входе на сервер, вы, как правило, попадаете в домашний каталог вашей учетной записи, отведенный для хранения файлов и создания директорий.
Для того чтобы узнать, где располагается каталог, в котором мы сейчас находимся, используется команда:
pwd
Результат выполнения команды выглядит следующим образом:
/home/demo
Домашний каталог располагается после имени учетной записи пользователя, в приведенном примере он называется /demo. Этот каталог находится в каталоге с именем /home и в каталоге верхнего уровня, который называется root или корневой каталог, поэтому представлен одной косой чертой /.
Редактирование
Для редактирования файлов используются консольные текстовые редакторы. Самые известные — vi и nano. В некоторых дистрибутивах vi заменён на vim (vi improved, улучшенный vi) или vim.tiny
Редактор vi будет доступен вам по умолчанию на большинстве Linux-систем.
А теперь к делу. Vi (более известен как Vim) — старый, очень гибкий и при этом не очень простой в плане управления редактор. Собственно, так он и попал в популярные программистские и админские шуточки.
Запуск редактора без аргументов откроет его в режиме справки:
vi
Чтобы закрыть Vim (без сохранения), введите сочетание :q!
Если указать редактору путь к файлу, он откроет его для редактирования. Если файл не существовал, он будет создан:
vi new-file.txt
При первом входе Vim открывает файл в режиме просмотра. Он не позволяет редактировать его содержимое, но можно вводить командные последовательности, перемещаться по тексту, выполнять поиск и пр.
Чтобы начать ввод, нужно перейти в режим редактирования с помощью клавиши I. Чтобы вернуться в режим просмотра, нажмите Esc.
Перемещение по тексту выполняется с клавиатуры:
- перемещение в начало текста: Esc дважды G
- перемещение в конец текста: Shift G
- перемещение по строке горизонтально: стрелки ←→
- перемещение по строкам вертикально: стрелки ↑↓
- отображение номеров строк: Esc, введите
:set number
, нажмите Enter - перемещение по номерам строк: Esc, введите
:
номер строки, нажмите Enter
Для выхода с сохранением файла нажмите Esc и введите :wq!
Более современной и удобной альтернативой Vim считается редактор nano. Современные дистрибутивы включают его по умолчанию, но на ранних версиях устанавливать придётся вручную:
Ubuntu и Debian:
apt -y install nano
CentOS:
yum -y install nano
Вызов nano без аргументов откроет пустой редактор. Можно начать ввод (при сохранении вам будет предложено указать имя и сохранить файл) или вызвать режим помощи со списком доступных команд с помощью сочетания Ctrl G.
Для сохранения файла нажмите Ctrl O — редактор предложит ввести имя файла: введите имя и нажмите Enter. Если файл существовал, и имя изменять не требуется, просто нажмите Enter.
Для выхода из редактора нажмите Ctrl X.
Символические ссылки
Символическая ссылка — специальный файл, указывающий на документ в другом месте дисковой иерархии. При удалении такой ссылки файл останется на месте. При удалении исходного файла или перемещении исходного файла ссылка тоже останется на месте, но будет вести на несуществующий адрес.
Создать символическую ссылку можно командой:
ln -s исходный_файл символическая_ссылка
Скачивание и загрузка
Для передачи файлов на сервер и с сервера есть много способов. Самые простые — использование wget, curl или scp.
Сколько свободного и занятого места?
Для того, чтобы узнать, сколько занятого и свободного места на диске, воспользуйтесь командой:
df -h
Как мы видим, объем диска 20 гигабайт, занято 2.9 гигабайта, свободно 16 гигабайт.
Для того, чтобы узнать размер директории или файла, воспользуйтесь командой:
du -sh <путь к директории>
Соединение по sftp с помощью filezilla
Вы можете воспользоваться
и настроить соединение по STFP.
Установите клиент, нажмите кнопку создания нового подключения, как показано на скриншоте ниже:
Создаем ссылки
Есть два типа ссылок: жесткие ссылки и символические ссылки.
Создание
В терминале есть несколько способов создания новых файлов.
Самый простой, одновременно создающий и файл, и недостающие папки — команда touch. Достаточно передать ей полный путь к файлу. Для примера создадим в папке docs папку copies, а внутри неё — файл copies-list.txt:
touch docs/copies/copies-list.txt
Несуществующая папка copies создастся автоматически.
Если нужно создать сразу несколько файлов, можно просто перечислить их через пробел:
touch file1.txt file2.txt file3.txt
Ещё один способ создания новых файлов — вызвать какой-нибудь консольный текстовый редактор с указанием полного пути к файлу. Однако все папки придётся создать заранее. Тогда редактор автоматически создаст файл и откроет его для редактирования. Если не сохранить файл в редакторе, даже пустой, он не будет создан. Команда ниже добавит новый файл с помощью редактора vi:
vi new-file.txt
Для сохранения и выхода из файла в vi нужно нажать клавишу Esc, ввести сочетание :wq и нажать Enter. Для выхода без сохранения нужно также нажать Esc, ввести сочетание :q! и нажать Enter.
Ещё пара способов создания пустых файлов:
Требования
Cервер с Ubuntu 20.04
Все команды, описанные ниже, будут работать и в других дистрибутивах Linux.
Удаление
Для удаления файлов используется команда rm. Она крайне опасна — неправильное применение грозит удалением всего содержимого сервера. Поэтому, как говорится, семь раз отмерь, один раз отрежь: категорически важно перепроверять путь, который вы указываете для удаления.
Самая простая версия rm удалит файл с предварительным подтверждением — для этого потребуется ввести y и нажать Enter:
rm new-file.txt
Для полного же уничтожения всего и вся к команде добавляются параметры -rf. Первый отвечает за рекурсивное удаление данных (т.е. удаление вложенных файлов и папок), второй позволяет отключить подтверждение при удалении. Например, следующая команда удалит папку photos, размещённую в папке docs, и всё её содержимое:
rm -rf docs/photos
Для шуток над неопытными администраторами им под тем или иным предлогом предлагают выполнить команду rm -rf [/] (без квадратных скобок). Она удаляет всё содержимое сервера от корня. Результат — все данные безвозвратно теряются, а сервер перестаёт работать.
Файловый менеджер для linux
Спасибо, что дочитали статью до конца. Напоследок расскажем о графическом файловом менеджере для Linux
Midnight Commander
или просто
mc
Установка mc в CentOS или Oracle Linux:
yum -y install mc
Установка mc в Ubuntu или Debian:
apt-key update && apt-get update && apt-get install -y mc
Запустить файловый менеджер можно просто командой
mc
Это классический двухпанельный файловый менеджер. Вы можете использовать функциональные кнопки компьютера f1… для операций согласно подсказкам на экране. С его помощью можно редактировать файлы, создавать папки, перемещать и копировать папки и файлы и многое многое другое. Этот менеджер может быть полезен на начальном этапе знакомства с Linux.
Для выхода из mc нажмите F10 и Enter.
Если вы нашли ошибку в статье, считаете, что нужно добавить что-то важное или просто у вас есть вопрос — напишите нам.
Успешного использования Linux на VPS от Infobox и на облачных VPS.
Чтение
Бывает, что нам нужно получить какую-то информацию из файла без необходимости редактировать его. В таком случае необязательно использовать текстовый редактор — есть более простые инструменты.
Команда cat позволяет вывести в терминал всё содержимое файла, который указан в качестве аргумента:
cat example.txt
Однако, если мы заведомо знаем, что в файле большой объём информации, нет смысла выводить его целиком. Например, команды head и tail могут вывести часть содержимого с начала или конца файла соответственно. Если добавить к ним ключ -n, можно уточнить, сколько строк текста нужно вывести:
head -n 3 example.txt
tail -n 3 example.txt
Помимо прочего, команда tail очень удобна для чтения логов с ключом -f. В таком режиме она открывает файл в режиме ожидания и выводит все добавляемые данные. Пригодится для тестирования или дебаггинга.
Иногда нам всё-таки нужно полностью просмотреть файл. При этом читать его вывод в терминале неудобно. На такие случаи есть команда less — она открывает файл (или переданный в неё вывод другой команды) в режиме чтения:
Cat — вывод содержимого файла
Утилита cat выводит содержимое текстового файла. Простейший синтаксис команды cat <имя файла>. Утилита cat может использоваться для соединения конкатенации двух текстовых файлов, собственно от этого и происходит название утилиты (catenation, concatenation).