Chinaunix

标题: 只读文件可以强制保存 [打印本页]

作者: DooGooDD    时间: 2015-05-10 12:09
标题: 只读文件可以强制保存
最近自学鸟哥基础篇,发现个奇怪的问题:
[root@www ~]# groupadd project
[root@www ~]# useradd -G project alex
[root@www ~]# useradd -G project arod
[root@www ~]# id alex uid=501(alex) gid=502(alex) groups=502(alex),501(project)
[root@www ~]# id arod uid=502(arod) gid=503(arod) groups=503(arod),501(project)
[root@www ~]# mkdir /srv/ahome
[root@www ~]# ll -d /srv/ahome
drwxr-xr-x 2 root root 4096 Sep 29 22:36 /srv/ahome
[root@www ~]# chgrp project /srv/ahome
[root@www ~]# chmod 770 /srv/ahome [
root@www ~]# ll -d /srv/ahome
drwxrwx--- 2 root project 4096 Sep 29 22:36 /srv/ahome
[root@www ~]# su - alex
[alex@www ~]$ cd /srv/ahome
[alex@www ahome]$ touch abcd
[alex@www ahome]$ exit
[root@www ~]# su - arod
[arod@www ~]$ cd /srv/ahome
[arod@www ahome]$ ll abcd
-rw-rw-r-- 1 alex alex 0 Sep 29 22:46 abcd
最后我发现我用arod的账号登陆竟然可以强制保存文件只读文档abcd ,求大神给个指教,谢谢
作者: Fate未来    时间: 2015-05-10 13:29
已收藏。持续关注中。
作者: DooGooDD    时间: 2015-05-10 19:30
有人在么?
作者: w564791    时间: 2015-05-10 21:52
这你都能发现,看的好仔细,我也试过,,貌似和文件夹的w权限有关,没有w权限时你想改就不行咯,,而且父目录具有w权限时,强行修改文件内容会更改用户和用户组
作者: lyhabc    时间: 2015-05-10 22:21
是可以的            
作者: DooGooDD    时间: 2015-05-11 09:39
4楼,正解额,如果用户arod强行修改的话,属主和属组都会变成arod的了,然而这道题目的意图在于之后添加GUID,这一步在这里是必须不能修改的,下面是鸟哥的原话:

由上面的结果我们可以知道,若单纯使用传统的rwx 而已,则对刚刚 alex 建立的abcd 这个档案来说, arod 可以删除他,但是却不能编辑他!这不是我们要的样子啊!赶紧重新规划一下

[root@www ~]# chmod 2770 /srv/ahome
[root@www ~]# ll -d /srv/ahome drwxrws--- 2 root project 4096 Sep 29 22:46 /srv/ahome
测试:使用 alex 去建立一个档案,幵丏查阅档案权限看看:
[root@www ~]# su - alex
[alex@www ~]$ cd /srv/ahome
[alex@www ahome]$ touch 1234
[alex@www ahome]$ ll 1234 -rw-rw-r-- 1 alex project 0 Sep 29 22:53 1234
# 没错!这才是我们要的样子!现在 alex, arod 建立的新档案所属群组都是 project,
# 由于两人均属亍此群组,加上 umask 都是 002,这样两人才可以互相修改对方的档案!

难道偶的一次不经意的尝试,竟然找到了一个大bug,我只想知道真相额,谢谢各位了
作者: cu_shell    时间: 2015-05-11 09:54
你这2个用户都是project组,ahome 目录:组内用户具有全部权限。
abcd的权限:rw-rw-r--  对其他用户来说才是只读,组内用户是rw权限。自然就可以修改。
作者: DooGooDD    时间: 2015-05-11 10:11
cu_shell 发表于 2015-05-11 09:54
你这2个用户都是project组,ahome 目录:组内用户具有全部权限。
abcd的权限:rw-rw-r--  对其他用户来说才 ...




完全理解楼上的意思

但仔细看
[arod@www ahome]$ ll abcd
-rw-rw-r-- 1 alex alex 0 Sep 29 22:46 abcd
文档abcd的属主是alex 属组也是alex  应该和组project没有关系吧
arod这个用户对于文档abcd来说只是一个other的r权限,用户arod用vi打开文档abcd,左下角也的确显示为只读,但确实可以wq!难道真是BUG!

可能我不太懂,还是没有更深层理解,所以拿出来和大家讨论一下
作者: DooGooDD    时间: 2015-05-12 09:30
就这么沉下去了?
作者: cu_shell    时间: 2015-05-12 14:55
回复 9# DooGooDD


肯定不是bug 啊。前边4楼也说过情况了啊。
目录具有写权限,里边的文件对所有用户来说都可以操作或强制操作。你还有什么不明白的??




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2