Niro Asked: 2010-02-24 23:22:58 +0800 CST2010-02-24 23:22:58 +0800 CST 2010-02-24 23:22:58 +0800 CST untar 将文件提取为不同的用户 772 我以 root 用户身份在 Ubuntu 服务器上运行(根据 whoami)。 我正在尝试解压一个包。不幸的是,未解压的文件夹和所有文件都以某种方式归另一个用户(zabbix)所有。 我最近确实安装了 zabbix,但我以 root 身份登录,所以我希望未解压的文件由 root 拥有。我究竟做错了什么? linux ubuntu 2 个回答 Voted developmentalinsanity 2010-02-24T23:50:39+08:002010-02-24T23:50:39+08:00 将--no-same-owner参数添加到您的命令中(假设是 gnu tar)。当以 root 身份运行时,tar 会自动保留文件所有权和权限。 顺便说一句:你确定你真的需要做你正在做的任何事情吗? Best Answer Dave Cheney 2010-02-25T00:37:48+08:002010-02-25T00:37:48+08:00 tar对每个文件的所有者和主要组的数字 id 进行编码。当您解压缩 tarball 时,所有所有者将被设置回其原始数字 id,例如 uid 500。您拥有的是zabbix系统中创建为 uid 500 的用户。因此,当您恢复存档时,文件似乎是归zabbix所有。 要确认,请尝试 id zabbix和ls -aln $DIRECTORY 我的猜测是它们将是相同的。
将
--no-same-owner
参数添加到您的命令中(假设是 gnu tar)。当以 root 身份运行时,tar 会自动保留文件所有权和权限。顺便说一句:你确定你真的需要做你正在做的任何事情吗?
tar
对每个文件的所有者和主要组的数字 id 进行编码。当您解压缩 tarball 时,所有所有者将被设置回其原始数字 id,例如 uid 500。您拥有的是zabbix
系统中创建为 uid 500 的用户。因此,当您恢复存档时,文件似乎是归zabbix所有。要确认,请尝试
id zabbix
和ls -aln $DIRECTORY
我的猜测是它们将是相同的。