upstart和systemd之间的超级混淆
鉴于我运行15.10我的系统应该使用systemd
确认…
$ ps -p1 | grep systemd && echo systemd || echo upstart 1 ? 00:00:02 systemd systemd
但是我定义了一个upstart
脚本, ~/.config/upstart/startup.conf
description "my startup scripts" start on desktop-start task console log script exec ~/scripts/startup.sh start end script
启动脚本的工作原理我想用upstart
?
但后来我还定义了一个关闭脚本, ~/.config/upstart/shutdown.conf
description "my shutdown scripts" start on desktop-end task console log script exec ~/scripts/backup.sh start end script
但是那个脚本没有开始。 当我尝试手动启动时…
sudo start startup
或sudo start shutdown
我得到..
start: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused
如果我从~/scripts/backup.sh
手动运行它,则关闭脚本可以正常工作。
权限
-rwxrwxr-x 1 deanresin deanresin 933 May 28 01:31 backup.sh -rwxrwxr-x 1 deanresin deanresin 2061 May 28 14:06 startup.sh -rw-rw-r-- 1 deanresin deanresin 124 May 28 14:04 shutdown.conf -rw-rw-r-- 1 deanresin deanresin 218 May 28 14:02 startup.conf
感谢下面的评论者,这是一个许可问题。 变成..
-rwxrwxr-x 1 deanresin deanresin 124 May 28 14:04 shutdown.conf -rwxrwxr-x 1 deanresin deanresin 218 May 28 14:02 startup.conf
编辑:由于某种原因, startup.conf
不需要执行权限。 这些权限正在运作……
-rwxrwx--- 1 deanresin deanresin 124 May 28 14:04 shutdown.conf -rw-rw---- 1 deanresin deanresin 218 May 28 14:02 startup.conf
为什么我的启动脚本工作,为什么我的关机脚本不起作用? 为什么新贵工作? 或者是吗? 我非常困惑。
这可能是权限问题。 两个.conf
文件都需要是可执行的。
做:
chmod a+x ~/.config/upstart/shutdown.conf
为什么新贵工作? 或者是吗? […]我仍然很困惑为什么暴发户正在工作。
systemd作为系统范围的服务管理器运行。 upstart作为每会话服务管理器运行。
进一步阅读
- https://askubuntu.com/a/613814/43344
- “启动和服务管理” 。 Upstart 15版发行说明 。 2015年4月24日。 Ubuntu Linux系统。
- “会话初始化” 。 新贵食谱 。 Ubuntu Linux系统。
- James Hunt,StéphaneGraber,Dmitrijs Ledkovs和Steve Langasek(2012-11-12)。 “重新生成用户作业和PID跟踪” 。 Ubuntu Raring新贵用户会话 。 Ubuntu Linux系统。
- 内森威利斯(2013-04-17)。 用户会话的新贵 。 LWN。
- 讨论Session Inits(新贵)如何迁移到systemd 2014-03-11。 Ubuntu峰会。
- https://unix.stackexchange.com/a/194208/5132