我正在考虑编写一个Rails应用程序来管理像cPanel这样的服务器。
最难的部分是选择运行需要root权限的命令的最佳方法,例如adduser
,或者执行需要其他用户权限的操作,例如更改nginx配置文件。
我只知道两种方法来实现这一目标:
哪种方式最好?还有另一种方法吗?
答案 0 :(得分:3)
sudo -i
我尝试过像sudo bundle exec rails console
这样的事情,但它不会以root身份运行它,所以当我尝试从控制台创建目录时,它让我知道我没有正确的权限。
但是,使用sudo -i
,它会以sudo root用户身份进入“交互式控制台”,然后您可以作为sudo root用户运行bundle exec rails console
。
希望能帮助他人。
答案 1 :(得分:2)
你需要做#2。
以root身份启动您的应用程序,您将能够以root用户身份执行所有操作。
编写代码作为守护程序运行也可以,但是调试起来比较困难。在任何一种情况下,您都必须通过未经授权的访问来防止黑客攻击。一个单据和您的系统将受到损害。