簡體   English   中英

如何從Rails以root身份運行命令?

[英]How do I run commands as root from Rails?

我正在考慮編寫一個Rails應用程序來管理像cPanel這樣的服務器。

最難的部分是選擇運行需要root權限的命令的最佳方式,如adduser ,或者執行需要其他用戶權限的操作,例如更改nginx配置文件。

我只知道實現這個目的的兩種方法:

  1. 我可以編寫一個獨立的守護進程,它將以root身份運行並完成所有工作,通過IPC或類似的方式接收命令。
  2. 以root用戶身份運行Rail的服務器,並從中執行任何操作或從中執行命令/ bash腳本。

以下哪種方式最好? 是否存在另一種方式?

sudo -i

我嘗試過像sudo bundle exec rails console這樣的東西但它不會以root身份運行它所以當我試圖從控制台創建一個目錄時它讓我知道我沒有正確的權限。

但是,使用sudo -i它會以sudo root用戶身份進入“交互式控制台”,然后您可以作為sudo root用戶運行bundle exec rails console

希望有助於他人。

你需要做#2。

以root用戶身份啟動應用程序,您將能夠以root用戶身份執行所有操作。

編寫作為守護進程運行的代碼也可以工作,但是調試起來比較困難。

在任何一種情況下,您都必須通過未經授權的訪問來防止黑客攻擊。 一個單據和您的系統將受到損害。

暫無
暫無

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

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