É possível atribuir um "grupo" a um arquivo / pasta ao qual o usuário do arquivo (proprietário) não pertence?
Certamente. Por exemplo:
$ sudo ls -l /var/spool/cron/crontabs
total 8
-rw------- 1 muru crontab 1136 Jul 21 12:30 muru
-rw------- 1 root crontab 1090 Jan 20 2015 root
$ groups
muru adm cdrom sudo dip plugdev lpadmin sambashare
$ groups root
root : root
Como você pode ver, nem root
, nem muru
, são membros de crontab
, mas o proprietário do grupo de arquivos crontab é crontab
.
Existe alguma restrição entre o proprietário do arquivo e o grupo?
Nenhum em todos 1 .
1 Bem, existem restrições em cada um individualmente: os UIDs e os GIDs precisam ser inteiros de 32 bits (IIRC), ou os nomes de usuário e grupo devem existir:
# touch /tmp/foo
# chown 1000000000:2000000000 /tmp/foo
# ls -l !$
ls -l /tmp/foo
-rw-r--r-- 1 1000000000 2000000000 0 Sep 15 09:04 /tmp/foo
# chown gibberish:garbage /tmp/foo
chown: invalid user: ‘gibberish:garbage’
Mas, não, nenhuma relação entre proprietário e grupo.