systemd: fix "double getty" problem on serial console with recent kernels

From #systemd:

16:46 < koen> kay: do you know what could have changed in 2.6.39 that system opens a getty on tty0 by itself?
16:48 < kay> nothing in the kernel i could think of
16:48 < koen> I can trigger it just by switching kernels and leaving the rootfs identical
23:53 < mezcalero> koen: btw, it is /lib/systemd/systemd-generators/systemd-getty-generator which spawns gettys
23:53 < mezcalero> on the kernel console automatically
23:53 < mezcalero> it uses /sys/class/tty/console/active for that
23:53 < mezcalero> which eixsts only on recent kernels
00:32 < koen> mezcalero: so what's the best way to avoid double spawning a getty?
00:35 < mezcalero> if if you want a serial getty even if you are not redirecting the console just make sure to use the same service name
00:35 < mezcalero> how exactly are your two getty services called?
00:39 < koen> lrwxrwxrwx    1 root     root            41 May 27 22:38 getty@ttyO2.service -> /lib/systemd/system/serial-getty@.service
00:50 < mezcalero> koen: call it serial-getty@ttyO2
This commit is contained in:
Koen Kooi
2011-05-28 09:38:59 +02:00
parent 7f9dbc1600
commit ede2ce2942
+2 -2
View File
@@ -18,7 +18,7 @@ PKGV = "v${GITPKGVTAG}"
# Except that PKGV doesn't work in OE-core :(
# PV = "git"
PV = "v28"
PR = "r0"
PR = "r1"
inherit autotools vala update-alternatives
@@ -53,7 +53,7 @@ do_install_append() {
sed -i -e s/\@BAUDRATE\@/${@get_baudrate(bb, d)}/g ${WORKDIR}/serial-getty@.service
install ${WORKDIR}/serial-getty@.service ${D}${base_libdir}/systemd/system/
ln -sf ${base_libdir}/systemd/system/serial-getty@.service \
${D}${sysconfdir}/systemd/system/getty.target.wants/getty@${@get_console(bb, d)}.service
${D}${sysconfdir}/systemd/system/getty.target.wants/serial-getty@${@get_console(bb, d)}.service
fi
}