EDV:FreeNX/NX-2.1.0-freenx-0.7.0: Difference between revisions

From KIP Wiki
⧌kip-jumptonavigation⧜⧌kip-jumptosearch⧜
No edit summary
Line 1: Line 1:
= Vorbemerkungen =
= Vorbemerkungen =

Nachdem ich schon [[EDV:NX-2.1.0-on-dapper|freenx-0.6.0 auf ubuntu dapper]] installiert habe,
Nachdem ich schon [[EDV:NX-2.1.0-on-dapper|freenx-0.6.0 auf ubuntu dapper]] installiert habe,
versuche ich mich jetzt mit freenx-0.7.0 und NX-2.1.0 auf debian etch.
versuche ich mich jetzt mit freenx-0.7.0 und NX-2.1.0 auf debian etch.
Line 15: Line 14:
Das ist sicher nicht bequem - funktioniert aber zumindest bei uns.
Das ist sicher nicht bequem - funktioniert aber zumindest bei uns.


= NX holen, compilieren, installieren =
== NX-2.1.0 - Quellen holen==


== NX-2.1.0 - Quellen holen==
mkdir /usr/NX
mkdir /usr/NX
cd /usr/NX/
cd /usr/NX/
Line 38: Line 38:
wget http://64.34.161.181/download/2.1.0/sources/nxservice-2.1.0-11.tar.gz
wget http://64.34.161.181/download/2.1.0/sources/nxservice-2.1.0-11.tar.gz
wget http://64.34.161.181/download/2.1.0/sources/nxcompsh-2.1.0-3.tar.gz
wget http://64.34.161.181/download/2.1.0/sources/nxcompsh-2.1.0-3.tar.gz

oder alternativ - wenn die oben genannten Quellen nicht mehr verfĂŒgbar sein sollten - zumindest fĂŒr
oder alternativ - wenn die oben genannten Quellen nicht mehr verfĂŒgbar sein sollten - zumindest fĂŒr
Leute mit Zugriff auf das KIP-AFS:
Leute mit Zugriff auf das KIP-AFS:

mkdir /usr/NX
mkdir /usr/NX
cd /usr/NX/
cd /usr/NX/
/afs/kip/software/Linux/NomachineNX/src/nx-sources/
cp /afs/kip/software/Linux/NomachineNX/src/nx-sources/*.tar.gz .



== Quellen compilieren ==
== Quellen compilieren ==

DafĂŒr braucht man natĂŒrlich einen compiler und so weiter:
DafĂŒr braucht man natĂŒrlich einen compiler und so weiter:

aptitude install make g++ gcc libjpeg62-dev libpng12-dev libssl-dev autoconf xorg-dev
aptitude install make g++ gcc libjpeg62-dev libpng12-dev libssl-dev autoconf xorg-dev

Bei der Gelegenheit sollte man auch gleich noch ein paar weitere benötigte Pakete installieren:
Bei der Gelegenheit sollte man auch gleich noch ein paar weitere benötigte Pakete installieren:

aptitude install netcat expect smbfs
aptitude install netcat expect smbfs
aptitude install icewm icewm-themes
aptitude install icewm icewm-themes

Letzteres, wenn man die unten aufgefĂŒhrte Konfiguration verwenden möchte
Letzteres, wenn man die unten aufgefĂŒhrte Konfiguration verwenden möchte


Jetzt packen wir die Quell-Pakete aus und compilieren:
Jetzt packen wir die Quell-Pakete aus und compilieren:

cd /usr/NX
cd /usr/NX
find . -name "*tar.gz" -exec tar -zxf "{}" \;
find . -name "*tar.gz" -exec tar -zxf "{}" \;
Line 67: Line 58:
cd /usr/NX/nx-X11/
cd /usr/NX/nx-X11/
make World
make World

Das dauert eine Weile. Wenn der Prozess mit einem Fehler abschliessen sollte, dann versuchen Sie anhand
Das dauert eine Weile. Wenn der Prozess mit einem Fehler abschliessen sollte, dann versuchen Sie anhand
der Fehlermeldung herauszubekommen, welches Paket noch fehlt. Wenn Sie das Paket ausfindig gemacht und
der Fehlermeldung herauszubekommen, welches Paket noch fehlt. Wenn Sie das Paket ausfindig gemacht und
Line 76: Line 66:
'''nxdesktop''' : fĂŒr Windows-Terminal-Sitzungen ĂŒber NX.
'''nxdesktop''' : fĂŒr Windows-Terminal-Sitzungen ĂŒber NX.
Es scheint sich dabei um ein modifiziertes ''rdesktop'' zu handeln.
Es scheint sich dabei um ein modifiziertes ''rdesktop'' zu handeln.

cd /usr/NX/nxdesktop/
cd /usr/NX/nxdesktop/
./configure
./configure
Line 82: Line 71:
cp doc/rdesktop.1 doc/nxdesktop.1
cp doc/rdesktop.1 doc/nxdesktop.1
make install
make install

'''nxproxy''' : fĂŒr 'weitergeleitete' NX-Sitzungen?
'''nxproxy''' : fĂŒr 'weitergeleitete' NX-Sitzungen?

cd /usr/NX/nxproxy/
cd /usr/NX/nxproxy/
./configure
./configure
make
make

'''nxviewer''' : fĂŒr VNC-Sitzungen ĂŒber NX.
'''nxviewer''' : fĂŒr VNC-Sitzungen ĂŒber NX.

cd /usr/NX/nxviewer
cd /usr/NX/nxviewer
Line 107: Line 92:


== freenx-0.7.0 ==
== freenx-0.7.0 ==

=== download ===

cd /usr/NX
cd /usr/NX
wget http://download.berlios.de/freenx/freenx-0.7.0.tar.gz
wget http://download.berlios.de/freenx/freenx-0.7.0.tar.gz
Line 117: Line 99:
cd ..
cd ..


=== installieren ===
== Installation ==

Diese Beschreibung stammt im Wesentlichen aus dem README von freenx
Diese Beschreibung stammt im Wesentlichen aus dem README von freenx
NXPREFIX=/usr/NX
NXPREFIX=/usr/NX
Line 178: Line 159:


== nxclient installieren ==
== nxclient installieren ==

Das nxclient-Paket bekommt man unter
Das nxclient-Paket bekommt man unter
http://www.nomachine.com/download-client-linux.php
http://www.nomachine.com/download-client-linux.php
Line 191: Line 171:


== Konfiguration vorbereiten ==
== Konfiguration vorbereiten ==

/etc/nxserver/node.conf aus /etc/nxserver/node.conf.sample erzeugen.
/etc/nxserver/node.conf aus /etc/nxserver/node.conf.sample erzeugen.
Ich selbst habe die folgenden Variablen hinzugefĂŒgt/gesetzt:
Ich selbst habe die folgenden Variablen hinzugefĂŒgt/gesetzt:
Line 211: Line 190:
APPLICATION_LIBRARY_PRELOAD="/usr/NX/lib/libXft.so.2.1:/usr/NX/lib/libX11.so:/usr/NX/lib/libXext.so:/usr/NX/lib/libXcomp.so:/usr/NX/lib/libXcompext.so:/usr/NX/lib/libXrender.so"
APPLICATION_LIBRARY_PRELOAD="/usr/NX/lib/libXft.so.2.1:/usr/NX/lib/libX11.so:/usr/NX/lib/libXext.so:/usr/NX/lib/libXcomp.so:/usr/NX/lib/libXcompext.so:/usr/NX/lib/libXrender.so"
</pre>
</pre>


Dass /usr/NX/lib/libXft.so.2.1 aufgelistet ist, liegt bei dem Rechner, von dem ich hier die Konfiguration
Dass /usr/NX/lib/libXft.so.2.1 aufgelistet ist, liegt bei dem Rechner, von dem ich hier die Konfiguration
aufliste, daran, dass der sonst Probleme mit den fonts unter Qt hat.
aufliste, daran, dass der sonst Probleme mit den fonts unter Qt hat.
Line 222: Line 199:


== Konfiguration prĂŒfen ==
== Konfiguration prĂŒfen ==

Sie können auf einfache Weise prĂŒfen, ob die Konfiguration OK ist:
Sie können auf einfache Weise prĂŒfen, ob die Konfiguration OK ist:

nxloadconfig --check
nxloadconfig --check

Wenn alles OK ist, dann gibt dieses Skript nichts aus. Im Fehlerfall wird aufgelistet,
Wenn alles OK ist, dann gibt dieses Skript nichts aus. Im Fehlerfall wird aufgelistet,
welche Variable falsch gesetzt ist oder welcher Dienst nicht verfĂŒgbar ist.
welche Variable falsch gesetzt ist oder welcher Dienst nicht verfĂŒgbar ist.
Line 236: Line 210:


== Server initialisieren ==
== Server initialisieren ==

nxsetup --install --setup-nomachine-key --clean --purge
nxsetup --install --setup-nomachine-key --clean --purge
nxserver --status
nxserver --status

Letzteres sollte diese Meldung hervorrufen:
Letzteres sollte diese Meldung hervorrufen:

# nxserver --status
# nxserver --status
NX> 100 NXSERVER - Version 1.5.0-70 OS (GPL)
NX> 100 NXSERVER - Version 1.5.0-70 OS (GPL)
NX> 110 NX Server is running
NX> 110 NX Server is running
NX> 999 Bye
NX> 999 Bye

== Sonstiges ==

mkdir /etc/X11/xserver
cp /usr/share/doc/examples/SecurityPolicy /etc/X11/xserver/

hmm. weiss nicht mehr, warum -- ist wahrscheinlich nicht nötig.


== AufrÀumen ==
== AufrÀumen ==

Wenn Sie nach der Installation die Quelldateien nicht mehr benötigen:
Wenn Sie nach der Installation die Quelldateien nicht mehr benötigen:

cd /usr/NX
cd /usr/NX
/bin/rm *.tgz *.tar.gz *.deb
/bin/rm *.tgz *.tar.gz *.deb

Revision as of 09:59, 13 July 2007

Vorbemerkungen

Nachdem ich schon freenx-0.6.0 auf ubuntu dapper installiert habe, versuche ich mich jetzt mit freenx-0.7.0 und NX-2.1.0 auf debian etch.

Es ist zwar inzwischen schon NX-3.0.0 herausgekommen, das wird aber von freenx noch nicht sauber unterstĂŒtzt.

FreeNX 0.7.0 wurde am 07.07.2007 veröffentlicht (daher auch die Versionsnummer 0.7.0). NX 3.0.0 wird dabei explizit noch nicht unterstĂŒtzt.

Auf dieser Seite wird beschrieben, wie man diese Software installiert, indem man die Quellen holt und compiliert. Das ist sicher nicht bequem - funktioniert aber zumindest bei uns.

NX holen, compilieren, installieren

NX-2.1.0 - Quellen holen

mkdir /usr/NX
cd /usr/NX/
wget http://64.34.161.181/download/2.1.0/sources/nxproxy-2.1.0-3.tar.gz
wget http://64.34.161.181/download/2.1.0/sources/nxcomp-2.1.0-8.tar.gz
wget http://64.34.161.181/download/2.1.0/sources/nxcompext-2.1.0-5.tar.gz
wget http://64.34.161.181/download/2.1.0/sources/nxssh-2.1.0-2.tar.gz
wget http://64.34.161.181/download/2.1.0/sources/nxuexec-2.1.0-2.tar.gz 
wget http://64.34.161.181/download/2.1.0/sources/nxspool-2.1.0-3.tar.gz 
wget http://64.34.161.181/download/2.1.0/sources/nxsensor-2.1.0-3.tar.gz 
wget http://64.34.161.181/download/2.1.0/sources/nx-X11-2.1.0-3.tar.gz 
wget http://64.34.161.181/download/2.1.0/sources/nxwin-2.1.0-3.tar.gz 
wget http://64.34.161.181/download/2.1.0/sources/nxauth-2.1.0-2.tar.gz  
wget http://64.34.161.181/download/2.1.0/sources/nxviewer-2.1.0-12.tar.gz  
wget http://64.34.161.181/download/2.1.0/sources/nxdesktop-2.1.0-10.tar.gz
wget http://64.34.161.181/download/2.1.0/sources/nxscripts-2.1.0-5.tar.gz
wget http://64.34.161.181/download/2.1.0/sources/nxagent-2.1.0-20.tar.gz  
wget http://64.34.161.181/download/2.1.0/sources/nxesd-2.1.0-3.tar.gz
wget http://64.34.161.181/download/2.1.0/sources/nxkill-2.1.0-2.tar.gz  
wget http://64.34.161.181/download/2.1.0/sources/nxbuilder-2.1.0-5.tar.gz
wget http://64.34.161.181/download/2.1.0/sources/nxservice-2.1.0-11.tar.gz 
wget http://64.34.161.181/download/2.1.0/sources/nxcompsh-2.1.0-3.tar.gz 

oder alternativ - wenn die oben genannten Quellen nicht mehr verfĂŒgbar sein sollten - zumindest fĂŒr Leute mit Zugriff auf das KIP-AFS:

mkdir /usr/NX
cd /usr/NX/
cp /afs/kip/software/Linux/NomachineNX/src/nx-sources/*.tar.gz .

Quellen compilieren

DafĂŒr braucht man natĂŒrlich einen compiler und so weiter:

aptitude install make g++ gcc libjpeg62-dev libpng12-dev libssl-dev autoconf xorg-dev

Bei der Gelegenheit sollte man auch gleich noch ein paar weitere benötigte Pakete installieren:

aptitude install netcat expect smbfs
aptitude install icewm icewm-themes

Letzteres, wenn man die unten aufgefĂŒhrte Konfiguration verwenden möchte

Jetzt packen wir die Quell-Pakete aus und compilieren:

cd /usr/NX 
find . -name "*tar.gz" -exec tar -zxf "{}" \;  
 
cd /usr/NX/nx-X11/
make World

Das dauert eine Weile. Wenn der Prozess mit einem Fehler abschliessen sollte, dann versuchen Sie anhand der Fehlermeldung herauszubekommen, welches Paket noch fehlt. Wenn Sie das Paket ausfindig gemacht und installiert haben sollten, wieder 'make World' eingeben.

Jetzt noch ein paar zusÀtzliche Programme, die nicht automatisch erzeugt werden:

nxdesktop : fĂŒr Windows-Terminal-Sitzungen ĂŒber NX. Es scheint sich dabei um ein modifiziertes rdesktop zu handeln.

cd /usr/NX/nxdesktop/
./configure 
make
cp doc/rdesktop.1 doc/nxdesktop.1
make install

nxproxy : fĂŒr 'weitergeleitete' NX-Sitzungen?

cd /usr/NX/nxproxy/
./configure 
make  

nxviewer : fĂŒr VNC-Sitzungen ĂŒber NX.

cd /usr/NX/nxviewer

imake -I/usr/NX/nx-X11/config/cf/
cd libvncauth
imake -I/usr/NX/nx-X11/config/cf/
cd ../nxpasswd  
imake -I/usr/NX/nx-X11/config/cf/
ln -s /usr/NX/nx-X11/config .
cd ../nxviewer  
imake -I/usr/NX/nx-X11/config/cf/
ln -s /usr/NX/nx-X11/config .
ln -s /usr/NX/nx-X11/exports exports
cd ..
make

freenx-0.7.0

cd /usr/NX
wget http://download.berlios.de/freenx/freenx-0.7.0.tar.gz   
tar -xvzf freenx-0.7.0.tar.gz  
cd freenx-0.7.0
patch <gentoo-nomachine.diff
cd ..

Installation

Diese Beschreibung stammt im Wesentlichen aus dem README von freenx

NXPREFIX=/usr/NX
mkdir -p ${NXPREFIX}/lib ${NXPREFIX}/bin
cd ${NXPREFIX}

# Libraries
cp -a nx-X11/lib/X11/libX11.so* ${NXPREFIX}/lib
cp -a nx-X11/lib/Xext/libXext.so* ${NXPREFIX}/lib
cp -a nx-X11/lib/Xrender/libXrender.so* ${NXPREFIX}/lib
cp -a nxcomp/libXcomp.so* ${NXPREFIX}/lib
cp -a nxcompext/libXcompext.so* ${NXPREFIX}/lib

# binaries
cp -a nx-X11/programs/Xserver/nxagent ${NXPREFIX}/bin
cp -a nxproxy/nxproxy ${NXPREFIX}/bin
#cp -a nxdesktop/nxdesktop ${NXPREFIX}/bin
cp -a nxviewer/nxviewer/nxviewer ${NXPREFIX}/bin

# windows-keymaps for nxdesktop RDP-sessions and keyboard layout != us
cd ${NXPREFIX}/share
ln -s keymaps-windows keymaps

# scripts
cd ${NXPREFIX}
cp -a freenx*/nxnode ${NXPREFIX}/bin
cp -a freenx*/nxserver ${NXPREFIX}/bin
cp -a freenx*/nxsetup ${NXPREFIX}/bin
cp -a freenx*/nxkeygen ${NXPREFIX}/bin
cp -a freenx*/nxnode-login ${NXPREFIX}/bin
cp -a freenx*/nxloadconfig ${NXPREFIX}/bin
cp -a freenx*/nxprint ${NXPREFIX}/bin
cp -a freenx*/nxclient ${NXPREFIX}/bin
# config file

mkdir -p ${NXPREFIX}/etc/
mkdir -p /etc/nxserver
cp -a freenx*/node.conf.sample ${NXPREFIX}/etc/
cp -a freenx*/node.conf.sample /etc/nxserver/
cd /usr/bin

ln -s /usr/NX/bin/nxdesktop nxdesktop
ln -s /usr/NX/bin/nxkeygen nxkeygen
ln -s /usr/NX/bin/nxloadconfig nxloadconfig
ln -s /usr/NX/bin/nxnode nxnode
ln -s /usr/NX/bin/nxnode-login nxnode-login
ln -s /usr/NX/bin/nxproxy nxproxy
ln -s /usr/NX/bin/nxprint nxprint
ln -s /usr/NX/bin/nxserver nxserver
ln -s /usr/NX/bin/nxsetup nxsetup
ln -s /usr/NX/bin/nxclient nxclient  
ln -s /usr/NX/bin/nxviewer nxviewer
ln -s /usr/NX/bin/nxagent nxagent

cp /usr/lib/cups/backend/ipp /usr/lib/cups/backend/nxipp
chmod 755 /usr/lib/cups/backend/nxipp

nxclient installieren

Das nxclient-Paket bekommt man unter http://www.nomachine.com/download-client-linux.php

dpkg -i nxclient_2.1.0-17_i386.deb
rm /usr/bin/nxclient
cp /usr/NX/bin/nxclient /usr/bin/nxclient
cp -a /usr/NX/freenx*/nxclient /usr/NX/bin/

Auf diese Weise kann man den nxclient von NomachineNX benutzen und bei der suspend/terminate - Frage wird nxclient von freenx verwendet. Der nxclient von NomachineNX macht bei mir und der suspend/terminate - Frage manchmal Probleme mit Fonts, was zu unleserlichen Texten fĂŒhrt.

Konfiguration vorbereiten

/etc/nxserver/node.conf aus /etc/nxserver/node.conf.sample erzeugen. Ich selbst habe die folgenden Variablen hinzugefĂŒgt/gesetzt:

ENABLE_PASSDB_AUTHENTICATION="0"
NX_LOG_LEVEL=6
NOMACHINE_NX_HOME_DIR="/var/lib/nxserver/home"
NX_HOME_DIR="/var/lib/nxserver/home"
NX_SESS_DIR="/var/lib/nxserver/db"
USER_FAKE_HOME=/data/home/nx/$USER
DEFAULT_X_SESSION=/etc/X11/xdm/Xsession
COMMAND_START_KDE=/usr/bin/icewm-session
COMMAND_START_CDE=/usr/bin/icewm-session
COMMAND_XAUTH=/usr/bin/xauth
DEFAULT_FONT_PATH=$(echo $(grep -v '^ *#' /etc/X11/xorg.conf | grep FontPath | awk '{print $2}' | sed -r "s/^[\"']|[\"']$//g") | sed 's/ /,/g')
AGENT_EXTRA_OPTIONS_X=" -noshmem +kb -xkbdir /etc/X11/xkb -fp $DEFAULT_FONT_PATH"
AGENT_LIBRARY_PATH=/usr/NX/lib/
PROXY_LIBRARY_PATH=/usr/NX/lib/
APPLICATION_LIBRARY_PRELOAD="/usr/NX/lib/libXft.so.2.1:/usr/NX/lib/libX11.so:/usr/NX/lib/libXext.so:/usr/NX/lib/libXcomp.so:/usr/NX/lib/libXcompext.so:/usr/NX/lib/libXrender.so"

Dass /usr/NX/lib/libXft.so.2.1 aufgelistet ist, liegt bei dem Rechner, von dem ich hier die Konfiguration aufliste, daran, dass der sonst Probleme mit den fonts unter Qt hat.

Manchmal muss man die Konfiguration unter /usr/NX/etc/ anbieten. Mit Hilfe von

ln -s /etc/nxserver/node.conf /usr/NX/etc/node.conf

werden beide Möglichkeiten angeboten.

Konfiguration prĂŒfen

Sie können auf einfache Weise prĂŒfen, ob die Konfiguration OK ist:

nxloadconfig --check

Wenn alles OK ist, dann gibt dieses Skript nichts aus. Im Fehlerfall wird aufgelistet, welche Variable falsch gesetzt ist oder welcher Dienst nicht verfĂŒgbar ist.

Das können Sie auch jederzeit spÀter (z.B. nach einer KonfigurationsÀnderung) aufrufen.

Eventuell muss man erst 'nxsetup' (siehe nÀchsten Punkt) aufrufen, um manche der Fehlermeldungen verschwinden zu lassen.

Server initialisieren

nxsetup --install --setup-nomachine-key --clean --purge
nxserver --status 

Letzteres sollte diese Meldung hervorrufen:

# nxserver --status
NX> 100 NXSERVER - Version 1.5.0-70 OS (GPL)
NX> 110 NX Server is running
NX> 999 Bye

AufrÀumen

Wenn Sie nach der Installation die Quelldateien nicht mehr benötigen:

cd /usr/NX
/bin/rm *.tgz *.tar.gz *.deb
/bin/rm /usr/NX/lib/libjpeg* /usr/NX/lib/libpng* /usr/NX/lib/libcrypto*
/bin/rm -rf freenx-0.* ./nx*