conoha
V2EX  ›  问与答

为什么在 ubuntu 下可以解压 owner 是 root 的 tar 包,而 centos 下不可以?

  •  
  •   conoha · Mar 31, 2016 · 2139 views
    This topic created in 3719 days ago, the information mentioned may be changed or developed.
    hi , 各位大牛, 我在 ubuntu 下可以解压 owner 是 root 的 tar 包, 但是为什么在 centos 下却不可以呢, 如果不用 sudo 有方法可以解决吗?(通过配置?)
    5 replies    2016-04-01 09:54:50 +08:00
    UnisandK
        1
    UnisandK  
       Mar 31, 2016   ❤️ 1
    没有读权限吧
    lhbc
        2
    lhbc  
       Mar 31, 2016   ❤️ 1
    可能的影响因素:
    1. 权限除了 owner ,还有 group 和 other
    2. 上级目录有没有 r 和 x 权限
    3. Linux 有 ACL 这个功能
    conoha
        3
    conoha  
    OP
       Mar 31, 2016
    @UnisandK @lhbc ,测试了下, 我在阿里云 6.5 上这个是有用的
    $ ll
    -rw-rw-r-- 1 cq cq 0 Mar 31 23:28 1
    -rw-rw-r-- 1 cq cq 0 Mar 31 23:28 2
    $ sudo chown root.root 1
    $ sudo chown root.root 2
    $ ll
    -rw-rw-r-- 1 root root 0 Mar 31 23:28 1
    -rw-rw-r-- 1 root root 0 Mar 31 23:28 2
    $ sudo tar -cf root.tar.gz 1 2
    $ ll
    -rw-rw-r-- 1 root root 0 Mar 31 23:28 1
    -rw-rw-r-- 1 root root 0 Mar 31 23:28 2
    -rw-r--r-- 1 root root 10240 Mar 31 23:36 root.tar.gz
    $sudo rm 1
    $tar -xf root.tar.gz && ll
    -rw-rw-r-- 1 cq cq 0 Mar 31 23:28 1
    -rw-rw-r-- 1 cq cq 0 Mar 31 23:28 2
    -rw-r--r-- 1 root root 10240 Mar 31 23:36 root.tar.gz
    但是我在公司却不可以,明天再去验证下看看~
    strahe
        4
    strahe  
       Apr 1, 2016
    能读就能解压,主要是解压以后的数据存放的目录有没有写权限,没写权限也会解压失败.
    conoha
        5
    conoha  
    OP
       Apr 1, 2016
    hi ~ 已经确认了代码写挫了, 用 docker 镜像挂载的目录如果不手动生成就是 root 用户,目录里面没有写权限, 谢谢了! @strahe @lhbc
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2497 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 01:33 · PVG 09:33 · LAX 18:33 · JFK 21:33
    ♥ Do have faith in what you're doing.