加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

unix – 设置tarfile内容的文件权限

发布时间:2020-12-15 19:02:49 所属栏目:安全 来源:网络整理
导读:有没有办法在发布之前(或之后不久)chmod 777 tarfile的内容?正在tar的目录的写权限在tar’ing时是未知的(但通常是555).我希望展开的目录是世界可写的,没有展开tar的用户必须记住chmod -R 777 untarred dir在继续之前. 笨拙的方法是制作目录的副本,然后chmod
有没有办法在发布之前(或之后不久)chmod 777 tarfile的内容?正在tar的目录的写权限在tar’ing时是未知的(但通常是555).我希望展开的目录是世界可写的,没有展开tar的用户必须记住chmod -R 777< untarred dir>在继续之前.

笨拙的方法是制作目录的副本,然后chmod -R 777< copydir>但我想知道是否有更好的解决方案.

我在Solaris 10机器上.

背景:

根目录在我们的ClearCase vob中具有特定的文件权限,递归.创建tarfile并将其分发给我们组织内的多个“客户”.大多数人只需要读取/执行权限(特别是不要让它们可写),但是一组特别需要它们的副本可以递归写入,因为它们可能会编辑这些文件,甚至还原为“新”副本(即,在我给他们的原始状态).

这个群体在某种程度上受到技术挑战.即使他们有关于tarfile的“操作方法”的说明,但他们似乎总是忘记(或者错误地)将文件的设置一旦解压缩就可以递归写入.这导致我打电话来诊断各种问题,其根本原因是他们忘记了(或做错了)展开目录的chmod.

在你问之前,是的,我给他们写了一个脚本来解压/ chmod(具体只针对他们),但是……哦,没关系.

所以,我想我会创建一个单独的,递归可写的tar版本,只分发给他们.正如我原来所说,我总是可以创建一个dir副本,使副本递归写入然后tar副本dir,但dir相当大,磁盘空间有时接近满(它可能变化很大),所以制作副本的目录在100%的时间内都是不可行的.

使用GNU tar,在创建存档时使用–mode选项,例如:
tar cf archive.tar --mode='a+rwX' *

但请注意,提取存档时,默认情况下将应用umask.因此,除非用户的umask是000,否则将在该点更新权限.但是,可以使用-p( – preserve)选项忽略umask,例如:

tar xfp archive.tar

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读