Как поменять права на файл или директорию в linux/unix?

Пользователь

от kurt , в категории: Другие , 5 месяцев назад

Как поменять права на файл или директорию в linux/unix?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jerrold_langworth , 5 месяцев назад

@kurt 

Для изменения прав на файл или директорию в Linux/Unix используется ко***** chmod.


Синтаксис команды chmod выглядит следующим образом:

1
chmod [опции] права файл/директория


Опции, которые можно использовать с командой chmod:

  • -R (рекурсивно) — применить изменения прав рекурсивно для всех файлов и поддиректорий;
  • -c (вывод изменений) — вывести информацию только о файлах, изменение прав которых произошло;
  • -v (подробный вывод) — вывести подробную информацию обо всех файлах, для которых изменены права;
  • -f (игнорировать ошибки) — игнорировать ошибки, такие как отсутствие прав доступа или отсутствие файла.


Права можно указывать двумя способами:

  1. Традиционный способ с использованием цифр: 0 — нет прав; 1 — право исполнения; 2 — право записи; 3 — права исполнения и записи; 4 — право чтения; 5 — права чтения и исполнения; 6 — права чтения и записи; 7 — полные права.
  2. Символьный способ: u (владелец файла) или a (все пользователи); + (добавить права), - (убрать права) или = (установить точно указанные права); r (чтение), w (запись) или x (исполнение).


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

  1. Установить права на чтение и запись для пользователя и права на чтение для группы и остальных пользователей для файла "file.txt": chmod u+rw,go+r file.txt
  2. Установить полные права для всех пользователей для директории "directory": chmod a+rwx directory
  3. Рекурсивно установить права на чтение и исполнение для всех файлов и поддиректорий в директории "directory": chmod -R +rx directory


Обратите внимание, что для изменения прав на файл или директорию нужно обладать соответствующими правами и быть владельцем файла или иметь права суперпользователя (root).