您的位置:首页 > 运维架构 > Linux

linux下cp,tar相关权限问题,-p参数

2015-08-15 20:38 519 查看

1. 结论

root用户:

cp uid:gid都为root;

cp -p uid:gid保持原始不变;

解压后文件uid:gid保持原始不变。

普通用户:

cp uid:gid对应当前普通用户uid:gid,权限为原始权限和当前用户umask相与;

cp -p uid:gid对应当前普通用户uid:gid;

解压后文件uid:gid对应当前普通用户uid:gid,权限与是否-p有关,同上。

1. 普通用户从其他用户拷贝文件时, 最好加-p

2. 普通用户解压时,打包和解压时最好是加-p

3. root用户拷贝和解压时要注意目标位置所属的用户和期望的用户,二者uid一致,不一致则切换到普通用户后无法编辑

2. 实验过程

cp

root用户:

cd /home/sybase


cp后,ll得 权限,uid,gid:

cp file_sybase file_cpy1
cp file_sybase file_cpy2 -p
-rw-r--r--  sybase sybase file_sybase
-rw-r--r--  root   root   file_cpy1
-rw-r--r--  sybase sybase file_cpy2


sybase用户:

cp和cp -p都是 sybase:sybase

xdself用户:

// xdself用户无法将文件放在/home/sybase
cp file_sybase ~/file_cpy5
cp file_sybase ~/file_cpy6 -p

-rw-r--r-- xdself users   file_cpy6
-rw-r--r-- xdself users   file_cpy5
uid:gid均分别对应当前用户uid:gid,cp对应的权限为原有权限和当前用户umask相与(root用户则不存在该问题),cp -p则与原始权限一致。参考[tar的-p参数,论坛提问](http://bbs.csdn.net/topics/390242081)


tar:

原始压缩包的uid:gid为 xdself:sybase

root用户下解压到/home/sybase 文件所属uid:gid保持原始不变

sybase用户下解压,文件所属uid:gid均为当前用户即sybase对应的uid:gid
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: