通常のユーザースクリプトを使用すると、そのファイルをユーザーが読み取り可能で書き込み可能であることを確認する必要があるため、疑問に思います(読み取り操作の一部)。
if ! [ -r "$1" ]; then
dump_args "$@"
print_error__exit "! [ -r $1 ]" "The file is not readable by you!"
fi
私の質問は:ルートが読み書きできない完全なLinux(必要に応じてMintやDebianなど)システムにファイルがありますか?
全体的に私の信念は、ルートが何でもできるが、すべてに制限があるということです。それが私がこの質問をする理由です。ありがとうございます。
答え1
/proc の下にある多くのファイルは書き込めず、/sys の下にも書き込むことはできますが、読み込めないファイルもあります。例:
echo something > /proc/$$/cmdline
cat /sys/block/sda/device/delete
(注意:echo > /sys/block/sda/device/delete
システムからsdaを「分離」します)
これは、/proc および /sys が特殊なファイルシステムであるためです。一般的なファイル権限とは何の関係もありません。
他の例もあります:
- DVDROMなどの読み取り専用ファイルシステム
- 読み取り専用でマウントされたファイルシステム
- ルートスカッシュを持つNFSなど、root権限の高いユーザーにマップされていないネットワークファイルシステム
- 読み取りまたは書き込みのみを許可するデバイスのデバイスファイル
答え2
また/proc
そして以下のファイル/sys
、FUSEファイルシステムはデフォルトでrootにアクセスできません。rootで実行しても/run/user/1000/gvfsを読み取れないのはなぜですか?もっと学ぶ。
システムがルートを制限するために必要なアクセス制御システム(SELinuxなど)を設定することもできます。 Russell Cokerは公にアクセス可能遊び機システムに害を与えることなく、誰でもrootとしてログインできます。
プロセスは、ホストシステムへの実際のルートアクセスを許可することなく、ユーザーの名前空間からルートとして実行できます。同様に、リモートファイルシステムには、クライアントのルートが特定のファイルまたはディレクトリにアクセスできないように(マッピングがまったくアクセスできないように)ユーザーマッピングがあります。