no console on precise containers
Bug #913952 reported by
Serge Hallyn
This bug affects 2 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
lxc (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
util-linux (Debian) |
Fix Released
|
Unknown
|
|||
util-linux (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
When a precise container is started, 'lxc-start -n p1', the /dev/console getty does not work. The other consoles ('lxc-console -n p1 -t [1-4]') do.
affects: | lxc (Debian) → util-linux (Debian) |
Changed in util-linux (Debian): | |
status: | Unknown → New |
Changed in util-linux (Debian): | |
status: | New → Fix Released |
To post a comment you must log in.
There are 3 causes, all stemming from commit 3aa6b68f7e19fa3 e1c2bba75bee921 a98b7b46af in upstream util-linux.
1. getty no longer accepts a full pathname. It prepends '/dev' to the string it uses to open the file. /etc/init/ console. conf in lxcguest passes /dev/console. Rather than changing getty, this can be changed in console.conf by passing just 'console'.
2. ioctl(fd, TIOCSCTTY) is called twice, and returns -EPERM for the container's console. Upstream commit 1593b134ebf596a e7a2b1e73f2dcc8 c4e7febddd fixes that by change log_err to log_warn.
3. a new call to tcsetpgrp is added, which returns Inappropriate ioctl for device. This is still present in upstream util-linux, but changing the following log_err to log_warn allows getty to succeed.
With each of these changes, precise containers have a console again.