
但是,鑑於以下情況,我在當前目錄中有一個腳本:
- 權限是
-rwxr-xr-x
#!/bin/bash
該腳本在文件頂部有一個 shebang- 我的外殼是
/bin/bash
- 我可以使用執行它
bash script.sh
我無法使用 執行它./script.sh
。它給了我:
bash: ./script.sh: 權限被拒絕
為什麼會發生這種情況以及解決方案是什麼?
答案1
不允許執行,因為該檔案位於使用“noexec”選項掛載的檔案系統上。使用
findmnt -u -T .
來查明是否是這種情況。如果您有root權限,mount -o remount,exec <dir>
應該刪除這個選項。不允許執行蘋果策略(SELinux、SMACK,可能還有 AppArmor)。檢查系統日誌,以
journalctl -n 100
和開頭dmesg
。繞過這個(如果您是管理員)取決於實際使用的 MAC 系統。
答案2
好吧,我找到了:它是“log2ram”
正如我所說,我在 Raspberry 4 上使用 Raspbian,為了增加 SD 生命週期,我將日誌放在 RAM 上,現在就是這樣。
===
pi@R4:~/logs $ cat /etc/log2ram.conf
[...]
PATH_DISK="/var/log;/home/pi/logs"
===