summaryrefslogtreecommitdiff
path: root/LINUX/CHMOD, CHOWN.md
diff options
context:
space:
mode:
authorvlapa <vlapa@ya.ru>2026-06-13 20:33:26 +0300
committervlapa <vlapa@ya.ru>2026-06-13 20:33:26 +0300
commite5abc1fe99340b979b18864d978179f71fe8f5c5 (patch)
tree98fd0ad7c6d0744894d6e74e446daacd9e6dd1b5 /LINUX/CHMOD, CHOWN.md
First
Diffstat (limited to 'LINUX/CHMOD, CHOWN.md')
-rw-r--r--LINUX/CHMOD, CHOWN.md79
1 files changed, 79 insertions, 0 deletions
diff --git a/LINUX/CHMOD, CHOWN.md b/LINUX/CHMOD, CHOWN.md
new file mode 100644
index 0000000..97a50b8
--- /dev/null
+++ b/LINUX/CHMOD, CHOWN.md
@@ -0,0 +1,79 @@
+## CHMOD ##
+```sh
+chmod опции права /путь/к/файлу
+
+# Сначала рассмотрим какими бывают права доступа linux и как они устанавливаются. Пред этим рекомендую прочитать статью про права, ссылка на которую есть выше. Есть три основных вида прав:
+
+- r - чтение;
+- w - запись;
+- x - выполнение;
+- s - выполнение  от имени суперпользователя (дополнительный);
+
+# Также есть три категории пользователей, для которых вы можете установить эти права на файл linux:
+
+- u - владелец файла;
+- g - группа файла;
+- o - все остальные пользователи;
+
+# Синтаксис настройки прав такой:
+# Группа_пользователейДействиеВид_прав
+
+"+" - включить или 
+"-" - отключить.
+
+- u+x - разрешить выполнение для владельца;
+- ugo+x - разрешить выполнение для всех;
+- ug+w - разрешить запись для владельца и группы;
+- o-x - запретить выполнение для остальных пользователей;
+- ugo+rwx - разрешить все для всех;
+
+# Но права можно записывать не только таким способом. Есть еще восьмеричный формат записи, он более сложен для понимания, но пишется короче и проще. Я не буду рассказывать как считать эти цифры, просто запомните какая цифра за что отвечает, так проще:
+
+# rwx = 7 | x=1 w=2 r=4
+
+- 0 - никаких прав;
+- 1 - только выполнение;
+- 2 - только запись;
+- 3 - выполнение и запись;
+- 4 -  только чтение;
+- 5 - чтение и выполнение;
+- 6 - чтение и запись;
+- 7 - чтение запись и выполнение.
+
+# Права на папку linux такие же, как и для файла. Во время установки прав сначала укажите цифру прав для владельца, затем для группы, а потом для остальных. Например, :
+
+- 744 - разрешить все для владельца, а остальным только чтение;
+- 755 - все для владельца, остальным только чтение и выполнение;
+- 764 - все для владельца, чтение и запись для группы, и только чтение для остальных;
+- 777 - всем разрешено все.
+
+Каждая из цифр не зависит от предыдущих, вы вбираете именно то, что вам нужно. Теперь давайте рассмотрим несколько опций команды, которые нам понадобятся во время работы:
+
+-c - выводить информацию обо всех изменениях;
+-f - не выводить сообщения об ошибках;
+-v - выводить максимум информации;
+--preserve-root - не выполнять рекурсивные операции для корня "/";
+--reference - взять маску прав из указанного файла;
+-R - включить поддержку рекурсии;
+--version - вывести версию утилиты;
+```
+
+## CHOWN ##
+```sh
+chown пользователь:группа опции /путь/к/файлу
+
+# В поле пользователь надо указать пользователя, которому мы хотим передать файл. Также можно указать через двоеточие группу, например, пользователь:группа. Тогда изменится не только пользователь, но и группа. Вот основные опции, которые могут вам понадобиться:
+
+-c, --changes - подробный вывод всех выполняемых изменений;
+-f, --silent, --quiet - минимум информации, скрыть сообщения об ошибках;
+--dereference - изменять права для файла к которому ведет символическая ссылка вместо самой ссылки (поведение по умолчанию);
+-h, --no-dereference - изменять права символических ссылок и не трогать файлы, к которым они ведут;
+--from - изменять пользователя только для тех файлов, владельцем которых является указанный пользователь и группа;
+-R, --recursive - рекурсивная обработка всех подкаталогов;
+-H - если передана символическая ссылка на директорию - перейти по ней;
+-L - переходить по всем символическим ссылкам на директории;
+-P - не переходить по символическим ссылкам на директории (по умолчанию).
+```
+
+
+![[2024-09-05 01.32.11.jpg]] \ No newline at end of file