
ただし、現在のディレクトリにスクリプトがあります。
- 許可は
-rwxr-xr-x
#!/bin/bash
スクリプトのファイルの先頭にシェバンがある- 私の殻は
/bin/bash
- 次のように実行できます
bash script.sh
を使用して実行することはできません./script.sh
。次のようになります:
bash: ./script.sh: 権限が拒否されました
なぜこのようなことが起こるのでしょうか、そして解決策は何でしょうか?
答え1
ファイルは「noexec」オプションでマウントされたファイルシステム上にあるため、実行は許可されません。 を使用して、
findmnt -u -T .
それが当てはまるかどうかを確認します。ルート権限がある場合は、mount -o remount,exec <dir>
このオプションを削除する必要があります。実行は許可されていませんマック
journalctl -n 100
ポリシー (SELinux、SMACK、場合によっては AppArmor)。およびで始まるシステム ログを確認しますdmesg
。 これをバイパスするかどうか (管理者の場合) は、実際に使用されている MAC システムによって異なります。
答え2
ええ、見つけました。それは「log2ram」です
前述したように、私は Raspberry 4 で Raspbian を使用しており、SD の寿命を延ばすためにログを RAM に配置しました。
===
pi@R4:~/logs $ cat /etc/log2ram.conf
[...]
PATH_DISK="/var/log;/home/pi/logs"
===