chmod — это команда Linux, которая позволит вам «установить разрешения» (т. е. указать, кто может читать/записывать/выполнять) для файла.
Использование
chmod разрешения файл
При использовании chmod вы должны знать, что существует три типа пользователей Linux, для которых вы устанавливаете разрешения. Поэтому, устанавливая разрешения, вы назначаете их «себе», «своей группе» и «всем остальным» в мире. Эти пользователи технически известны как:
- владелец
- группа
- все пользовтаели
Поэтому при установке разрешений на файл вам нужно будет назначить все три уровня разрешений, а не только одного пользователя.Существует три типа разрешений, которые Linux допускает для каждого файла.
- Чтение
- Запись
- Выполнение
Собираем все до кучи.
Итак, с точки зрения непрофессионала, если вы хотите, чтобы файл был доступен для чтения всем и только для вас, вы должны написать команду chmod со следующей структурой.
КОММАНДА:ВЛАДЕЛЕЦ:ГРУППА:ВСЕ:ПУТЬ_К_ФАЙЛУ
сhmod read&write read read FileName
chmod 644 FileName
Погодите! А что за числа?
Компьютер подозрительно смотрит на слова и отлично понимает числа. Придется с этим считаться. давайте взглянем на полный вывод команды ls
$ ls -l -rw-r--r-- 1 user groups 0 Sep 28 09:04 file1
Теперь преобразуем слова «read», «write» или «execute» в числовой эквивалент (восьмеричный) на основе приведенной ниже таблицы.
- 4 — чтение (r)
- 2 — запись (w)
- 1 — выполнение (x)
Практическое применение
chmod 400 file1 - разрешение на чтение владельцу
chmod 040 file1 - разрешение на чтение группе пользователей
chmod 004 file1 - разрешение на чтение всем
chmod 200 file1 - разрешение на запись владельцу
chmod 020 file1 - разрешение на запись группе пользователей
chmod 002 file1 - разрешение на запись всем
chmod 100 file1 - разрешение на выполнение владельцу
chmod 010 file1 - разрешение на выполнение группе пользователей
chmod 001 file1 - разрешение на выполнение всем
Ну, ок. А, что если я хочу, чтобы разрешение кому-либо было не только на чтение но и на запись. Все просто, для этого надо сложить цифры, чтобы объединить разрешения. Выглядит это все примерно так:
7=4+2+1 (чтение + запись + выполнение)
6=4+2 (чтение + запись)
5=4+1 (чтение + выполнение)
4=4 (чтение)
3=2+1 (запись + выполнение)
2=2 (запись)
1=1 (выполнение)
Рассмотрим. как это работает
chmod 666 file1 — чтение/запись для всех (какое-то адское разрешение)
chmod 755 file1 — чтение/запись/выполнение для владельца и чтение/выполнение для остальных
chmod 777 file1 — чтение/запись/выполнение для всех (несколько раз подумайте, когда устанавливаете такое разрешение
Was this helpful?
0 / 0