postinst: SIGTERM for re-exec causes problems if Upstart isn't /sbin/init
Bug #92177 reported by
Martin Pool
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
upstart |
Fix Released
|
High
|
Unassigned | ||
Trunk |
Won't Fix
|
High
|
Unassigned | ||
upstart (Ubuntu) |
Fix Released
|
High
|
Unassigned |
Bug Description
I was doing a dist-upgrade from the recovery mode of the 20070313 alternate i386 disk to get my machine working again. I saw something come up on the screen about upgrading upstart and restarting upstart, and then the machine rebooted.
This happened because the upstart postinst sent init SIGTERM, which is the instruction for upstart to reexec itself. However the recovery CD just has a basic shell for /sbin/init, and the TERM signal killed it.
Reexec should be performed, as sysvinit, via initctl; then the postinst would just get a Connection Refused and be able to carry on. (Make sure we || true it)
Changed in upstart: | |
importance: | Undecided → High |
description: | updated |
Changed in upstart: | |
importance: | Undecided → High |
status: | Unconfirmed → Confirmed |
status: | Needs Info → Confirmed |
Changed in upstart: | |
status: | Invalid → Confirmed |
summary: |
- SIGTERM for re-exec causes problems if Upstart isn't /sbin/init + postinst: SIGTERM for re-exec causes problems if Upstart isn't + /sbin/init |
Changed in upstart (Ubuntu): | |
status: | Triaged → In Progress |
To post a comment you must log in.
Which version of Ubuntu/Upstart were you upgrading from, and which version were you upgrading to?