Re: 32Bit Jail in einer 64Bit Umgebung

From: Michael Gusek <michael.gusek(at)web.de>
Date: Wed, 18 Apr 2007 11:28:04 +0200

Bernd Walter wrote:
> On Sat, Apr 14, 2007 at 04:43:21PM +0200, Michael Gusek wrote:
>
>> Hallo !
>>
>> Wie in dem Thread "jdk 1.4 unter 64 bit" beschrieben, sollte es möglich
>> sein, ein 32 Bit Jail in einer 64 Bit Umgebung zu betreiben. Hierzu hab
>> ich auf einer 32Bit Maschine ein Jail eingerichtet, in dem eine
>> Java-Anwendung das jdk 1.4 nutzt. Weiterhin hab ich eine 64Bit Maschine
>> wo dieses Jail laufen soll. Ich hab das Jail rüberkopiert und mittels
>> dem Jail-Kommando gestartet. Der erste Start brach mit einer
>> Fehlermeldung, das /libexec/ld-elf32.so.1 nicht gefunden wurde. Nachdem
>> ich in der jail im Verzeichnis /libexec einen Link von ld-elf.so.1 auf
>> ld-elf32.so.1 gemacht habe, fährt die Jail hoch:
>>
>> Loading configuration files.
>> Setting hostname: xxx.jails.local.
>> ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/X11R6/lib
>> /usr/local/lib /usr/local/lib/compat/pkg /usr/local/lib/compat/pkg
>> 32-bit compatibility ldconfig path: /usr/lib32
>> ldconfig: warning: /usr/lib32: No such file or directory
>> Creating and/or trimming log files:.
>> ln: /dev/log: Operation not permitted
>> Starting syslogd.
>> Clearing /tmp (X related).
>> Starting local daemons:.
>> Updating motd.
>> Starting sshd.
>> Starting cron.
>> Local package initialization:
>>
>> Die Warnung von ldconfig das /usr/lib32 nicht gefunden wurde hab ich
>> behoben. Das Problem ist, dass einiges nicht geht. ps liefert eine leere
>> Liste, sockstat sagt sockstat: struct xinpgen size mismatch. Leider geht
>> auch die java-Anwendung nicht. Es scheint also, dass da was im Argen
>> liegt. Aber was ?
>>
>
> Die Startscripte sehen eine 64 bit CPU und glauben sich in einer
> solchen Umgebeung, deshalb die lib32 Meldung.
> Der ld-elf.so Pfad wird AFAIK vom Kernel umgeschrieben, der weiß ja
> auch nichts vom i386-Jail.
> Das die Binaries die diverse Kerneltabellen nicht lesen können ist auch
> normal, da die ja von einem i386 Kernel ausgehen.
> Das sollte aber normale Programme nicht davon abhalten zu laufen.
>
>
Was meinst Du mit normale Programme ? Also Postgres geht, aber leider
nicht das 32Bit java 1.4. nicht:
/usr/local/bin/java -v: Could not create the Java virtual machine.
Wenn ich ein Programm mit killall beenden, bekomme ich eine Meldung das
Userland und Kernel nicht übereinstimmen, nun das Jail ist etwa 1 Woche
früher aus den Sourcen erstellt worden, wie die 64 Bit Umgebung. Würde
es etwas helfen, beide Jail und 64 Bit Umgebung nochmal mit den gleichen
Sourcen zu erstellen ?

Micha

To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Wed 18 Apr 2007 - 11:29:15 CEST

search this site