文件所有者为何改变?

文件所有者为何改变?

Ubuntu Server 22.04 在上Linux课时遇到以下问题:

第一课:用户管理:

sudo useradd -m kaylee

sudo passwd kaylee

su - kaylee

已退出用户 kaylee,并开始下一课(编译源代码):

  104  ll
  105  wget https://ftp.gnu.org/gnu/hello/hello-2.5.tar.gz
  106  ll
  107  sudo mkdir /usr/share/hello
  108  sudo cp hello-2.5.tar.gz /usr/share/hello/
  109  cd /usr/share/hello/
  110  ll
  111  tar -xzvf hello-2.5.tar.gz
  112  sudo tar -xzvf hello-2.5.tar.gz
  113  ll

问题:提取的文件属于用户 kaylee:

total 576
drwxrwxrwx 10 kaylee root   4096 Feb  7  2010 hello-2.5/
-rw-r--r--  1 root   root 582535 Apr 15 15:09 hello-2.5.tar.gz

当我以自己的用户“jfenner”身份运行 sudo 时,为什么 sudo tar 命令会将用户 kaylee 应用于提取的文件???

答案1

解决了:

最初,我创建了一个名为 kaylee 的新用户,UID 为 1001

我从 gnu.org 下载了 tarball,其中包含用户 UID 1001 拥有的嵌入文件:

jfenner@ubuntu:~/pkg$ tar -tzvf hello-2.5.tar.gz 
drwxrwxrwx 1001/0 0 2010-02-07 17:15 hello-2.5/ 
-rw-r--r-- 1001/0 587 2006-11-09 19:53 hello-2.5/AUTHORS 

在从 tar 中提取过程中,tar 保留了 UID 1001 的文件所有者。然后系统正确地将 UID 1001 与登录名 kaylee 关联起来。

相关内容