Sudo

tar 提取為指定使用者:tar:/home/administrateur/glpi-10.0.3.tar:無法打開:權限被拒絕

  • November 10, 2022

無法以www-data使用者身份提取 tar 存檔,出現Cannot open: Permission denied錯誤:

$ mkdir $HOME/tmp
$ sudo chown www-data $HOME/tmp
$ ll -d $HOME/tmp
drwxrwxr-x 2 www-data administrateur 4096 2022-11-10 09:43:14 /home/administrateur/tmp/
$ ll $HOME/glpi-10.0.3.tar
-rwxrwxrwx 1 administrateur administrateur 216893440 2022-09-14 14:28:21 glpi-10.0.3.tar*
$ sudo -u www-data tar -C $HOME/tmp/ -xf $HOME/glpi-10.0.3.tar
tar: /home/administrateur/glpi-10.0.3.tar: Cannot open: Permission denied
tar: Error is not recoverable: exiting now
$

只是不要提取為 www-data。如您所見,該使用者無權訪問您要提取的位置,因此操作失敗。與其嘗試提取為特定使用者,不如直接提取到您想要最終儲存它的任何位置(大概它不應該存在~/tmp)或提取為您的正常使用者,然後 chown 文件:

$ tar -C "$HOME"/tmp/ -xf "$HOME"/glpi-10.0.3.tar
$ sudo -R chown www-data "$HOME"/tmp/

引用自:https://unix.stackexchange.com/questions/724343