日期:2014-05-16  浏览次数:20788 次

chmod设置文件权限问题
想用chmod来设置文件权限

对某个组、某个用户设置文件权限
可是发现chmod这个函数好像是针对当前用户以及当前用户组来设置权限的

我想设置指定的某个组、某个用户对文件的权限

这个如何实现呢?

刚接触linux,很多函数还是不了解
望指导

------解决方案--------------------
切换到root
[root@www ~]# ls -l
-rw-r--r-- 1 bin users 68495 Jun 25 08:53 install.log

某个用户(aaa)对文件的权限

chown aaa install.log

某个组(bbb)对文件的权限

chgrp bbb install.log

先使文件属于你想要指定的用户及用户组
然后用 chmod 设定文件的权限
chmod 747 install.log

[root@www ~]# ls -l
-rwxr--rwx 1 aaa bbb 68495 Jun 25 08:53 install.log

这样就指定了 aaa用户 读,写,执行 权限, bbb用户组 只读权限。
------解决方案--------------------
入门请看http://linux.vbird.org/
繁体的哦
------解决方案--------------------
你的理解是不对的 你有这样的理解 是因为很多文件是非root而不能读写的 所以你用chmod去改变它的权限是不行的
你还需要仔细学习一下chmod命令http://hi.baidu.com/iceliushuai/blog/item/9eb2adef5a988c17fdfa3c9d.html

------解决方案--------------------
上面都说很清楚了 不懂可以man chmod
------解决方案--------------------
info chmod
------解决方案--------------------
飘过哦~
------解决方案--------------------
只有root才能随便修改其他人的权限,所以可以sudo chmod username ...
------解决方案--------------------
编程可以使用chown()、chmod()这样一组函数,通过指定不同的权限值分别控制用户/组/其它对文件的访问。
如777,666...
------解决方案--------------------
探讨

我是要编程实现的

不是命令的

------解决方案--------------------
探讨

看了chown的说明
貌似只是改变文件的用户和属组

但是我是要增加一个用户或属组,并不仅仅是改变

------解决方案--------------------
你还需要仔细学习一下chmod命令
------解决方案--------------------
呵呵Google一下吧
------解决方案--------------------
我不知道你是不是想要setgid setuid setgroups capset这类提供的功能。
你可以man一下看看是不是你想要的功能。
话说你的意思我还是没明白...
------解决方案--------------------
探讨
我想设置指定的某个组、某个用户对文件的权限

------解决方案--------------------
一个文件就那3组权限:属主、组、其它。
那就只能通过“其它”来控制了,总不能一个文件同时属于两个用户或两个组吧??
------解决方案--------------------
lz貌似需要的是源码如何实现的算法分析,不知道为什么大家都让他去查看chmod指令的用法。
“可是发现chmod这个函数好像是针对当前用户以及当前用户组来设置权限的”
估计这句话让大家理解为你还不知道root权限的种种吧

我记得类unix系统下的文件是有个部分段专门存放文件的属性和权限等信息的,至于如何实现,要看下源码咯
------解决方案--------------------
没搞明白,也不懂acl是什么东东
即使你用acl实现,那你要达到一个什么结果呢?
一堆人没猜出你要干什么..