Mac-Osx
OSX mojave:“crontab:tmp/tmp.X:不允許操作”
將我的 OSX 更新到 Mojave 後,我似乎無法再編輯我的 crontab。任何這樣做的嘗試都會導致此問題標題上的錯誤消息。
我將 crontab 跟踪到
/private/var/at
,權限與另一台執行 El Capitan 的電腦相同:/private/var/at$ ls -laO total 0 drwxr-xr-x 8 daemon wheel - 256B Feb 18 16:47 ./ drwxr-xr-x 26 root wheel sunlnk 832B Feb 18 16:51 ../ -rw-r--r-- 1 root wheel - 0B Aug 22 22:11 at.deny -rw-r--r-- 1 root wheel compressed 6B Aug 17 2018 cron.deny drwxr-xr-x 2 daemon wheel - 64B Aug 17 2018 jobs/ drwxr-xr-x 2 daemon wheel - 64B Aug 22 22:11 spool/ drwx------ 4 root wheel - 128B Nov 22 12:46 tabs/ drwx------ 2 root wheel - 64B Feb 18 15:04 tmp/ /private/var$ ls -laOd at drwxr-xr-x 8 daemon wheel - 256B Feb 18 16:47 at/ /private$ ls -laOd var drwxr-xr-x 26 root wheel sunlnk 832B Feb 18 16:51 var/
與那台電腦不同,我嘗試在下面進行的任何 sudo 更改
/private/var/at
(例如sudo touch test
)都會得到“不允許操作”。在/private/var
此之上,我可以 sudo 更改任何內容(如我在內部測試的有限且明顯的更改類型/private/var/at
,而不是任何內容)。有一些東西阻止我更改內容,
/private/var/at
我認為這是導致 crontab 錯誤消息的原因,因為crontab
無法寫入/private/var/at/tmp
和創建錯誤消息中報告的 tmp crontab 文件。我知道 crontab 不是 OSX 中的首選方法,但這不是這個問題的重點。
簡短的回答:
轉到系統偏好設置 > 安全和隱私並授予對終端的全盤訪問權限。
長答案:
- 下拉Apple菜單並選擇“系統偏好設置”
- 選擇“安全和隱私”控制面板
- 現在選擇“隱私”選項卡,然後從左側菜單中選擇“全盤訪問”
- 點擊首選項面板左下角的鎖定圖示並使用管理員級別登錄進行身份驗證
- 現在點擊$$ + $$加號按鈕添加具有完整磁碟訪問權限的應用程序
- 導航到 /Applications/Utilities/ 文件夾並選擇“終端”以授予終端全盤訪問權限
- 重新啟動終端,“不允許操作”錯誤消息將消失