The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]



"Как задать опр. права на файлы создаваемые другими пользов-ми?"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Разное / Linux)
Изначальное сообщение [ Отслеживать ]

"Как задать опр. права на файлы создаваемые другими пользов-ми?"  +/
Сообщение от nrv (ok) on 15-Апр-18, 14:40 
Как задать определенные права на файлы создаваемые другими пользователями?
Задал setgid на родительскую папку, теперь, группа наследуется, это хорошо. Но transmission при добавлении торрентов права на файл для группы ставит только на чтение. А нужно чтобы были на запись, а то другие пользователи не могут работать с файлом.
Как можно это сделать?
Umask - это то? Вроде её можно установить для демона, но мне непонятно, права на файл есть и владельца и у группы и у всех остальных, а umask задает только одно значение. На что оно будет распространяться?
Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Как задать опр. права на файлы создаваемые другими пользов-ми?"  +/
Сообщение от Unreal Grammar Nazi on 15-Апр-18, 17:09 
> Как задать определенные права на файлы создаваемые другими пользователями?
> Задал setgid на родительскую папку, теперь, группа наследуется, это хорошо. Но transmission
> при добавлении торрентов права на файл для группы ставит только на
> чтение. А нужно чтобы были на запись, а то другие пользователи
> не могут работать с файлом.
> Как можно это сделать?
> Umask - это то? Вроде её можно установить для демона, но мне
> непонятно, права на файл есть и владельца и у группы и
> у всех остальных, а umask задает только одно значение. На что
> оно будет распространяться?

umask - это то. Его значение используется в следующей операции:

РезультирующиеПрава = ЗапрошенныеПрава & (~umask).

То есть биты, установленные в umask, будут убраны из результирующих прав. По умолчанию программы обычно создают файлы с правами 0666, а каталоги - 0777. Типовой umask - 0022. Вот и получается, что у файлов при этом получаются права 0666&(~0022)=0644, а у каталогов 0777&(~0022)=0755.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Как задать опр. права на файлы создаваемые другими пользов-ми?"  +/
Сообщение от nrv (ok) on 15-Апр-18, 18:06 
> umask - это то. Его значение используется в следующей операции:
> РезультирующиеПрава = ЗапрошенныеПрава & (~umask).
> То есть биты, установленные в umask, будут убраны из результирующих прав. По
> умолчанию программы обычно создают файлы с правами 0666, а каталоги -
> 0777. Типовой umask - 0022. Вот и получается, что у файлов
> при этом получаются права 0666&(~0022)=0644, а у каталогов 0777&(~0022)=0755.

Спасибо! Работает. Смутила переписываемая из каждой заметки в новую фигня, что-то там вычитается
откуда-то, а также то, что нигде не написано, что первая цифра - это пользователь, вторая - группа, и т.д. В вики арча нашел табличку, какую цифру писать, чтобы давались желаемые права.
Может оно там и вычитается, на на моем примере работает так, что нужно rwxrw-r--, то umask 764. Иии такое возможно, только когда пользователем, создающим файл, запрашиваюся полные права для всех, а если он запросит меньше чем в umask, то и будет меньше чем в umask?

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Как задать опр. права на файлы создаваемые другими пользов-ми?"  +/
Сообщение от PereresusNeVlezaetBuggy (ok) on 15-Апр-18, 18:22 
>> umask - это то. Его значение используется в следующей операции:
>> РезультирующиеПрава = ЗапрошенныеПрава & (~umask).
>> То есть биты, установленные в umask, будут убраны из результирующих прав. По
>> умолчанию программы обычно создают файлы с правами 0666, а каталоги -
>> 0777. Типовой umask - 0022. Вот и получается, что у файлов
>> при этом получаются права 0666&(~0022)=0644, а у каталогов 0777&(~0022)=0755.
> Спасибо! Работает. Смутила переписываемая из каждой заметки в новую фигня, что-то там
> вычитается

Вычитание — более понятная операция, поэтому часто говорят о ней. Может сбить с толку, да.

> откуда-то, а также то, что нигде не написано, что первая цифра -
> это пользователь, вторая - группа, и т.д.

А это считается азами, которые должны все знать до того как начать задавать вопросы. ;)

Только учтите, что права могут бывать и с четырьмя цифрами — это SUID-, SGID- и sticky bit. Например, права на /tmp обычно 1777.

> В вики арча нашел
> табличку, какую цифру писать, чтобы давались желаемые права.
> Может оно там и вычитается, на на моем примере работает так, что
> нужно rwxrw-r--, то umask 764.

Если надо rwxrw-r--, то есть 764, то umask, являясь комплиментарным (дополняющим) с битовой точки зрения, должен быть 013.

> Иии такое возможно, только когда пользователем,
> создающим файл, запрашиваюся полные права для всех, а если он запросит
> меньше чем в umask, то и будет меньше чем в umask?

Если программа изначально попросит, скажем, 0600, а umask будет 0013, то в результате всё равно получится 0600.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема


  Закладки на сайте
  Проследить за страницей
Created 1996-2018 by Maxim Chirkov  
ДобавитьПоддержатьВебмастеруГИД  
Hosting by Ihor