Linux中使用tar解压出文件夹的权限问题

情况大致如下:

因业务特殊需求,必须使用新建用户user1解压一tar包test1.tar,user1属于组group1.系统设置用户umask=022,即该用户默认具有755权限,该用户新建文件的权限也应该是755才对。解压出的文件夹所属者与所属组均为用户test1和组group1,但是该文件夹及其下子目录、文件的权限却都是744,造成user1自己tar出来的东西却无法访问的结果。
请教高手,如何user1的用户环境下使用该tar包时,解压出的文件夹同样具有755或者更高权限。如果此法不通的话,请告知如何用一条命令修改文件夹及其下子目录和文件的属性?

1、电脑上有个menu点击它。

2、点击之后里面有个终端点击它。

3、接着输入命令:cd+需要解压的目录名字,例如这里的home。

4、然后输入命令:tar-xvf,保持不动。

5、打开主目录,点击这个下载目录。

6、找到这个后缀名为tar.xz的文件,把它拖入到-xvf后面。

7、按一下回车键,即可解压这个文件。

8、此刻就会看到了一个解压后的文件夹了。

9、点击进入了就可以看到解压后的目录。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于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)还要新的才会被打包进新建的文件中。

第2个回答  推荐于2017-10-04
简单丫, 用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 加上权限就行了本回答被提问者采纳
第3个回答  2009-02-27
#chown user1:group1 folder1 -R
#chmod 755 folder1 -R
第4个回答  2009-02-27
可以用管理员root用户来更改文件的权限的嘛。或者更改umask值。
相似回答