Chinaunix

标题: 请教大神关于linux中强制修改文件"!"这个指令 [打印本页]

作者: limingyi3000    时间: 2012-07-27 12:04
标题: 请教大神关于linux中强制修改文件"!"这个指令
根据鸟哥的私房菜书上的实验,建立一个组project两个用户alex、arod,将两个用户加入project中,建立文件夹/srv/ahome,ahome属组project权限770,用alex登录在ahome中创建文件aa,然后用arod登录,查看aa权限属组和属主都为alex,按理说是不能修改aa的,但是用vim编辑器,强制执行加“wq!”就能修改了,并且属主和属组都变成修改者了,而且强制执行!这个命令好像普通帐号就有执行的权限,我感觉挺别扭的,同一组成员就能修改自己的文档了,明明没有修改的权限的,请问这是怎么回事?
作者: ulovko    时间: 2012-07-27 13:38
,但是用vim编辑器,强制执行加“wq!”就能修改了

只有root才有能力使用 !  
作者: limingyi3000    时间: 2012-07-27 14:05
本帖最后由 limingyi3000 于 2012-07-27 14:11 编辑

回复 2# ulovko
可是为啥我用普通账户也有权限使用?我使用su -切换普通用户的啊,我把过程粘下来了
























   
作者: ulovko    时间: 2012-07-27 15:51
本帖最后由 ulovko 于 2012-07-27 17:44 编辑

等下帮你看看哦 =.=!   
@limingyi3000

根据鸟哥的私房菜书上的实验,建立一个组project两个用户alex、arod,将两个用户加入project中,建立文件夹/srv/ahome,ahome属组project权限770,用alex登录在ahome中创建文件aa,然后用arod登录,查看aa权限属组和属主都为alex,按理说是不能修改aa的,但是用vim编辑器,强制执行加“wq!”就能修改了,并且属主和属组都变成修改者了,而且强制执行!这个命令好像普通帐号就有执行的权限,我感觉挺别扭的,同一组成员就能修改自己的文档了,明明没有修改的权限的,请问这是怎么回事?
  1. # groupadd project;cd /srv;mkdir ahome;chown -R root:project ahome/;chmod 770 ahome (drwxrwx---)

  2. $ cat users.txt
  3. alex
  4. arod

  5. $ cat useradd.sh
  6. #!/bin/sh
  7. users=`cat users.txt`
  8. for user in $users
  9. do
  10.         useradd -G project $user     
  11.         echo $user | passwd --stdin $user
  12.         chage -d 0 $user                    
  13. done

  14. # su - alex
  15. $ cd /srv/ahome;touch aa
  16. $ exit

  17. # su - arod
  18. $cd /srv/ahome;vim aa
  19. exit

  20. # echo "Okay"
复制代码


project 组的权限是 rw , 用户 alex/arod 同归属于 project 组 因此2人拥有rw权限 ! O_o

作者: limingyi3000    时间: 2012-07-27 16:50
回复 4# ulovko


   
作者: ulovko    时间: 2012-07-27 17:47
建议 一字一句的观看鸟哥私房菜 边操作边观看才有效果 ^_^
最新鸟哥私房菜下载地址:  http://bbs.chinaunix.net/thread-3757881-1-2.html
作者: yanu    时间: 2012-07-27 21:34
  用文字描述有点费力...

vi 保存文件时的'!',作用是让vi尝试删除源文件后再保存.

比如有这样的环境:
folder权限是777,  folder下有个file,权限是444
普通用户无权写 file,但是有权在folder下删除和创建文件,
'wq!' 时vi就可以先删除file,再创建一个
作者: ulovko    时间: 2012-07-28 08:29
yanu 发表于 2012-07-27 21:34
普通用户无权写 file,但是有权在folder下删除和创建文件,
'wq!' 时vi就可以先删除file,再创建一个


没错是这样的! ^_^
作者: limingyi3000    时间: 2012-07-30 09:33
回复 7# yanu
原来是这样


   
作者: limingyi3000    时间: 2012-07-30 09:39
回复 7# yanu
意思也就是说,alex和arod对projext都有添加删除但对目录内的文档没有编辑权限,wq!的含义不是编辑文档而是添加文档的意思对吗?

   
作者: limingyi3000    时间: 2012-07-30 09:44
回复 8# ulovko
我再想想把


   
作者: gbcbooks    时间: 2012-07-30 18:59
回复 7# yanu


    豁然開朗啊
作者: xiang1162090014    时间: 2016-08-10 17:59
时隔四年,鸟哥的同一个实验,我也遇到了同样的问题,困惑了一天,现豁然开朗。




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