Linux中使用tar解压出文件夹的权限问题
情况大致如下:因业务特殊需求,必须使用新建用户user1解压一tar包test1.tar,user1属于组group1.系统设置用户umask=022,即该用户默认具有7...
情况大致如下:
因业务特殊需求,必须使用新建用户user1解压一tar包test1.tar,user1属于组group1.系统设置用户umask=022,即该用户默认具有755权限,该用户新建文件的权限也应该是755才对。解压出的文件夹所属者与所属组均为用户test1和组group1,但是该文件夹及其下子目录、文件的权限却都是744,造成user1自己tar出来的东西却无法访问的结果。
请教高手,如何user1的用户环境下使用该tar包时,解压出的文件夹同样具有755或者更高权限。如果此法不通的话,请告知如何用一条命令修改文件夹及其下子目录和文件的属性? 展开
因业务特殊需求,必须使用新建用户user1解压一tar包test1.tar,user1属于组group1.系统设置用户umask=022,即该用户默认具有755权限,该用户新建文件的权限也应该是755才对。解压出的文件夹所属者与所属组均为用户test1和组group1,但是该文件夹及其下子目录、文件的权限却都是744,造成user1自己tar出来的东西却无法访问的结果。
请教高手,如何user1的用户环境下使用该tar包时,解压出的文件夹同样具有755或者更高权限。如果此法不通的话,请告知如何用一条命令修改文件夹及其下子目录和文件的属性? 展开
推荐于2017-09-19 · 知道合伙人互联网行家
关注
展开全部
Linux系统用tar命令解压压缩包的时候,为了保持原有文件夹的属性权限,可以加-p命令(使用原文件的原来属性),方法如下:
例子:将 /tmp/etc.tar.gz 文件解压缩在 /usr/local/src 底下,保持目录权限不变
[root@linux ~]# cd /usr/local/src
[root@linux src]# tar -pzxvf /tmp/etc.tar.gz
#加上-p参数即可
Linux下tar主要参数说明:
-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令;
-t :查看 tarfile 里面的文件;
-v :压缩的过程中显示文件;
-p :使用原文件的原来属性(属性不会依据使用者而变);
-P :可以使用绝对路径来压缩;
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
简单丫, 用tar打包的时候加上 -p这个参数 如 tar -cvfp。就行了解压缩的时候也是加上-p的参数。 这参数就是保留权限用的。
如果不行的话 也简单丫find命令就行了
不是都被改成了744吗 就这样
find . -perm 744 -print | xargs chmod g+x,o+x
恩 差不多这样就行了 做之前 先看看搜出来的对不对
但是这样只能修改744的 如果只是部分匹配可以这样
find . -perm -040 -print 这样就是查找到 G里面有读权限的所有文件了
没问题再用 xargs chmod 加上权限就行了
如果不行的话 也简单丫find命令就行了
不是都被改成了744吗 就这样
find . -perm 744 -print | xargs chmod g+x,o+x
恩 差不多这样就行了 做之前 先看看搜出来的对不对
但是这样只能修改744的 如果只是部分匹配可以这样
find . -perm -040 -print 这样就是查找到 G里面有读权限的所有文件了
没问题再用 xargs chmod 加上权限就行了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#chown user1:group1 folder1 -R
#chmod 755 folder1 -R
#chmod 755 folder1 -R
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用管理员root用户来更改文件的权限的嘛。或者更改umask值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询