Такие похожие, но такие разные
Говоря простыми словами,
chown определяет, кому принадлежит файл, а
chmod указывает биты доступа, которые трактуют правила о том, кому и что с файлом или каталогом вообще можно делать.
Через команду
chown мы можем указать владельца ресурса и группу, которая будет иметь к нему доступ:
$ chown hero:admins file
Утилита
chmod, в свою очередь, определяет "
rwx" биты для ресурса. Как мы знаем, бит '
r' разрешает чтение файла, '
w' отвечает за его изменение и '
x' за выполнение.
Мы можем сказать "Так, вот пользователь может все, а группа только читать файл!".
Для реализации нужно выполнить:
$ chmod u=rwx,g=r ./file
Также, вы наверняка видели использвание
chmod с числовым аргументом, например "
777".
Таким способом тоже можно выдавать права. Каждое число относится к отдельной касте (пользователь, группа, остальные).
Грубо говоря, число
7 описывает доступ "по всем фронтам"
rwx. Если мы захотим добиться результата команды выше, только с числовым аргументом, нам потребуется:
$ chmod 740 ./file
1) для пользователя: 4 (чтение) + 2 (запись) + 1 (выполнение) = 7;
2) для группы: 4 (чтение) = 4;
3) для кого-то еще: ничего = 0;
Linux++ | IT-Образование