1. chmod / fchmod 修改文件存取权限
不同于chmod 根据文件名做第一个参数,fchmod 根据文件描述符做第一个参数
2. chown / fchown / lchown 用于修改用户ID和组ID
#include <sys/types.h>
#include <unistd.h>
int chown(const char *path, uid_t owner, git_t group);
/*将path指定的文件所有者id变为owner的用户id, 将该文件的组id变更为group组id*/
int fchown(int fd, uid_t owner, gid_t group);
/* 以文件描述符作为参数*/
int lchown(cost char *path, uid_t owner, gid_t group);
文件的所有者只能改变文件的组id 为其所属组中的一个,超级用户可以任意修改文件用户组id.如果参数owner , group 指定为-1,则文件的用户id 组id不会被改变。
utime
用于改变任何文件的st_mtime域( 存取时间) 和st_ctime(修改时间)
#include <sys/types.h>
#include <utime.h>
int utime(const char *filename, struct utimbuf *buf)
#include <sys/time.h>
int utimes(char *filename, struct timeval *tvp)
struct utimbuf {
time_t actime; //access time
time_t_modtime; //modification time
};
utime 会把filename指定的文件的存取时间修改成buf 中的actime; 把修改时间改成buf中的modtime;如果buf为空,则将存取和修改时间都改为当前。
成功返0,失败返-1,错存error