Ubuntu

/tmp 中的權限被拒絕

  • January 25, 2022

/tmp文件夾擁有所有權限:

drwxrwxrwt 28 root root 20480 Jan 24 03:14 /tmp

文件/tmp/test.txt已存在,權限為 666,歸使用者所有test1

-rw-rw-rw- 1 test1 test1 0 Jan 24 02:34 /tmp/test.txt

作為使用者test2,我執行echo hello >> /tmp/test.txt

bash: /tmp/test.txt: Permission denied

即使我切換到root,我仍然無法附加到該文件。似乎只有文件的所有者/tmp才能修改其內容,而不管權限位如何。


虛擬化:vmware

作業系統:Ubuntu 20.04.3 LTS

核心:Linux 5.13.0-27-generic

架構:x86-64

對於以後遇到同樣問題的人來說,預設情況下/tmp是一個粘性文件夾,這意味著只有文件所有者可以修改它。因此,要更改其他人的文件,您必須刪除粘滯位:sudo chmod -t /tmp. 請注意,您應該在之後重新打開它:sudo chmod +t /tmp.


正如評論中所建議的,更好的解決方案是您還可以在其中創建一個新文件夾/tmp來完成此操作,而無需觸及/tmp.

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