Полномочия Unix - что ТОЧНО является “группой владельца” (примечание: исключительный)?

Я программирую файловую систему Предохранителя.
До сих пор настолько нормальный, не встретился с неразрешимыми проблемами (кроме производительности).

Однако я прочитал следующие статьи:
http://linuxcommand.org/lts0070.php
http://www.perlfect.com/articles/chmod.shtml
http://mason.gmu.edu/~montecin/UNIXpermiss.htm
http://www.linux.com/learn/tutorials/309527-understanding-linux-file-permissions
http://www.tutorialspoint.com/unix/unix-file-permission.htm
https://kb.iu.edu/d/abdb

И у меня есть следующий вопрос:
Учитывая универсальную строку разрешения Unix -
Я понимаю, что строка (после первого символа) делится в группы 3 (rwx) для

owner
owner_group
all/world/anyone

Однако в одной из статей явно говорится, 1 пользователь может быть в группах N.
Итак, почему исключительное здесь для группы владельца (не группы)? Какова точно группа владельца, если я (создатель файла и поэтому владелец) нахожусь в нескольких группах?

Скажите, что я - член группы A, группы B и группы C.
Теперь я создаю файл где-нибудь.

Начиная с выражения owner_group является исключительным и не множественным, к который get's группы owner_group примененные полномочия?
B XOR XOR C, или все они или ни один из них?
Если к этому относятся только один (поскольку исключительное подразумевает), как определяется, которые группируются, права присвоены?

У меня есть отличное чувство, что я действительно не понимаю что-то здесь, или что я неправильно понимаю значение слова "группа владельца".

4
задан 24 February 2015 в 06:18

1 ответ

  • Пользователь может быть членом нескольких групп.
  • Файл принадлежать точно одной группе и одному пользователю.
  • Если пользователь является членом группы владельца файла (т.е. группа foo владеет файлом, и одна из групп пользователя foo), затем соответствующие полномочия группы относятся к тому пользователю (если не переопределено полномочиями владельца).

Группа владельца является частью владения файла. Рассмотрите:

$ stat /usr/bin/crontab 
  File: ‘/usr/bin/crontab’
  Size: 35984       Blocks: 72         IO Block: 4096   regular file
Device: 803h/2051d  Inode: 131439      Links: 1
Access: (2755/-rwxr-sr-x)  Uid: (    0/    root)   Gid: (  103/ crontab)
Access: 2015-02-05 20:20:43.438507538 +0530
Modify: 2013-02-09 12:32:23.000000000 +0530
Change: 2014-09-30 19:22:09.508515013 +0530
 Birth: -

Это указывает, что владение файла с пользователем root и группа crontab.

Скажите, что я - член группы A, группы B и группы C. Теперь я создаю файл где-нибудь.... [К] которому get's группы owner_group примененные полномочия?

Это зависит от того, что - Ваша основная группа в то время, когда Вы создали тот файл. Основная группа является первой, перечисленной, когда Вы работаете groups команда. Обычно, это определяется Вашим GID. Однако можно временно установить одну из других групп как основное использование newgrp команда. Например:

$ groups 
muru adm cdrom sudo dip plugdev lpadmin sambashare
$ rm foo; touch foo
$ stat -c %G foo  # this prints the owner group of the file
muru
$ newgrp sudo   
$ rm foo; touch foo
$ stat -c %G foo
sudo

У меня есть отличное чувство, что я действительно не понимаю что-то здесь, или что я неправильно понимаю значение слова "группа владельца".

То, что группа владельца является атрибутом файла, не пользователем.

Я понимаю, что строка (после первого символа) делится в группы 3 (rwx) для

owner
owner_group
all/world/anyone

Немного прочь: третье поле является другими, не всеми. Другие покрывают всех кроме владельца файла и членов группы владельца файла. Различие играет роль при использовании символьных режимов с chmod:

  • chmod a-x устраняет общий выполнять полномочия
  • chmod o-x устраняет всех, кого else's выполняет разрешение, в то время как отъезд группы владельца и владельца выполняет нетронутое разрешение.

Наконец, примечание по пользователю частные группы. UPGs довольно распространены в настольных системах, но не считают их само собой разумеющимся в другом месте. Если UPGs включены, вероятно, что у основной группы пользователя и имени пользователя есть тот же числовой идентификатор и имя, и существует уникальная группа для каждого пользователя. Это - все.

12
ответ дан 23 November 2019 в 11:41

Другие вопросы по тегам:

Похожие вопросы: