我正在考虑编写一个 Rails 应用程序来管理像 cPanel 这样的服务器。
最困难的部分是选择最佳方式来运行需要 root 权限的命令,例如adduser
,或执行需要其他用户权限的操作,例如更改 nginx 配置文件。
我只知道实现这一目标的两种方法:
- 我可以编写一个独立的守护进程,它将以 root 身份运行并完成所有工作,通过 IPC 或类似的方式接收命令。
- 以 root 用户身份运行 Rail 的服务器,并从中执行任何操作或执行命令/bash 脚本。
这些方法中哪一种最好?是否存在另一种方法?