Команда mkdir Linux

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

Одна из самых распространенных ошибок — сохранение информации в базе домашнего каталога (того, в который можно попасть, войдя в систему). В нем и остальных подкаталогах, созданных для организации файлов, выполняется большая часть работы пользователя.

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

Синтаксис

Рассмотрим синтаксис.

mkdir [опция...] [каталог...]

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

Основные опции:

  • -m (--mode=режим) - назначить режим доступа (права). По умолчанию mod принимает значение 0777, что обеспечивает неограниченные права.
  • -p (--parents) - не показывать ошибки, а также их игнорировать.
  • -z  (--context=CTX ) принимает контекст SELinux для каталога по умолчанию.
  • -v (--verbose) - выводить сообщение о каждом новым каталоге.
  • --help - вывести справочную информацию.
  • --version - выводит информацию о текущей версии утилиты.

Выполняя команду, нужно иметь достаточно прав на создание перечня в родительском каталоге, либо же произойдет ошибка. Чтобы их задать в символьном виде или в качестве восьмеричных чисел, нужно убедиться, что весь путь до последнего элемента должен существовать. Затем следует воспользоваться функцией -m (или –mode).

Примеры использования

Чтобы понять как работает утилита mkdir рассмотрим примеры.

Создание каталогов

Создадим новую папку под названием "newpapka". Для этого напишем команду без аргументов.

mkdir newpapka

Создание папки из терминала

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

Создадим несколько папок newpapka2, newpapka3, newpapka4.

mkdir newpapka2 newpapka3 newpapka4

Создадим папку "papka" в "/root/katalog".

mkdir /root/katalog/papka

Полный путь

Создание родительских каталогов

Родительский каталог - это каталог, в котором находится текущий подкаталог.

Зайдем в папку "primercatalog" с помощью команды "cd".

cd /root/primercatalog

Создадим папку papka1, в papka1 - papaka2, в papka2 - papka3. Для этого будем использовать аргумент "-p" (игнорировать ошибки).

mkdir -p papka1/papka2/papka3

Предоставление доступа

Для примера воспользуемся аргументом "-m" и предоставим доступ на чтение, запись и выполнение содержимого каталогов.

mkdir -m a=rwx primer

Или так:

mkdir -m 777 primer

Более подробно о назначении прав можно посмотреть в другой статье chmod.