[ @console @user @rights @chmod @chown ]
1
Chown (от англ. change owner) — программа для изменения владельца и группы на файлы и директории.
Сhmod (от англ. change mode) — программа для изменения прав доступа к файлам и каталогам.
Что надо сделать:
НАЗНАЧИТЬ юзера astenix из группы sudo (если нет, то сперва 'usermod -a -G sudo astenix') владельцем каталога из переменной
группа (sudo в нашем случае) может его только читать и запускать (если это видео, например), а остальные (если зайдут в ноут) не могут с этим файлом ничего делать, даже если увидят его.
Переключиться под root:
su
Сделать временную переменную, в которую надо положить путь к каталогу/файлу:
ASSIGNED_FOLDER=/home/astenix/
Выполнить:
chown astenix:sudo -R $ASSIGNED_FOLDER && chmod -R 750 $ASSIGNED_FOLDER && echo -e "\nDone!" exit
Объяснение
смена прав, -R рекурсивно, т.е. изменит и то, что внутри каталога astenix
циферки - это три отдельных атрибута:
7 - rwx - читать, писать, выполнять
6 - rw- - читаь, писать
5 - r-x - читать, выполнять
4 - r-- - читать
3 - -wx - писать, выполнять
2 - -w- - писать
1 - --x - выполнять
0 - --- - ничего нельзя делать
Первая цифра означает применения прав для пользователя,
Вторая - для группы
Третья - права для всех остальных
Например:
- права 750 на файл означают, что его создатель может делать с ним что угодно, группа может его только читать и запускать (если это видео, например), а остальные не могут с этим файлом ничего делать, даже если увидят его.
- права 1750 на каталог означают, что его создатель может делать с ним что угодно, группа может заходить в него, читать и запускать (если это видео, например) оттуда файлы, а остальные не могут в этот каталог даже зайти, даже если увидят его.
Для каталога действует дополнительный бит, он же 'sticky bit' (он же t-атрибут), который нужно использовать, если нужно разрешить членам группы записывать файлы в защищаемый нами каталог.
Если его не установить (указать права как 0750, или просто 750, что одно и то же), то любой пользователь, имеющий право записи в этот каталог, может удалить любой файл их этого каталога и создать новый с тем же именем и с любым содержимым.
Если же установить 'sticky bit' на каталог, это предотвращает удаление файлов в каталоге пользователями, ими не владеющими. Владелец создал там файлы 1.txt, 2.txt, 3.txt. Юзер группы создал там файлы 4.txt, 5.txt, 6.txt. Теперь и владелец каталога, и юзер группы сможет изменять файлы 4.txt, 5.txt, 6.txt, а вот файлы 1.txt, 2.txt, 3.txt юзер группы сможет читать, но не сможет изменять/удалять.
t-атрибут читается так: владелец имеет все права, группа - чтение, остальные не имееют никаких прав.
Пример
Дать полные права моему юзеру по имени astenix на каталог 'backups'
Из-под root
chown astenix:sudo -R backups/
а можно и так
sudo chown astenix:astenix -R home/astenix/
пояснение: сменить владельца и группу владельцев (с указанием группы надежнее) на пользователя 'astenix' и группу 'sudo' (предварительно убедиться в том, что пользователь 'astenix' входит в группу 'sudo') для всех файлов в каталоге 'backups'
Назначить astenix владельцем всех файлов на внешнем диске wd_green_4tb
А ПОТОМ всем файлам на диске прописать права доступа для (владельца) astenix "чтение и запись полностью".
chown astenix:sudo -R /media/astenix/wd_green_4tb/ && chmod astenix -R 777 /media/astenix/wd_green_4tb/
Назначить root владельцем всех файлов на внешнем диске wd_green_4tb
(чтобы защититься от случайного удаления файлов)
chown root:root -R /media/astenix/wd_green_4tb/