On Thu, Jul 26, 2012 at 12:31 AM, Aitor Pazos <mail@xxxxxxxxxxxxx> wrote: >> >> Right, because /sbin/init isn't binary and none of the scripts relied >> on a interpreter that wasn't binary code? > > They are indeed, but it's a matter of size. The size of /sbin/init is 40.592B > and /usr/lib/systemd/systemd 866.576B, which is a huge difference. Init > responsabilities are much more specific than systemd's and the binary doesn't > change much. All systemd's features implies it will be updated frequently and > every change introduces some kind of risk. > > Interpreters are binaries as well, but if one fail you might use another one, > if systemd fails you might not be able to get even a rescue console. i think the likelihood of this is extremely low -- if your binary is so borked it can't run at all, methinks none of your binaries will run (since you have probably messed up the dynamic linker or something). not really an issue IMO, and comparing two images on size alone garners no real information. ultimately, you can always just bypass systemd with `init=/bin/bash` or, if dynamic libs were fuxxed, `init=/bin/busybox`, or even `init=/usr/lib/initcpio/busybox` ... which will get you a root shell. ... and if you can't get that far then you need a rescue image anyway, and systemd coundn't have prevented that. -- C Anthony