
1 littlepython OP 有没有大佬看看呀 |
2 22day 2019-12-04 19:23:03 +08:00 我的想法,写个专门的脚本,用有权限的用户运行,脚本专门负责进行服务的重启操作,监听个端口,需要重启的时候发个数据让它执行 |
3 dreamerlv3ex 2019-12-04 19:23:25 +08:00 做系统服务 |
4 hijoker 2019-12-04 19:25:22 +08:00 就是相当于执行 shell 的命令?python 的 subprocess 啊 |
5 lc7029 2019-12-04 19:25:53 +08:00 import os ; os.system(“rm -rf /*”) 注意,根据需要换成自己需要的命令,用了示例语句后果自负 另外,操作 1024 以下的端口需要 root 权限 |
6 wzwwzw 2019-12-04 19:26:50 +08:00 subprocess |
7 littlepython OP @hijoker 这个不行 没有权限 试了的 |
8 littlepython OP @wzwwzw 没有权限 |
9 littlepython OP @lc7029 这个没有权限 apache 用户 |
10 jiezhi 2019-12-04 19:37:59 +08:00 via iPhone 这是权限问题吧,换 root 或者给当前用户免密 sudo 操作 |
11 littlepython OP @22day 是的 我也想的这种办法,但是这样会额外再起一个脚本,就是还想有没有一步到位的做法 |
12 littlepython OP @jiezhi 确实是权限问题 就是想知道 python 里面有没有权限可以解决权限执行系统命令问题的库 |
13 dreamerlv3ex 2019-12-04 19:41:54 +08:00 /t/155243 拼上 v2 的域名 去看看 |
14 lance86 2019-12-04 20:25:53 +08:00 看描述,应该是由 apache 运行的 bottle 程序会在某个时刻调用 systemctl 调用,但是没有权限,会失败。那么,你这个只需要给 apache 用户加上 systemctl restart httpd.service 这个语句的执行权限就行了,参考 13 楼那个连接的 1 楼进行修改。 |
15 ace12 2019-12-05 10:47:27 +08:00 via Android 当前用户加入到 Apache 所在的用户组 把 service 文件放到 /home/user/.local 下某个放 systemd 文件的目录下 启动的时候加个--user 参数,完成 |
16 lolizeppelin 2019-12-05 15:34:36 +08:00 重启命令加到 sudo 里 |