servvent
Monday, 11 July 2016, 9:36:07 am
Hacer funcionar el tomcat usando el java 1.8 de debian 5 en servent:8888 (RHEL 4)
Se ha hecho lo siguiente:
1. Se ha hecho un bootstrap de lenny amd64 en 3.0.1.3:/data/lenny-amd64
cd /data
debootstrap --arch=amd64 lenny debian5-amd64 http://archive.debian.org/debian/
2. Se ha entrado en dicho chroot y se han instalado los paquetes que ncesitábamos (la lista ha sido generada en chibiko):
chroot debian5-amd64
apt-get install libasound2 libatk1.0-0 libc6 libcairo2 libdirectfb-1.0-0 libdrm2 libexpat1 libfontconfig1 \
libfreetype6 libgcc1 libgl1-mesa-glx libglib2.0-0 libgtk2.0-0 libpango1.0-0 libpcre3 libpixman-1-0 libpng12-0 \
libselinux1 libstdc++6 libx11-6 libxau6 libxcb1 libxcb-render0 libxcb-render-util0 libxcb-xlib0 libxcomposite1 \
libxcursor1 libxdamage1 libxdmcp6 libxext6 libxfixes3 libxi6 libxinerama1 libxml2 libxrender1 libxslt1.1 \
libxtst6 libxxf86vm1 zlib1g
3. Copio las librerías a un directorio diferente y se sale del chroot:
cd /
mkdir libs-64bit
for i in ld-linux.so.2 libGL.so.1 libX11.so.6 libXau.so.6 libXcomposite.so.1 libXcursor.so.1 libXdamage.so.1 \
libXdmcp.so.6 libXext.so.6 libXfixes.so.3 libXi.so.6 libXinerama.so.1 libXrender.so.1 libXtst.so.6 libXxf86vm.so.1 \
libasound.so.2 libatk-1.0.so.0 libc.so.6 libcairo.so.2 libdirect-1.0.so.0 libdirectfb-1.0.so.0 libdl.so.2 libdrm.so.2 \
libexpat.so.1 libfontconfig.so.1 libfreetype.so.6 libfusion-1.0.so.0 libgcc_s.so.1 libgdk-x11-2.0.so.0 libgdk_pixbuf-2.0.so.0 \
libgio-2.0.so.0 libglib-2.0.so.0 libgmodule-2.0.so.0 libgobject-2.0.so.0 libgthread-2.0.so.0 libgtk-x11-2.0.so.0 \
libm.so.6 libpango-1.0.so.0 libpangocairo-1.0.so.0 libpangoft2-1.0.so.0 libpcre.so.3 libpixman-1.so.0 \
libpng12.so.0 libpthread.so.0 libresolv.so.2 librt.so.1 libselinux.so.1 libstdc++.so.6 libthread_db.so.1 \
libxcb-render-util.so.0 libxcb-render.so.0 libxcb-xlib.so.0 libxcb.so.1 libxml2.so.2 libxslt.so.1 libz.so.1 \
; do echo $i ; cp -v `find . -name "$i" | grep -v libs-64bit` libs-64bit ; done
cp /lib/ld-linux-x86-64.so.2 libs-64bit
exit
4. Copiamos ese directorio libs-64bit a sevvent:/usr/java/
5. En servent, instalamos el java 1.8u31 usando el fichero jdk-8u31-linux-x64.tar.gz
cd /usr/java
tar -xvzf jdk-8u31-linux-x64.tar.gz
6. Modificamos el ejecutable del java para que use el cargador de librerías de 'debian 5 "lenny" amd64':
cp /usr/java/libs-64bit/ld-linux-x86-64.so.2 /lib64/ld-linux-amd-64.so.2
cd /usr/java/jdk1.8.0_31/jre/bin/
sed -i "s:/lib64/ld-linux-x86-64.so.2:/lib64/ld-linux-amd-64.so.2:g" java
7. Copiamos el tomcat desde chibiko:
tar -cvzf /home/tomcat.tgz etc/init.d/tomcat usr/java usr/share/apache-tomcat*
8. Lo instalamos en servvent:
cd /
tar -xvzf /tmp/tomcat.tgz
cd /usr/share/apache-tomcat-8.0.18/
sed -i "s/i386:amd64/g;s/uiharu/servvent/g;s/dario/metro/g;s/es_ES.UTF-8/C/g;s@PATH=$PATH:$JAVA_HOME/bin@$JAVA_HOME/bin:$PATH@" go.sh
9. Por último, para cambiar el puerto del servidor al 8888 (estaba en el 8080, pero ese lo usa oracle), en servvent:
cd /usr/share/apache-tomcat-8.0.18/conf
sed -i "s/8080/8888/g" server.xml
10. Se arranca el servidor para probarlo:
cd /usr/share/apache-tomcat-8.0.18
ln -s /dev/null nohup.out
nohup /etc/init.d/tomcat start &
NOTA: Para obtener el listado de librerías necesarias en chibiko, se hizo lo siguiente:
for i in `ldd /usr/java/jdk1.8.0_31/jre/lib/i386/client/libjvm.so | cut -d '>' -f 2 | cut -d ' ' -f 2 | grep lib ` ; do cp $i /tmp/libs/ ; done
cd /usr/java/jdk1.8.0_31/jre/lib/i386/client/
for i in `ldd ./libjsig.so | cut -d '>' -f 2 | cut -d ' ' -f 2 | grep lib ` ; do cp $i /tmp/libs/ ; done
cd ..
for j in *.so ; do for i in `ldd ./$j | cut -d '>' -f 2 | cut -d ' ' -f 2 | grep lib ` ; do cp $i /tmp/libs/ ; done ; done
cp /lib/ld-linux.so.2 /tmp/libs/
Descripción del proyecto
Actuaciones en servent, que es:
- Servidor BBDD para ventilación
- Servidor BBDD para interfonía
- Servidor tomcat para TCTI
|