OpenVZ Forum


Home » International » German » Startvorgang eines Containers anzeigen loggen (Startvorgang eines Containers anzeigen loggen)
Re: Startvorgang eines Containers anzeigen loggen [message #48928 is a reply to message #48923] Sat, 19 January 2013 16:52 Go to previous messageGo to previous message
kita is currently offline  kita
Messages: 6
Registered: January 2013
Junior Member
Hi,

habe dazu folgendes gefunden:
openvz.livejournal.com/40599.html
forum.openvz.org/index.php?t=msg&goto=37085&

Da ich aber den Kernel nicht selber kompilieren will bzw. diese Erweiterung meines Wissens noch nicht für Debian zur Verfügung steht fällt die erste Variante weg.

Da ich eine Root-Server habe und keinen Zugriff auf den Bildschirm meines Servers, fällt die 2te Variante auch weg.

Da aber die Start-Ausgaben der einzelnen CTs auf /dev/console gehen habe ich mir ein kleines Programm geschrieben welches die Ausgaben abfängt und in einem "linux cmd screen" zur Verfügung stellt.

Statt der device-file "crw------- 1 root root 5, 1 /dev/console", verwende ich hier eine named pipe(linux cmd mkfifo).

Die CT schreibt in die pipe und das Programm ließt die pipe aus und stellt diese im "screen" dar.

Folgende modifikationen sind dazu Nötig:

/etc/vz/conf/vps.mount:
if [ -p /data/vz/private/$VEID/dev/console ]
then
        rm /data/vz/private/$VEID/dev/console
fi

if [ ! -a /data/vz/private/$VEID/dev/console ]
then
        mkfifo /data/vz/private/$VEID/dev/console
        screen -dmS console$VEID /bin/vzlog /data/vz/private/$VEID/dev/console /data/vz/private/$VEID/dev/console.pid
fi


/etc/vz/conf/vps.umount:
if [ -a /data/vz/private/$VEID/dev/console.pid ]
then
        kill $(cat /data/vz/private/$VEID/dev/console.pid)
        rm /data/vz/private/$VEID/dev/console.pid
fi


man benötigt noch den "screen manager with VT100/ANSI terminal emulation":
debian:
apt-get install screen


dann kopiert man noch vzlog nach /bin/vzlog und macht es ausführbar:
chmod 755 /bin/vzlog


wenn ihr die Datei selber compilieren wollt:
gcc -static -o vzlog vzlog.c


zum Schluss müssen die einzelnen /dev/console der CTs verschoben/gelöscht werden. Ich benenne diese immer um:
mv /data/vz/private/[VEID]/dev/console /data/vz/private/[VEID]/dev/console.bak


Wenn ihr euch nun die einzelnen Consolen nach dem start der CT aufrufen möchtet könnt ihr dies über:
screen -r console[VEID]


würde mich über Feedback oder Anregungen freuen.

Grüße,
Kita

P.S.: meine CT liegen unter /data/vz nicht unter /var/lib/vz!
  • Attachment: vzlog
    (Size: 673.09KB, Downloaded 1825 times)
 
Read Message icon5.gif
Read Message
Read Message
Previous Topic: Problem beim einbinden des localen Servers
Next Topic: Ubuntu 12.04 - xorg und startx
Goto Forum:
  


Current Time: Mon Oct 07 04:30:52 GMT 2024

Total time taken to generate the page: 0.04878 seconds