[arch-general] tty0 not available anymore with systemd
Hi, I can't remember to have changed anything critical in the last couple of days/weeks on this system, therefore I suppose it has something to do with some updates. Since a couple of days I no more got an console on tty0 with systemd. tty1 - tty6 work fine, but tty0 just displays the dialog to enter my password to unlock my encrypted root partition and the results of the fsck systemd is performing during the bootup. My best guess would be that it somehow gets stuck in the initrd, but I'm not sure. Is this anything you already experienced? Have I missed something? As said it worked fine in the past and I can't remember to have changed any configuration or something like that. Best regards, Karol Babioch
On Sun, Jul 29, 2012 at 12:33 AM, Karol Babioch <karol@babioch.de> wrote:
Hi,
I can't remember to have changed anything critical in the last couple of days/weeks on this system, therefore I suppose it has something to do with some updates.
Since a couple of days I no more got an console on tty0 with systemd. tty1 - tty6 work fine, but tty0 just displays the dialog to enter my password to unlock my encrypted root partition and the results of the fsck systemd is performing during the bootup. My best guess would be that it somehow gets stuck in the initrd, but I'm not sure.
tty0? How exactly do you switch to it? One cannot have a console on /dev/tty0, sine it's not a real tty but only a pointer to the currently activated console. [That's what console(4) says anyway.] So I don't know how it could have worked in the first place. -- Mantas Mikulėnas
Hi, Am 29.07.2012 00:20, schrieb Mantas Mikulėnas:
tty0? How exactly do you switch to it?
Ctrl+Alt+F1.
One cannot have a console on /dev/tty0, sine it's not a real tty but only a pointer to the currently activated console.
Ok, maybe the terminology I've used is wrong. However I'm talking about the console, which normally would come up when pressing "Ctrl+Alt+F1". Guess it would be tty1 then ;). Best regards, Karol Babioch
On Sun, Jul 29, 2012 at 1:46 AM, Karol Babioch <karol@babioch.de> wrote:
Hi,
Am 29.07.2012 00:20, schrieb Mantas Mikulėnas:
tty0? How exactly do you switch to it?
Ctrl+Alt+F1.
That's tty1. Try enabling getty@tty1.service: ln -sf /usr/lib/systemd/system/getty@.service \ /etc/systemd/system/getty.target.wants/getty@tty1.service ("systemctl enable getty@tty1.service" currently works in systemd-git only...) -- Mantas Mikulėnas
Hi, Am 29.07.2012 00:56, schrieb Mantas Mikulėnas:
Try enabling getty@tty1.service:
Unfortunately this didn't work. It was enabled already anyway. By the way: systemctl shows that it is enabled, but it is also dead for whatever reason :(. [root@vpcs ~]# systemctl status getty@tty1.service getty@tty1.service - Getty on tty1 Loaded: loaded (/usr/lib/systemd/system/getty@.service; enabled) Active: inactive (dead) Docs: man:agetty(8) CGroup: name=systemd:/system/getty@.service/tty1 What would be the best way to figure out what is going on here? Can't find anything suspicious in the logs :(. Best regards, Karol Babioch
On Sat, Jul 28, 2012 at 6:15 PM, Karol Babioch <karol@babioch.de> wrote:
Hi,
Am 29.07.2012 00:56, schrieb Mantas Mikulėnas:
Try enabling getty@tty1.service:
Unfortunately this didn't work. It was enabled already anyway.
the link isn't broken, right? pointing to, say, /lib/systemd/... what happens if you try to manually start it with `systemctl start getty@tty1.service`? btw, your status output suggest that it never ran (eg. broken link), not that it has already failed. i'm not seeing an issue here, but most of my getty@tty1.service are an empty file which is then `chattr +i` ... it actually pisses my off that the link is installed by default because the damn thing clears the boot output! `chattr +i` puts an end to that real quick ;-) -- C Anthony
On Sun, Jul 29, 2012 at 8:59 AM, C Anthony Risinger <anthony@xtfx.me> wrote:
On Sat, Jul 28, 2012 at 6:15 PM, Karol Babioch <karol@babioch.de> wrote:
Hi,
Am 29.07.2012 00:56, schrieb Mantas Mikulėnas:
Try enabling getty@tty1.service:
Unfortunately this didn't work. It was enabled already anyway.
the link isn't broken, right? pointing to, say, /lib/systemd/...
Good point, but I think systemd only cares about the target's basename anyway? I remember having several such broken links during early usrmove.
most of my getty@tty1.service are an empty file which is then `chattr +i` ...
I prefer `systemctl mask` and pacman's NoExtract, but I suppose that's the same thing. -- Mantas Mikulėnas
On Sun, Jul 29, 2012 at 4:19 AM, Mantas Mikulėnas <grawity@gmail.com> wrote:
On Sun, Jul 29, 2012 at 8:59 AM, C Anthony Risinger <anthony@xtfx.me> wrote:
On Sat, Jul 28, 2012 at 6:15 PM, Karol Babioch <karol@babioch.de> wrote:
Hi,
Am 29.07.2012 00:56, schrieb Mantas Mikulėnas:
Try enabling getty@tty1.service:
Unfortunately this didn't work. It was enabled already anyway.
the link isn't broken, right? pointing to, say, /lib/systemd/...
Good point, but I think systemd only cares about the target's basename anyway? I remember having several such broken links during early usrmove.
yeah you're probably right -- i also recall several machines with broken links that worked fine (so fine in fact, that i did not notice the links were broken for a good week or so). i'd like to see a `tree /etc/systemd` on Karol's machine ... (aside: btw, Karol, you and i have the same first name, but the K makes it much kewler ... but i digress ;-)
most of my getty@tty1.service are an empty file which is then `chattr +i` ...
I prefer `systemctl mask` and pacman's NoExtract, but I suppose that's the same thing.
hrm, i thought it was doing it in post_install but i dunno ... for a long time it was installing directly to /etc/systemd/[...] but i'm not sure it's even doing that anymore. good point about you're methods -- i knew about the mask part (which links to /dev/null ... i think :-) but i had forgotten about the pacman stuff, thanks. -- C Anthony
On Sun, Jul 29, 2012 at 12:31 PM, C Anthony Risinger <anthony@xtfx.me> wrote:
On Sun, Jul 29, 2012 at 4:19 AM, Mantas Mikulėnas <grawity@gmail.com> wrote:
I prefer `systemctl mask` and pacman's NoExtract, but I suppose that's the same thing.
hrm, i thought it was doing it in post_install but i dunno ... for a long time it was installing directly to /etc/systemd/[...] but i'm not sure it's even doing that anymore.
It seems that the post_install uses `systemctl enable`. So NoExtract wouldn't work, but `systemctl mask` should be sufficient, I think? -- Mantas Mikulėnas
Hi, Am 29.07.2012 07:59, schrieb C Anthony Risinger:
the link isn't broken, right? pointing to, say, /lib/systemd/...
No, its not: [root@vpcs ~]# ls -l /etc/systemd/system/getty.target.wants/getty@tty1.service lrwxrwxrwx 1 root root 31 Jul 29 01:12 /etc/systemd/system/getty.target.wants/getty@tty1.service -> /usr/lib/systemd/getty@.service Am 29.07.2012 11:31, schrieb C Anthony Risinger:
i'd like to see a `tree /etc/systemd` on Karol's machine ...
Here you go: [root@vpcs ~]# tree /etc/systemd /etc/systemd ├── journald.conf ├── logind.conf ├── system │ ├── bluetooth.target.wants │ │ └── bluetooth.service -> /usr/lib/systemd/system/bluetooth.service │ ├── dbus-org.bluez.service -> /usr/lib/systemd/system/bluetooth.service │ ├── dbus-org.freedesktop.NetworkManager.service -> /usr/lib/systemd/system/NetworkManager.service │ ├── default.target -> /usr/lib/systemd/system/graphical.target │ ├── display-manager.service -> /usr/lib/systemd/system/gdm.service │ ├── getty.target.wants │ │ └── getty@tty1.service -> /usr/lib/systemd/getty@.service │ ├── local-fs.target.wants │ ├── multi-user.target.wants │ │ ├── cronie.service -> /usr/lib/systemd/system/cronie.service │ │ ├── cups.path -> /usr/lib/systemd/system/cups.path │ │ ├── gpm.service -> /usr/lib/systemd/system/gpm.service │ │ ├── NetworkManager.service -> /usr/lib/systemd/system/NetworkManager.service │ │ ├── ntpd.service -> /usr/lib/systemd/system/ntpd.service │ │ └── remote-fs.target -> /usr/lib/systemd/system/remote-fs.target │ ├── printer.target.wants │ │ └── cups.service -> /usr/lib/systemd/system/cups.service │ ├── sockets.target.wants │ │ └── cups.socket -> /usr/lib/systemd/system/cups.socket │ └── sysinit.target.wants ├── system.conf ├── user └── user.conf 9 directories, 18 files
(aside: btw, Karol, you and i have the same first name, but the K makes it much kewler ... but i digress ;-)
I haven't chosen my name, but I can't complain, to be honest ;). By the way: When starting it manually my X server gets killed and I get switched back to tty1. So the unit file should be fine. Not sure whats going on here. I'm relatively new to systemd, so I'm not quite sure what to look for. Best regards, Karol Babioch
On Sun, Jul 29, 2012 at 1:30 PM, Karol Babioch <karol@babioch.de> wrote:
Hi,
Am 29.07.2012 07:59, schrieb C Anthony Risinger:
the link isn't broken, right? pointing to, say, /lib/systemd/...
No, its not:
[root@vpcs ~]# ls -l /etc/systemd/system/getty.target.wants/getty@tty1.service lrwxrwxrwx 1 root root 31 Jul 29 01:12 /etc/systemd/system/getty.target.wants/getty@tty1.service -> /usr/lib/systemd/getty@.service
do you have `ls --color` enabled? that link is almost certainly broken: # ls /usr/lib/systemd/getty@.service ls: cannot access /usr/lib/systemd/getty@.service: No such file or # ls /usr/lib/systemd/system/getty@.service /usr/lib/systemd/system/getty@.service ... note the extra `system` in the path. do a: # systemctl reenable getty@tty1.service ... it looks like you probably tried to manually relink it at some point.
By the way: When starting it manually my X server gets killed and I get switched back to tty1. So the unit file should be fine.
that is really odd ... AFAIK they should not conflict with each other at all ... i've no idea whats happening there. the only real difference i see between your setup and min is the use of: display-manager.service -> /usr/lib/systemd/system/gdm.service ... whereas i simply put gdm in graphical.target.wants: graphical.target.wants/gdm.service -> /usr/lib/systemd/system/gdm.service ... i don't think that's really an issue tho. systemd.special seems to suggest that this special unit is mainly for LSB compatibility, but it's not clear. -- C Anthony
Hi, Am 29.07.2012 21:00, schrieb C Anthony Risinger:
... note the extra `system` in the path. do a: [...] ... it looks like you probably tried to manually relink it at some point
Yeah, I have fiddled around with it after it stopped working. However it looks now like this: [johnpatcher@vpcs ~]$ ls -l /etc/systemd/system/getty.target.wants/getty@tty1.service lrwxrwxrwx 1 root root 38 30. Jul 15:16 /etc/systemd/system/getty.target.wants/getty@tty1.service -> /usr/lib/systemd/system/getty@.service Still not working :(.
# systemctl reenable getty@tty1.service
[root@vpcs ~]# systemctl reenable getty@tty1.service Failed to issue method call: No such file or directory So not sure what to do next :(. Best regards, Karol Babioch
On Mon, Jul 30, 2012 at 3:21 PM, Karol Babioch <karol@babioch.de> wrote:
Hi,
Am 29.07.2012 21:00, schrieb C Anthony Risinger:
... note the extra `system` in the path. do a: [...] ... it looks like you probably tried to manually relink it at some point
Yeah, I have fiddled around with it after it stopped working.
However it looks now like this:
[johnpatcher@vpcs ~]$ ls -l /etc/systemd/system/getty.target.wants/getty@tty1.service lrwxrwxrwx 1 root root 38 30. Jul 15:16 /etc/systemd/system/getty.target.wants/getty@tty1.service -> /usr/lib/systemd/system/getty@.service
Still not working :(.
# systemctl reenable getty@tty1.service
[root@vpcs ~]# systemctl reenable getty@tty1.service Failed to issue method call: No such file or directory
So not sure what to do next :(.
Best regards, Karol Babioch
Does any of your services (such as gdm.service) have a Conflicts=getty@tty1.service ? -t
Hi, Am 30.07.2012 15:22, schrieb Tom Gundersen:
Does any of your services (such as gdm.service) have a Conflicts=getty@tty1.service ?
Not that I know of. I have looked over them (as well as grepped for the string) and couldn't find something like that :(. Best regards, Karol Babioch
On Mon, 2012-07-30 at 15:22 +0200, Tom Gundersen wrote:
On Mon, Jul 30, 2012 at 3:21 PM, Karol Babioch <karol@babioch.de> wrote:
Hi,
Am 29.07.2012 21:00, schrieb C Anthony Risinger:
... note the extra `system` in the path. do a: [...] ... it looks like you probably tried to manually relink it at some point
Yeah, I have fiddled around with it after it stopped working.
However it looks now like this:
[johnpatcher@vpcs ~]$ ls -l /etc/systemd/system/getty.target.wants/getty@tty1.service lrwxrwxrwx 1 root root 38 30. Jul 15:16 /etc/systemd/system/getty.target.wants/getty@tty1.service -> /usr/lib/systemd/system/getty@.service
Still not working :(.
# systemctl reenable getty@tty1.service
[root@vpcs ~]# systemctl reenable getty@tty1.service Failed to issue method call: No such file or directory
So not sure what to do next :(.
Best regards, Karol Babioch
Does any of your services (such as gdm.service) have a Conflicts=getty@tty1.service ?
-t
Thank you very much! Today I noticed this problem and it indeed came from the conflict listed in the gdm.service. Regards, Zhengyu Xu
On Mon, Jul 30, 2012 at 4:21 PM, Karol Babioch <karol@babioch.de> wrote:
# systemctl reenable getty@tty1.service
[root@vpcs ~]# systemctl reenable getty@tty1.service Failed to issue method call: No such file or directory
systemctl in v187 doesn't support enabling template units yet (systemd-git does). -- Mantas Mikulėnas
One cannot have a console on /dev/tty0, sine it's not a real tty but only a pointer to the currently activated console.
Ok, maybe the terminology I've used is wrong. However I'm talking about the console, which normally would come up when pressing "Ctrl+Alt+F1". Guess it would be tty1 then ;).
Looks like so on linux but you can certainly be excused for picking it up from somewhere. On OpenBSD you have a /dev/console (I guess like tty0 on linux) and tty0 comes up from ctrl-alt-f1. You also have OpenBSD 5.0 releases Linux kernels start with 3.2.1 not 3.2.0 The Human vs computer friendly argument, I guess. p.s. I noticed this the other day but figured I had said and repeated enough about systemd but as ttys have come up I will mention it. "http://en.wikipedia.org/wiki/Init" "Aside from runlevels 0, 1, and 6, every Unix and Unix-like system treats runlevels a little differently. The common denominator is the /etc/inittab file, which defines what each runlevel does (if they do anything at all)." So it seems systemd has achieved the opposite (maybe for a good reason, I do not know) on one of it's goals and I would say the main driving force behind it of unifying init system control in this case at the very least. -- _______________________________________________________________________ 'Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface' (Doug McIlroy) _______________________________________________________________________
On Sun, Jul 29, 2012 at 10:20 PM, Kevin Chadwick <ma1l1ists@yahoo.co.uk> wrote:
Linux kernels start with 3.2.1 not 3.2.0
Technically 3.2 is 3.2.0. Not that OS versioning is related to this discussion... -- Mantas Mikulėnas
participants (6)
-
C Anthony Risinger
-
Karol Babioch
-
Kevin Chadwick
-
Mantas Mikulėnas
-
Tom Gundersen
-
Zhengyu Xu