首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么复制的文件在Linux下有不同的权限?

为什么复制的文件在Linux下有不同的权限?
EN

Stack Overflow用户
提问于 2016-04-27 02:52:09
回答 2查看 11.9K关注 0票数 9

我在Linux中以root用户身份登录。我有一个拥有777权限的文件。我将该文件复制到与cp相同的目录中。

代码语言:javascript
复制
cp settings.php settings_copy.php

但是,复制的文件具有不同的文件权限。

代码语言:javascript
复制
[root@localhost default]# ls -l setting*
-rwxr-xr-x. 1 root root 29105 Apr 26 11:48 settings_copy.php
-rwxrwxrwx. 1 root root 29105 Apr 26 09:48 settings.php

这是正常的吗?如何确保复制的文件获得相同的权限?我相信这是任何操作系统中复制命令的默认行为。

EN

回答 2

Stack Overflow用户

发布于 2016-04-27 02:56:13

使用-p选项保留权限:

代码语言:javascript
复制
cp -p settings.php settings_copy.php

复制文件时,您是在创建一个新文件。因此,它的(新文件)权限取决于当前文件创建掩码,您可以通过umask命令更改该掩码。有关更多信息,请阅读man umask

票数 14
EN

Stack Overflow用户

发布于 2016-04-27 02:57:53

你有没有看过man cp

以下是相关部分:

代码语言:javascript
复制
-p     same as --preserve=mode,ownership,timestamps

--preserve[=ATTR_LIST]
  preserve the specified attributes (default: mode,ownership,timestamps), if possible additional attributes: context, links, xattr, all

因此,为了保持相同的所有权和模式,您可以运行以下命令:

代码语言:javascript
复制
cp --preserve=mode,ownership

如果你知道这是你想要的,但又不想记住它,你可以把它作为一个别名添加到你的.bashrc中;

代码语言:javascript
复制
alias cp='cp --preserve=mode,ownership'
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36873424

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档