Open main menu

OpenVZ Virtuozzo Containers Wiki β

Container enter failed

Revision as of 11:36, 25 June 2010 by 194.50.39.62 (talk)

Problem: container created succesfully and started. But when trying to do

vzctl enter 101 

you get

container enter failed(?)

Using strace, you see:

# strace -ff vzctl enter
....
fstat64(...st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0)...) fail
....

Solution: Recompile the kernel with the following option:

CONFIG_LEGACY_PTYS=y

Other solutions:

1) enter the VE manually creating the LEGACY_PTYS devices

vzctl exec  101 /sbin/MAKEDEV tty
vzctl exec 101 /sbin/MAKEDEV pty
vzctl enter 101

2A) If you want udev in VE, save the changes forcing udev to make LEGACY_PTYS:

cat > /etc/udev/makedev.d/51-udev.nodes
# These device have to be created manually
tty0
tty1
tty2
tty3
....
ttyp0
ttyp1
ttyp2
ttyp3
....
ptyp0
ptyp1
ptyp2
ptyp3
....


2B) If you think is better disable udev in VE, comment out in the VE the line:

/sbin/start_udev

in

/etc/rc.d/rc.sysinit

.. however updates to the package which owns this file may revert your changes, so you must take steps to guard against this.

Restart the VE and make the devices with MAKEDEV:

vzctl exec  101 /sbin/MAKEDEV tty
vzctl exec 101 /sbin/MAKEDEV pty
vzctl enter 101

3) Debian : enter the VE manually (the 1 && 2 solutions did'nt work on my VE debian-5.0)

CTID=101
vzctl exec  $CTID "mount -t devpts devpts /dev/pts" 
vzctl enter $CTID

See also