Linux小知识分享-压缩包解压之后属主和属组不是当前用户问题

今天给大家分享一个Linux小知识

在这里插入图片描述

背景

假设当前Linux下用户是root,我们从网络上或者其他环境下载了个压缩包进行本地解压。

结果发现解压之后的文件或者文件夹的 属主和属主 都不是当前用户root

# 检查当前用户
[root@test-xxxx-01-vm /tmp/colinspace ]# id
uid=0(root) gid=0(root) groups=0(root)# 上传文件然后查看上传的文件属主和属组信息
[root@test-xxxx-01-vm /tmp/colinspace ]# ls -l mysqld_exporter-0.15.1.linux-amd64.tar.gz
-rw-r--r-- 1 root       root        8287769 Jan 30 10:25 mysqld_exporter-0.15.1.linux-amd64.tar.gz# 解压文件之后查看
# 发现解压之后的文件夹 属主和属组分别是 zhangsan 和 lisi 
[root@test-xxxx-01-vm /tmp/colinspace ]# tar -zxf mysqld_exporter-0.15.1.linux-amd64.tar.gz
[root@test-xxxx-01-vm /tmp/colinspace ]# ll
total 8100
drwxr-xr-x 2 zhangsan   lisi           4096 Dec 12 15:57 mysqld_exporter-0.15.1.linux-amd64
-rw-r--r-- 1 root       root        8287769 Jan 30 10:25 mysqld_exporter-0.15.1.linux-amd64.tar.gz# 检查系统中zhangsan 和 lisi的信息
[root@test-xxxx-01-vm /tmp/colinspace ]# grep zhangsan /etc/passwd
zhangsan:x:1001:1001::/home/zhangsan:/bin/bash
[root@test-xxxx-01-vm /tmp/colinspace ]# grep lisi /etc/group
lisi:x:1002:

根源所在

其实根源在于你解压的时候没有明确指定 属主和属组的情况下。 解压时使用的是压缩文件中保存的属主和属组信息。

可以通过 -tvf 参数组合来查看压缩包的中文件信息( -t/–list means list the contents of an archive)

[root@test-xxxx-01-vm /tmp/colinspace ]# tar -tvf mysqld_exporter-0.15.1.linux-amd64.tar.gz
drwxr-xr-x circleci/circleci 0 2023-12-12 15:57 mysqld_exporter-0.15.1.linux-amd64/

发现这里展示的用户和用户组是circleci, 但是当然主机肯定没有这个用户,而且也不是root

[root@test-xxxx-01-vm /tmp/colinspace ]# grep circleci /etc/passwd /etc/group

这个时候使用另外一个参数 --numeric-owner, 含义是 always use numbers for user/group names

[root@test-xxxx-01-vm /tmp/colinspace ]# tar -tvf  mysqld_exporter-0.15.1.linux-amd64.tar.gz  --numeric-owner
drwxr-xr-x 1001/1002         0 2023-12-12 15:57 mysqld_exporter-0.15.1.linux-amd64/
... ...

看到这里显示的属主和属组分别是 1001 和 1002 ,不正是当前主机上对应的 zhangsan 和 lisi 么。

所以,解压之后的属主和属组虽然不影响实际使用。但是显示不是当前用户的,总感觉有点’奇怪’ ,对于运维人员而言,保持好奇心进行探究问题是好习惯哦~

写在最后

如果想要对解压之后的文件或者文件夹的属主和属组有要求,那么就只能是解压之后再通过chown来设定属主和属组了

这时有人就说不是有--owner=Name--group=Name 参数可以用吗?

当然 tar 命令确实有这两个参数,但是它们不是在解压的时候使用的。而是在压缩的时候来使用修改最终存放到压缩包中文件或者文件夹的属主和属组的。

注意这里说的是压缩包总的文件或者文件夹 而不是最终的 压缩包文件哦~

最终的 压缩包文件的属主和属组是当前用户。但是里面的文件或者文件夹的属主和属组会被修改为这两个参数设定的值


我是菩提老鹰,热爱分享,保持好奇和乐观。有问题的小伙伴加我讨论交流哦~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/662031.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IDEA 配置和缓存目录 设置

IDEA系列产品&#xff0c;一般会在用户目录创建 配置 和 缓存 目录&#xff1a; %APPDATA%\JetBrains%LOCALAPPDATA%\JetBrains 一般会展示为&#xff1a; C:\Users\<username>\AppData\Roaming\JetBrainsC:\Users\<username>\AppData\Local\JetBrains 一般占用…

MtfLive直播导航PHP源码,附带系统搭建教程

将自动采集斗鱼、虎牙、触手、YY、章鱼、电视直播按分类/关键词聚合&#xff0c;用户选择分类&#xff0c;可以观看到全网该关键词下正在直播的内容。 特点 PC站和H5移动站自适应 自动缓存&#xff0c;避免频繁抓取数据 自定义抓取采集规则&#xff0c;同时支持HTML和JSON …

Character Auras 3

该包包含12种惊人的光环效果! 列表: 秋天的氛围 血光 五彩纸屑的光环 疾风 火光光环 森林氛围 治疗光环 冰系光环 爱的光环 毒气环 星光气场 所有预制件都已准备好用于游戏,只需将它们拖放到游戏中即可! 下载: ​​Unity资源商店链接 资源下载链接 效果图:

OJ刷题:《剑指offer》之左旋字符串!

目录 1.题目描述 2.方法一&#xff08;元素一一挪&#xff09; 2.1算法解析 2.2代码实现 3.方法二&#xff08;三次逆置&#xff09; 3.1算法解析 3.2代码实现 4.方法三&#xff08;库方法&#xff09; 4.1算法解析 4.2代码实现 5.完结散花 创作不易&#xff0c;宝子…

【制作100个unity游戏之23】实现类似七日杀、森林一样的生存游戏8(附项目源码)

本节最终效果演示 文章目录 本节最终效果演示系列目录前言配置可使用物品功能下载一些水果模型代码实现使用物品 源码完结 系列目录 前言 欢迎来到【制作100个Unity游戏】系列&#xff01;本系列将引导您一步步学习如何使用Unity开发各种类型的游戏。在这第23篇中&#xff0c…

Java面对对象

Java面向对象 面对对象概述&#xff0c;类与对象&#xff0c;继承&#xff0c;重写与重载&#xff0c;多态&#xff0c;抽象&#xff0c;封装&#xff0c;包&#xff0c;泛型&#xff0c;异常 面对对象概述 什么是面向对象&#xff08;OOP&#xff09; 面向对象(Object Ori…

【python3.8 pre-commit报错】记录pre-commit install报错

一、问题 在执行pre-commit install --allow-missing-config命令时&#xff0c;报错 Traceback (most recent call last):File "C:\ProgramData\Anaconda3\envs\py38\lib\runpy.py", line 192, in _run_module_as_mainreturn _run_code(code, main_globals, None,F…

html,css,js速成

准备&#xff1a;vscode配好c&#xff0c;python&#xff0c;vue环境。 1. html hypertext markup language(超文本标记语言) 1. 基础语法 一个html元素由开始标签&#xff0c;填充文本&#xff0c;结束标签构成。 常见标签说明<b></b>粗体<i></i>…

免费分享一套SpringBoot+Vue药店(药房)管理系统,帅呆了~~

大家好&#xff0c;我是java1234_小锋老师&#xff0c;看到一个不错的SpringBootVue药店(药房)管理系统 &#xff0c;分享下哈。 项目视频演示 【免费】SpringBootVue药店(药房)管理系统 Java毕业设计_哔哩哔哩_bilibili【免费】SpringBootVue药店(药房)管理系统 Java毕业设计…

Jmeter学习系列之五:基础线程组(Thread Group)

前言 线程组是一系列线程的集合,每一个线程代表着一个正在使用应用程序的用户。在 jmeter 中,每个线程意味着模拟一个真实用户向服务器发起请求。 在 jmeter 中,线程组组件运行用户设置线程数量、初始化方式等等配置。 例如,如果你设置线程数为 100,那么 jmeter 将创建…

C语言字符字符串函数:strcpy、strcat、strcmp介绍和模拟实现以及stnrcpy、strncat、strncmp介绍(近万字详解,建议三连收藏)

目录 1.strcpy(字符串拷贝函数&#xff09; 1.1函数介绍 1.2函数使用示范 1.3函数模拟实现 2.strcat(字符串追加函数&#xff09; 2.1函数介绍 2.2函数使用示范&#xff1a; 2.3函数模拟实现 &#xff1a; 2.4思考&#xff1a;字符串可以自己给自己追加吗&#xff1f; …

EDI报文到Excel转换方案详解

EDI目前已广泛应用于电子、物流、汽车、零售等行业。 越来越多的交易伙伴要求建立EDI连接&#xff0c;通过EDI来对接上下游交易伙伴&#xff0c;收发业务单据。 当我们与新的交易伙伴建立EDI连接时&#xff0c;有多种实施方案可供选择&#xff0c;如果您的单据量较少&#xf…

OBB头篇 | 原创自研 | YOLOv8 更换 SEResNeXtBottleneck 头 | 附详细结构图

左图:ResNet 的一个模块。右图:复杂度大致相同的 ResNeXt 模块,基数(cardinality)为32。图中的一层表示为(输入通道数,滤波器大小,输出通道数)。 1. 思路 ResNeXt是微软研究院在2017年发表的成果。它的设计灵感来自于经典的ResNet模型,但ResNeXt有个特别之处:它采用…

UE4学习笔记 FPS游戏制作3 添加武器

文章目录 章节目标为骨骼添加武器挂载点添加武器 章节目标 本章节为手部添加一个武器挂载点&#xff0c;并挂载一个武器 为骨骼添加武器挂载点 添加挂载点需要以一个动画片段为基础&#xff0c;为骨骼添加挂载点。 首先找到我们需要的动画片段&#xff0c;通常是idle 双击打…

17- OpenCV:图像矩(Image Moments)和点多边形测试

目录 一、图像矩 1、矩的概念介绍 2、相关的API 3、代码演示 二、点多边形测试 1、概念介绍-点多边形测试 2、cv::pointPolygonTest 3、代码演示 一、图像矩 引言 在数字图像处理、计算机视觉与相关领域中&#xff0c;图像矩(Image moments)是指图像的某些特定像素灰…

Tomcat 部署项目时 war 和 war exploded区别

在 Tomcat 调试部署的时候&#xff0c;我们通常会看到有下面 2 个选项。 是选择war还是war exploded 这里首先看一下他们两个的区别&#xff1a; war 模式&#xff1a;将WEB工程以包的形式上传到服务器 &#xff1b;war exploded 模式&#xff1a;将WEB工程以当前文件夹的位置…

总结了一下中继引擎(can中继器,TCP总机器)开发实际经验

多路数据进行中继的研究 1.数据中继的概念 数据中继是一种数据传输技术&#xff0c;用于在两个通信设备之间提供数字信号的传输。它利用数字信道传输数据信号&#xff0c;可以提供永久性和半永久性连接的数字数据传输信道。 数据中继的主要作用是提高通信质量和可靠性&#xf…

详解WebRTC rtc::Thread实现

rtc::Thread介绍 rtc::Thread类不仅仅实现了线程这个执行器&#xff08;比如posix底层调用pthread相关接口创建线程&#xff0c;管理线程等&#xff09;&#xff0c;还包括消息队列&#xff08;message_queue)的实现&#xff0c;rtc::Thread启动后就作为一个永不停止的event l…

《Pandas 简易速速上手小册》第8章:Pandas 高级数据分析技巧(2024 最新版)

文章目录 8.1 使用 apply 和 map 函数8.1.1 基础知识8.1.2 重点案例&#xff1a;客户数据清洗和转换8.1.3 拓展案例一&#xff1a;产品评分调整8.1.4 拓展案例二&#xff1a;地址格式化 8.2 性能优化技巧8.2.1 基础知识8.2.2 重点案例&#xff1a;大型销售数据分析8.2.3 拓展案…

BUUCTF-Real-[Flask]SSTI

目录 漏洞描述 模板注入漏洞如何产生&#xff1f; 漏洞检测 漏洞利用 get flag ​编辑 漏洞描述 Flask框架&#xff08;jinja2&#xff09;服务端模板注入漏洞分析&#xff08;SSTI&#xff09; Flask 是一个 web 框架。也就是说 Flask 为您提供工具、库和技术来允许您构…