簡體   English   中英

如何在Mac中運行沒有密碼的Sudo代碼

[英]How to run Sudo code without password in mac

我想在終端中運行“ sudo rm ing / tmp / instruments_sock”。 我正在通過使用robotil jar的代碼來執行此操作。 但是我無法輸入密碼。 有什么辦法可以運行此命令而無需在Mac中輸入密碼!! 我只想刪除此命令的密碼。

如果要執行沒有密碼的單個特權任務,最好的方法可能是使用setuid二進制文件。

簡而言之,您可以創建一個小型程序,它可以滿足您的需求。 然后,您可以通過將程序的所有者設置為root並啟用setuid位來賦予程序root特權。

一個非常重要的警告 :不要只在setuid二進制文件中調用system("rm /tmp/something") 那是一個經典的安全漏洞。 不干凈的環境變量(例如PATH)會劫持該命令。 上面的Wikipedia鏈接中有安全問題的簡短介紹。

最簡單,最安全的方法不是使用system(),而是使用該語言自己的文件處理庫。 如果您不確定自己在做什么,請避免從二進制文件中運行Shell命令。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM