vim mycheck.py
print('writing in normal user')
chmod 000 mycheck.py
ls -al mycheck.py
---------- 1 normal normal 27 Aug 23 11:01 mycheck.py
ファイルはユーザーに属しnormal
、モードが に設定されているため000
、normal
ユーザー自身は実行できません。
python3 mycheck.py
python3: can't open file 'mycheck.py': [Errno 13] Permission denied
なぜroot
実行できるのでしょうか?
su root
python3 /home/normal/mycheck.py
writing in normal user
ファイルをmycheck.py
所有者だけが実行できるようにしnormal
、同時にルートによる実行を無効にするにはどうすればよいでしょうか?
答え1
ルートには何でもできる権限があります。chmod
ファイルを好きなように変更するか、 でログインしますsu
。(SELinux、AppArmor がそれを阻止しない限り)
また、注意点として、Python はファイルを「読み取る」ため、実行アクセスは必要ありません。