《UNIX环境高级编程》笔记13--chown,fchown和lchown函数

来源:互联网 发布:企业对网络的需求分析 编辑:程序博客网 时间:2024/06/07 04:09

这三个函数都是用来更改文件的用户ID和组ID的,函数的定义如下:

[cpp] view plain copy
  1. #include <unistd.h>  
  2. int chown(const char *pathname, uid_t owner, gid_t group);  
  3. int fchown(int filedes, uid_t owner, gid_t group);  
  4. int lchown(const char *pathname, uid_t owner, gid_t group); //更改的是符号链接文件本身的用户ID和组ID  
  5. //三个函数的返回值:若成功则返回0,失败则返回-1.  

如果owner或group值是-1,则对应的ID不变。


基于BSD的系统一直规定只有超级用户才能更改一个文件的所有者,防止用户更改文件的所有者从而摆脱磁盘限制

对他们的束缚,而system V允许人一用户更改他所拥有的文件的所有者。

经过测试,ubuntu中只有超级用户才能更改一个文件的所有者。

阅读全文
0 0