You are not logged in.

#1 2014-10-25 16:10:56

MobiusHorizons
Member
Registered: 2014-10-25
Posts: 4

systemd skip troublesome target at boot

Hello all,

I installed gnome-software-git from the AUR, and attempted a (reboot and install upgrades). Unfortunately when it gets to (Reached target System Update), it hangs and won't continue.
Unfortunately, I don't have any bootable linux media available at the moment, so I am wondering is there a way (either from kernel commandline or while booting) to skip a troublesome systemd target?

PS. may I add that the registration process for arch forums should not contain the troublesome 'what is the result of "date -u +V%$(uname)|sha256sum|sed 's/\W//g'"?" I was forced to run this in jslinux(linux in a browser) since sha256sum was unavailable. I also had to be in windows because my arch install is currently not bootable (the reason I needed to register on the forums)

Offline

#2 2014-10-25 16:15:17

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: systemd skip troublesome target at boot

Boot into single user mode, disable the problem target, reboot, fix.

Offline

#3 2014-10-25 17:00:28

MobiusHorizons
Member
Registered: 2014-10-25
Posts: 4

Re: systemd skip troublesome target at boot

Thanks single user mode got me in to be able to modify the system, however, if anyone runs into the same issue, It turns out I was unable to disable system-update.target using the command
`systemctl disable system-update.target`  as expected

In order to fix it I had to enable packagekit offline upgrades as seen in this bug .

I do wish there was a default timeout for non-critical targets, or a way to change default target from the kernel command line.

Offline

#4 2014-10-25 17:11:01

falconindy
Developer
From: New York, USA
Registered: 2009-10-22
Posts: 4,111
Website

Re: systemd skip troublesome target at boot

If you understand what targets are, you'll realize that they cannot possibly timeout. Individual dependencies of a target can timeout, but it makes no sense to say that a target has any sort of timeout associated with it. It's just a logical grouping of units, with no active functionality of its own.

In fact, by your own logging, system-update.target was in fact reached -- it didn't timeout. Something else did (which you probably didn't wait for, given the default 15m startup timeout).

Offline

#5 2014-10-25 18:44:39

MobiusHorizons
Member
Registered: 2014-10-25
Posts: 4

Re: systemd skip troublesome target at boot

Thanks for the explanation. However, I did give it 20 minutes or so, and saw no timeout. I suppose it must have been waiting for packagekit offline upgrade which had not been enabled.

I am curious, however, why the target could not be disabled. Does anyone know?

Offline

#6 2014-10-25 23:42:55

branch
Member
Registered: 2014-03-16
Posts: 209

Re: systemd skip troublesome target at boot

Targets cannot be disabled because they are effectively always disabled and are only started if they are a depencency of another unit. If you run "systemctl status multi-user.target" for example, where you would normally see "enabled" or "disabled" you see "static" instead. You can see what depends on a target with "systemctl show ${target}", look at the "WantedBy" and/or "RequiredBy" lines.

Offline

#7 2014-10-26 04:04:25

MobiusHorizons
Member
Registered: 2014-10-25
Posts: 4

Re: systemd skip troublesome target at boot

Thanks. That helps me understand better. I'm still pretty new to systemd.

Offline

Board footer

Powered by FluxBB