Linux
在整個 Linux 系統上是否有任何文件不能被 root 讀取或寫入?
我只是好奇,因為對於普通使用者腳本,我必須檢查相應的文件是否可以被使用者讀取並且可以像這樣寫入(只是讀取操作的片段):
if ! [ -r "$1" ]; then dump_args "$@" print_error__exit "! [ -r $1 ]" "The file is not readable by you!" fi
我的問題是:在整個 Linux(如果必須是,比如 Mint 或 Debian)系統上,是否有任何文件不能被 root 讀取或寫入?
一般來說,我的信念是 root 可以做任何事情,但一切都有限制,對,……這就是我問這個問題的原因。謝謝你。
/proc 下的很多文件是不可寫的,/sys 下也有可寫但不可讀的文件。例子:
echo something > /proc/$$/cmdline cat /sys/block/sda/device/delete
(注意:
echo > /sys/block/sda/device/delete
將從系統中“分離” sda)這是因為 /proc 和 /sys 是特殊的文件系統。它與通常的文件權限無關。
還有其他例子:
- 只讀文件系統,例如 DVDROM
- 以只讀方式掛載的文件系統
- root 未映射到高權限使用者的網路文件系統,例如帶有 root squash 的 NFS
- 僅允許讀取或寫入的設備的設備文件