Hello,

The packages openjdk-11-jre and ca-certificates-java (at least) state in their 
postinst, that java needs a mounted /proc to run and then fail.

That is not quite true though: If the lib/jli subdirectory of the jvm base 
directory (i.e. /usr/lib/jvm/java-11-openjdk-amd64) is added to 
LD_LIBRARY_PATH, java runs just fine without a mounted /proc.

Now the openjdk-11-jre just knows where the jvm base directory is, and could 
simply add a:

LD_LIBRARY_PATH=$basedir/lib/jli:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

to run the java binary. Similar for ca-certificates-java that needs to run java 
in its postinst.

Background is that I install the openjdk-11-jre in a chrooted environment where 
no /proc is available. This only produces the final system as a tarball though.

If you prefer to keep the check for the mounted /proc, to point people in the 
right direction, could the check be switched off by people like me who know 
what they are doing? E.g. by 

running_in_chroot() {
   type systemd-detect-virt >/dev/null 2>&1 && systemd-detect-virt --chroot
}

and then changing the test to

if ! running_in_chroot && ! mountpoint -q /proc; then...


Best regards, Nils Rennebarth

-- 
Dipl. Math Nils Rennebarth
Senior Berater Entwicklung
Division Network & Client security
secunet Security Networks AG 
 

Tel.: +49 201 5454-3976
Fax: +49 711 900300-90
Mobil: +49 174 9750449
E-Mail: nils.renneba...@secunet.com


Neue Brücke 3
70173 Stuttgart
www.secunet.com

______________________________________________________________________

Sitz: Kurfürstenstraße 58, 45138 Essen, Deutschland 
Amtsgericht Essen HRB 13615
Vorstand: Axel Deininger (Vors.), Torsten Henn, Dr. Kai Martius, Thomas Pleines 
Aufsichtsratsvorsitzender: Ralf Wintergerst
______________________________________________________________________


Attachment: OpenPGP_signature
Description: OpenPGP digital signature

Reply via email to