ls
我在我的系统中发现了一个具有以下输出的目录:
drwxr-xr-x 5 username root 4096 Jan 14 2015 DIRNAME
这让我产生了一个疑问:文件所有者和组之间是否有任何限制?我的意思是系统中的每个用户都属于预定义的组。是否可以为文件/文件夹分配一个文件用户(所有者)不属于的“组”?
答案1
是否可以为文件/文件夹分配文件用户(所有者)不属于的“组”?
当然。例如:
$ 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
如您所见, 和root
都不muru
是 的成员crontab
,但 crontab 文件的组所有者是crontab
。
文件的所有者和组之间有什么限制吗?
完全没有1 .
1嗯,每个都有限制:UID 和 GID 必须是 32 位整数(IIRC),或者用户名和组名必须存在:
# 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’
但是,所有者和团体之间没有关系。