Re: 32Bit Jail in einer 64Bit Umgebung

From: Michael Gusek <michael.gusek(at)web.de>
Date: Fri, 20 Apr 2007 11:14:14 +0200

Oliver Fromme wrote:
> Michael Gusek wrote:
> > Oliver Fromme wrote:
> > > Alle Tools, die z.B. per KVM auf den Kernel zugreifen
> > > wollen, werden nicht funktionieren; dazu gehören z.B.
> > > ps, top, dmesg, uptime, vmstat u.ä. Aber auch andere
> > > Programme, die direkt auf Kernelstrukturen zugreifen.
> >
> > Hmm ok, verstehe ich, bezieht sich das auch auf die Funktion getpid() ?
> > Einige Programme schreiben ja ihre pid nach /var/run.
>
> Nein, das funktioniert problemlos. getpid(2) ist ein
> »offizieller« Syscall, der das Ergebnis als Return-Wert
> liefert. Sowas funktioniert grundsätzlich immer.
>
> Das Problem mit KVM und direktem Zugriff auf struct proc
> ist halt, das direkt aus Kernelstrukturen gelesen wird,
> ohne dass diese durch eine plattformunabhängige API um-
> gesetzt werden. Im Falle von killall wird zwar die Stan-
> dard-API »sysctl« verwendet, um an die process-table zu
> kommen, allerdings ist diese in Binärform im »native«
> Format des (64bit-) Kernels hinterlegt. Nützt in diesem
> Fall also auch nichts.
>
> Das ist zugegebenermassen nicht ganz sauber, aber es ist
> sehr effizient, und in der Regel passen ja Kernel und
> Userland (insbes. auch die Libraries) unter BSD-Systemen
> zueinander. Ich sehe auch keinen Grund, warum man inner-
> halb eines Kompatibilitäts-Chroots oder -Jails Dinge wie
> killall bräuchte (ich persönlich verwende killall sowieso
> nie, aber das ist eine andere Geschichte).
>
> > > > Also Postgres geht, aber leider
> > > > nicht das 32Bit java 1.4. nicht:
> > > > /usr/local/bin/java -v: Could not create the Java virtual machine.
> > >
> > > Keine Ahnung, was Java da Dreckiges macht. Da braucht
> > > man schon etwas mehr Infos, um das zu untersuchen. Wenn
> > > es kein verboseres Log gibt, muss man das z.B. mal tracen,
> > > um dahinterzukommen.
> > >
> > Das war leider ein Fehler meinerseits. Richtig wäre java -version. Diese
> > Aufgabe scheint für java so schwer zu sein, dass der Prozess dauerhaft
> > auf 100% geht.
>
> Das kann sonstwelche Ursachen haben; das muss keineswegs
> mit der 32bit-Umgebung zusammenhängen. Man müsste das
> natürlich näher untersuchen; für eine Ferndiagnose sind
> die vorhandenen Informationen zu dürftig. strace ist
> im Falle von Java nicht unbedingt hilfreich, aber wie
> gesagt, in solchen Fällen sind Ferndiagnosen schwierig.
> Das muss man schon vor Ort debuggen.
>
> (Java ist aus Admin-Sicht eh 'ne Krankheit und sollte ver-
> mieden werden wie die Pest. Aber ich nehme an, dass Du
> keine andere Wahl hast, weil Du irgendeine Software benö-
> tigst, die auf Java aufsetzt.)
>
So sieht es aus. Wie müsste man denn Vorgehen, um Informationen zu
bekommen, die hier hilfreich sind ?

> Gruß
> Olli
>
>
Micha

To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Fri 20 Apr 2007 - 11:16:46 CEST

search this site