我正在尝试使用C程序中的chmod函数更改文件权限
chmod("/tmp/toBoard", S_IRWXU | S_IRWXG | S_IRWXO);
但是程序运行后,我检查权限时只获得了这些。
-rwxr-xr-x 1 root root
我在嵌入式Linux板上运行此程序。toBoard是一个文件,从/var目录的另一个文件复制到程序中。源文件已经设置了所有权限(通过终端手动设置)。当我尝试手动复制并设置权限时,它可以工作,但是当我复制文件并尝试赋予所有权限时,它会失败而没有错误提示。
copy("/var/www/defaults.dat", "/tmp/toBoard");
int err;
if(err = chmod("/tmp/toBoard", S_IRWXU | S_IRWXG | S_IRWXO)){
perror("chmod");
}
struct stat buffer;
int status = stat("/tmp/toBoard", &buffer);
如何将所有权限设置为允许?