Команда chmod в Linux — подробное описание

В операционной системе Linux система полномочий имеет передовое значение, а обусловлено это возможностью разделять привилегии между пользователями, контролировать действия, а также ограничивать доступ к файлам. Права доступа Linux делятся на три вида – право на выполнение, запись и чтение, а применяться они могут к трем категориям пользователей – владелец файла, группа и все остальные. Также стоит добавить, что полномочия применимы для всех без исключения файлов, ведь в Линукс даже устройства считываются как файлы.

Команда chmod в Linux — что это и зачем нужна

Параметр Linux chmod представляет собой набор правил, определяющих, кто и каким образом может получить доступ к конкретному файлу, папке или каталогу. Этот свод правил носит название режимы файлов или права доступа к директориям. Имя «chmod» обозначает «режим изменения» и используется для редактирования, создания доступа к отдельным директориям.

Синтаксис команды chmоd в ОС Linux

Дополнительные параметры команды, перечень основных

Ранее уже упоминалось, что операционная система Linux оснащена большим количеством встроенных инструментов, которые имеют дополнительные параметры. Операция «chmod» оснащена следующими параметрами:

  • -c, —changes – предназначен для выдачи подробного вывода лишь в том случае, если изменение было действительно осуществлено.
  • -f, —silent, —quiet — бесшумный режим, предназначенный для подавления большинства сообщений о системных ошибках.
  • -v, —verbose – носит название «подробный режим», предназначен для выведения на экран диагностического уведомления для каждой обработанной директории.
  • —version – используется для выведения на экран информации о версии, затем по истечении небольшого промежутка времени окно исчезает самостоятельно.
  • —no-preserve-root – не затрагивать (обрабатывать) корневой каталог, в котором заданы параметры по умолчанию.
  • —help – отобразить на экране электронный справочник, после чего в случае отсутствия активности он закроется самостоятельно.
  • —preserve-root – запрет на то, чтобы работать рекурсивно в корневом каталоге.
  • -R, —recursive – рекурсивная замена каталогов и файлов на компьютере с операционной системой Линукс.
  • —reference=RFILE – присвоить директории RFILE соответствующие разрешения, в независимости от используемого режима.

Команда chmod и примеры ее использования

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

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

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

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

Символьный режим

По умолчанию значение прав доступа директории file – rwxrwxrwx – имеет полный доступ для всех. Далее, в зависимости от поставленной задачи, параметры можно изменять следующим образом:

  • $ chmоd  a-x  (rw-rw-rw-) – параметр, ограничивающий доступ на редактирование для всех групп и юзеров.
  • $ chmod  go-w  (rw-r—r—) – команда, запрещающая группам и остальным пользователям редактировать данные.
  • $ chmоd u x (rwxr—r—) – разрешение на редактирования файла владельцем.
  • $ chmod g=u (rwxrwxr—) – присваивание группе тех прав, которыми обладает владелец каталога или папки.
  • $ chmоd go-rw (rwx—x—) – параметр, который ограничивает чтение и редактирование файлов пользователями группы и прочими юзерами.

Как задать параметры, используя символьные нотации в Линукс

Для использования перечисленных параметров пользователю достаточно просто подставлять свои значения.

Использование команд в абсолютном режиме

В данном режиме предусмотрено большее количество команд. Теперь более подробно об использовании каждой из них:

  • $ chmоd 777 (rwxrwxrwx) – команда, предоставляющая полный доступ к чтению, записи и редактированию данных всеми группами и юзерами.
  • $ chmod 666 (rw-rw-rw-) – предоставление разрешения на запись и чтение для владельца, группы и других пользователей.
  • $ chmоd 744 (rwxr—r—) – команда, предоставляющая полный доступ владельцу директории, и доступ к чтению группам и другим юзерам.
  • $ chmod 700 (rwx——) — команда, предоставляющая полный доступ владельцу директории, и ставящая запрет на доступ группам и другим пользователям.
  • $ chmоd 644 (rw-r—r—) – владелец файла имеет право читать и вести записи, остальные группы и пользователи имеют возможность только читать файлы.
  • $ chmod 640 (rw-r——) – команда, устанавливающая разрешение на запись и чтение файла владельцу и группе, для других юзеров доступ ограничен.
  • $ chmоd 444 (r—r—r—) – команда, которая устанавливает доступ к чтению для всех пользователей и отдельных групп.
  • $ chmod 755 (rwxr-xr-x) – открывает доступ владельцу для записи, чтения и редактирования владельцем, группы и другие юзеры могут только открывать файл в режиме чтения.
  • $ chmod 505 (r-x—r-x) – владелец файла имеет право на чтение и редактирование, для остальных пользователей доступ ограничен.
  • $ chmоd 755 * – команда, которая открывает все права доступа в текущем каталоге. Важно понимать, что юзер имеет неограниченные полномочия на все файлы конкретной директории, другие пользователи и группы могут только читать и редактировать файлы.
  • $ chmоd -R 777 * – рекурсивная команда, распространяющаяся на все подкаталоги.

В данном случае рассмотрены лишь основные параметры, но далеко не все.

Установка прав при помощи чисел

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

  • 0 – установлены одни ограничения, ничего не разрешено;
  • 4 – пользователям, группам и остальным пользователя доступно только чтение;
  • 5 – всем категориям юзеров разрешено только чтение и редактирование пользовательских/системных данных;
  • 6 – разрешено чтение и запись данных;
  • 7 – предоставляет всем категориям неограниченный доступ к директориям, то есть чтение, запись и исполнение.

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

Как с помощью чисел установить права в ОС Linux

Связанные команды chgrp и chown

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

С помощью первой команды у юзера есть возможность изменить только группу. Пример ее использования: chgrp sambashare myfile.

Описание команды chown

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

Если рассматривать на конкретном примере, то для файла под названием «myfile» устанавливается новый владелец vasya. Применение команды будет выглядеть так: chown vasya myfile.

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

Рассматривая на конкретном примере, использование прав доступа к файлам в Linux выглядеть будет так: chown vasya:sambashare myfile, где «myfile» – это название файла, «vasya» – владелец, а «sambashare» – группа.

Числовые значения прав доступа

Линкус – это операционная система с открытым программным кодом, она пользуется большой популярностью среди программистов и продвинутых пользователей ПК. Обусловлено это отменными функциональными возможностями, безопасностью и возможностью бесплатного использования. Права доступа к directory и file подразделяются на несколько видов, поэтому для задавания оптимальных параметров необходимо ознакомиться с возможностью использования специальных команд.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *