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.