openSUSE 12.1 x86 KDE
На компьютере 2 пользователя, надо одному разрешить а другому запретить изменение файлов жёсткого диска NTFS (чтоб мог только читать).
Через Yast изменил fstab, сделал defaults,locale=ru_RU.UTF-8 но так оба юзера могут изменять файлы NTFS а надо чтоб один.
Как мне правильно сделать?
**uid=%user**,gid=users,**umask=022**,locale=ru_RU.UTF-8 0 0
где umask=022 - права доступа для файлов и директорий, т.е. в данном случае права доступа будут выглядеть так: -rw-r–r–
uid=%user,gid=users
А точно будет с именами работать?
В man ntfs-3g написано, что значения должны быть цифровые:
uid=value and gid=value
Set the owner and the group of files and directories. The values are numerical. The defaults
are the uid and gid of the current process.
Будет, если только монтирование раздела производится через файл конфигурации fstab, в ином случае, т.е. при непосредственном использовании команды mount - нет.
Проверяем, вдруг ошибся:
aliaksei@dhcppc0:/> cat /etc/fstab
/dev/disk/by-id/ata-WDC_WD1600JS-22MHB0_WD-WCANM3452600-part4 swap swap defaults 0 0
/dev/disk/by-id/ata-WDC_WD1600JS-22MHB0_WD-WCANM3452600-part3 / ext4 acl,user_xattr 1 1
/dev/disk/by-id/ata-WDC_WD1600JS-22MHB0_WD-WCANM3452600-part5 /local/sda5 ext4 defaults 1 2
/dev/disk/by-id/ata-WDC_WD1600JS-22MHB0_WD-WCANM3452600-part6 /windows/sda6 ntfs-3g **uid=aliaksei,gid=users**,umask=022,locale=ru_RU.UTF-8 0 0
proc /proc proc defaults 0 0
sysfs /sys sysfs noauto 0 0
debugfs /sys/kernel/debug debugfs noauto 0 0
devpts /dev/pts devpts mode=0620,gid=5 0 0
aliaksei@dhcppc0:/> ls -l /windows/
total 16
drwxr-xr-x 1 **aliaksei users **16384 июня 5 16:37 sda6
aliaksei@dhcppc0:/> sudo umount /windows/sda6
root's password:
aliaksei@dhcppc0:/> mount | grep sda6
aliaksei@dhcppc0:/> sudo ntfs-3g -o ro**,uid=aliaksei,gid=users**,umask=0022 /dev/sda6 /windows/sda6
'uid' option needs a decimal value
aliaksei@dhcppc0:/> id
uid=1000(aliaksei) gid=100(users) groups=100(users),33(video)
aliaksei@dhcppc0:/> sudo ntfs-3g -o ro**,uid=1000,gid=100**,umask=0022 /dev/sda6 /windows/sda6
aliaksei@dhcppc0:/> mount | grep sda6
/dev/sda6 on /windows/sda6 type fuseblk (ro,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096)
uid=%user,gid=users,umask=022,locale=ru_RU.UTF-8
В этом случае для всех запрет, только одному разрешено (uid=%user)
А как сделать, чтобы только одному юзеру был запрет (можно только читать) а остальным можно менять диск? Например 5 юзеров/учётных записей, только одному нужен запрет (можно только читать).
neandertal44 wrote:
> Например 5
> юзеров/учётных записей, только одному
> нужен запрет (можно только читать).
Создать групппу из оставшихся четырёх пользователей, вписать эту группу в
параметр gid и назначить нужные права ключом umask.
Группа пользователей может быть любая кроме users ? Какие ещё есть варианты umask кроме umask=022 ?
neandertal44 wrote:
> Группа пользователей может быть любая
> кроме users ?
Вы сами создаёте группу и называете как угодно.
> Какие ещё есть варианты umask
> кроме umask=022 ?
Долго рассказывать.
“Для понимания сути задания прав в Unix-like системах, нужно знать
представление чисел в восьмеричной и двоичной системах счисления”
отсюда: http://ru.wikipedia.org/wiki/Chmod