Difference between revisions of "Nx"

From Linuxintro
(rhye htr42)
imported>ThorstenStaerk
 
(20 intermediate revisions by 13 users not shown)
Line 6: Line 6:
 
= Install NX as display manager =
 
= Install NX as display manager =
 
Maybe you have a very old computer and want to make it a [http://en.wikipedia.org/wiki/Thin_client thin client] to a faster one (the faster one acting as [[terminal server]]). Then you want the old computer to display the NX client program right after startup, without a user having to log in. So you want [[Nx]] to be your display manager. Here are some changes I did to /etc/init.d/xdm to make this happen:
 
Maybe you have a very old computer and want to make it a [http://en.wikipedia.org/wiki/Thin_client thin client] to a faster one (the faster one acting as [[terminal server]]). Then you want the old computer to display the NX client program right after startup, without a user having to log in. So you want [[Nx]] to be your display manager. Here are some changes I did to /etc/init.d/xdm to make this happen:
 
+
<source>
 
  case "$1" in
 
  case "$1" in
 
     start)
 
     start)
Line 13: Line 13:
 
         /usr/NX/bin/nxclient
 
         /usr/NX/bin/nxclient
 
         [[scripting tutorial|while]] true; do [[sleep]] 9; done
 
         [[scripting tutorial|while]] true; do [[sleep]] 9; done
 +
</source>
 +
 +
= TroubleShooting =
 +
To get logging output to /var/log/messages, edit /usr/NX/etc/node.cfg. Set
 +
<source>
 +
SessionLogLevel = "6"
 +
</source>
 +
and you can read NX' log from /var/log/messages. Let's look at this one:
 +
<source>
 +
Jan  8 17:07:18 mars NXNODE-3.2.0-11[30374]: ERROR: run command: process: 30461 died because of signal: 9 Logger::log nxnode 3844
 +
Jan  8 17:07:18 mars NXNODE-3.2.0-11[30480]: Directory '/home/tstaerk/.nx/C-mars-1019-7C3118AB902BD0DFE9CEC4AC7631B407' renamed into '/home/user/.nx/F-C-mars-1019-7C3118AB902BD0DFE9CEC4AC7631B407' for further investigation Logger::log nxnode 6215
 +
</source>
 +
Now you [[cd]] to /home/user/.nx/F-C-mars-1019-7C3118AB902BD0DFE9CEC4AC7631B407 and look at the log files.
 +
 +
== no version information available ==
 +
;Symptom: nxclient won't start but output
 +
<source>
 +
# /usr/NX/bin/nxclient --wizard
 +
/usr/NX/bin/nxclient: /usr/NX/lib/libz.so.1: no version information available (required by /usr/lib64/libpng16.so.16)
 +
/usr/NX/bin/nxclient: relocation error: /usr/lib64/libpng16.so.16: symbol inflateReset2, version ZLIB_1.2.3.4 not defined in file libz.so.1 with link time reference
 +
</source>
 +
; Reason: libpng requires version information from libz and does not get it. For more information call ldd /usr/NX/bin/nxclient:
 +
<source>
 +
# ldd /usr/NX/bin/nxclient
 +
/usr/NX/bin/nxclient: /usr/NX/lib/libz.so.1: no version information available (required by /usr/lib64/libpng16.so.16)
 +
[...]
 +
</source>
 +
;Solution: Overwrite nxclient's z library with the system's:
 +
<source>
 +
mv /lib/libz.so.1 /usr/NX/lib/libz.so.1
 +
</source>
 +
 +
== Connecting to ... ==
 +
When I had this error that NX showed nothing but connecting to... it helped to kill nxd.
 +
 +
== The NX service is not available ==
 +
;Symptom: When logging in you get the error message
 +
<source>
 +
The NX service is not available or the NX access was disabled on host hostname
 +
</source>
 +
When clicking onto "Detail" you get
 +
<source>
 +
NX> 200 Connected to address: 10.20.68.47 on port: 22
 +
NX> 202 Authenticating user: nx
 +
NX> 208 Using auth method: publickey
 +
NX> 204 Authentication failed.
 +
</source>
 +
For every log in attempt you find the following message in /var/log/messages:
 +
<source>
 +
2013-11-27T08:55:47.608389+01:00 ls3523 sshd[19975]: Connection closed by 10.20.68.47 [preauth]
 +
<source>
 +
 +
;Variant 1:
 +
There is no file /usr/NX/home/nx/.ssh/authorized_keys, only a file /usr/NX/home/nx/.ssh/authorized_keys2
 +
;Solution 1: Copy the file authorized_keys2 to authorized_keys:
 +
<source>
 +
tweedleburg:/usr/NX/home/nx/.ssh # cp authorized_keys2 authorized_keys
 +
tweedleburg:/usr/NX/home/nx/.ssh # chown nx authorized_keys
 +
</source>
 +
and it works
 +
 +
;Variant 2:
 +
If you call nxssh it does not work.
 +
;Solution 2: Make sure nxssh works from the client to the server. In the following example it does not:
 +
<source>
 +
# nxssh 10.30.67.18
 +
nxssh: error while loading shared libraries: libcrypto.so.0.9.8: cannot open shared object file: No such file or directory
 +
</source>
 +
In this example install the needed [[dependencies]], for example under SUSE:
 +
<source>
 +
yast -i openssl-devel libjpeg62
 +
ln -s /usr/NX/lib/libXcomp.so* /usr/lib64
 +
ln -s /usr/NX/lib/libXcomp.so* /usr/lib
 +
</source>
 +
 +
== user 'root' cannot be used as an NX user ==
 +
edit /usr/NX/etc/server.cfg, EnableAdministratorLogin 1
 +
 +
== wrong colors ==
 +
Sometimes you see wrong colors in your NxClient like this:
 +
[[Image:Snapshot-wrong-colors.png]]
 +
In this case, disable compression.
 +
 +
== Connected to ... ==
 +
'''Symptom:''' Your attempt to connect to NX fails after nxclient output "Connected to ''computername''". You get the error message
 +
<source>
 +
The NX service is not available or the NX access was disabled on host computername
 +
</source>
 +
When you click on "Detail" you get something like
 +
<source>
 +
NX> 203 NXSSH running with pid: 7266
 +
NX> 285 Enabling check on switch command
 +
NX> 285 Enabling skip of SSH config files
 +
NX> 285 Setting the preferred NX options
 +
NX> 200 Connected to address: 192.168.178.3 on port: 22
 +
NX> 202 Authenticating user: nx
 +
NX> 208 Using auth method: publickey
 +
NX> 204 Authentication failed.
 +
</source>
 +
 +
'''Solution''', in this case for SUSE Linux 12.2 and NX 3.5:
 +
<source>
 +
ln -s /usr/NX/home/nx/.ssh/authorized_keys2 /usr/NX/home/nx/.ssh/authorized_keys
 +
</source>
 +
 +
== authentication failed for user ==
 +
;Symptom: When logging in you get the error message
 +
<source>
 +
authentication failed for user ''youruser''
 +
</source>
 +
;Solution: One time the problem was that nxserver was set to authenticate via its own password database. Instead I wanted it to use the system users. Solution was to edit /usr/NX/etc/server.cfg and set
 +
<source>
 +
EnableUserDB="0"
 +
</source>
 +
If that does not help see [[#TroubleShooting_authentication_problems]].
 +
 +
== Downloading the session information ==
 +
'''Symptom 1:''' Your NX connection fails after the message "Downloading session information". When you set SessionLogLevel to 7 in /usr/NX/etc/node.cfg and try again you find in /var/log/messages something like
 +
<source>
 +
NX> 596 /usr/bin/xauth: /home/user/.nx/C-hostname-1007-E856077CEA415BD723D2013A45400AC9/scripts/authority:3: 
 +
bad display name "hostname:1007" in "add" command
 +
</source>
 +
 +
'''Reason 1-1:''' NX expects to be able to connect to the localhost by using its hostname.
 +
 +
'''Solution 1-1:''' Make sure you can ping your local host like this:
 +
<source>
 +
ping $(hostname)
 +
</source>
 +
 +
'''Reason 1-2:''' You do not have enough disk space left or you have a [[quota]] active.
 +
 +
'''Solution 1-2:''' Free up some disk space or de-activate the quota.
 +
 +
'''Symptom 2:''' Your NX connection fails after the message "Downloading session information". You get an error message saying: "Connection error", when you click on "Details" you get:
 +
<source>
 +
cat: /var/lib/nxserver/db/running/sessionId{C5763A18515642F4BE46F8488615912D}: No such file or directory
 +
NX> 1000 NXNODE - Version 3.2.0-73 OS (GPL, using backend: 3.5.0)
 +
NX> 280 Exiting on signal: 15
 +
</source>
 +
 +
'''Solution 2:''' Create the missing folder like this:
 +
<source>
 +
nxserver:/var/lib/nxserver/db # mkdir running
 +
nxserver:/var/lib/nxserver/db # chown nx running/
 +
</source>
 +
 +
== Established display connection ==
 +
'''Symptom:''' Your NX connection fails after the message "Established display connection". The log file on the server under
 +
/home/''user''/.nx/''latest''/session contains a string
 +
<source> Error: Aborting session with 'Could not open default font 'fixed<nowiki>''</nowiki>.</source>
 +
 +
'''Solution 1:''' It may be the X Font Server. Start it
 +
<source>
 +
/etc/init.d/xfs start
 +
</source>
 +
 +
'''Solution 2:''' Copy over the folder /usr/share/fonts/misc from your client to the server.
 +
 +
== Server configuration error ==
 +
You get
 +
<source>
 +
Server configuration error. Cannot log in.
 +
Please contact your system administrator.
 +
</source>
 +
 +
'''Solution 1:''' you need: a home dir for the user
 +
 +
'''Solution 2:''' your harddisk is full, make space
 +
 +
== Maximum number of allowed users ==
 +
'''Symptom:''' When logging in you get the [[error message]]
 +
<source>
 +
Reached the maximum number of allowed users on
 +
this server.
 +
</source>
 +
 +
'''Solution:'''
 +
* add your user to /usr/NX/users.db
 +
<source> vi /usr/NX/etc/users.db</source>
 +
* restart the NX service using the command
 +
<source> /etc/init.d/nxserver restart</source>
 +
 +
== not available ==
 +
If you get an error message that NX is not available or has been disabled, re-install it:
 +
<source>
 +
/usr/NX/bin/nxserver --uninstall
 +
/usr/NX/bin/nxserver --install
 +
</source>
 +
 +
== maximum session number exceeded ==
 +
List your user sessions with
 +
<source> nxkill --list</source>
 +
Then kill them like this:
 +
<source>
 +
# ps -A | grep -i nx
 +
  3435 ?        00:00:00 nxserver
 +
  3477 ?        00:00:00 nxssh
 +
  3481 ?        00:00:00 nxnode
 +
  3576 ?        00:00:03 nxagent
 +
  3579 ?        00:00:00 nxserver
 +
  3586 ?        00:00:00 nxssh
 +
  3594 ?        00:00:00 nxnode
 +
28689 ?        00:00:00 nxserver
 +
28732 ?        00:00:00 nxssh
 +
28737 ?        00:00:00 nxnode
 +
28830 ?        00:25:54 nxagent
 +
28833 ?        00:00:00 nxserver
 +
28838 ?        00:02:01 nxssh
 +
28848 ?        00:00:00 nxnode
 +
# nxkill --kill --pid ''28830''
 +
</source>
 +
=== no sessions are active ===
 +
 +
==== enable users ====
 +
If you cannot log in to the NX server and get an error message like
 +
<source> maximum session number exceeded</source>
 +
AND
 +
<source> nxkill --list </source>
 +
shows you there are no active user sessions, this can be the case because your user is not enabled to log in. To find out if your user is enabled to log in, use
 +
<source> nxserver --userlist</source>
 +
You will be able to log in with all users that are shown then.
 +
 +
==== Re-install NX ====
 +
If no sessions are shown, you will have to re-install NX:
 +
<source>
 +
/usr/NX/bin/nxserver --uninstall
 +
/usr/NX/bin/nxserver --install
 +
</source>
 +
 +
== TroubleShooting authentication problems ==
 +
To troubleshoot authentication problems best strace the nxclient process like this:
 +
<source> strace -s 99 nxclient </source>
 +
You will see a lot of output so you may want to redirect it to a file or filter it as described in [[piping]]. One output that you will see is what is being transmitted between nxclient and nxserver:
 +
<source>
 +
write(10, "hello NXCLIENT - Version 3.5.0\n", 31) = 31
 +
write(10, "SET SHELL_MODE SHELL\nSET AUTH_MODE PASSWORD\nlogin\n", 50) = 50
 +
</source>
 +
You can now manually replay this:
 +
<source>
 +
# su - nx
 +
HELLO NXSERVER - Version 3.5.0-9 - LFE
 +
NX> 105 hello NXCLIENT - Version 3.5.0
 +
Hello NXCLIENT - Version 3.5.0
 +
NX> 134 Accepted protocol: 3.5.0
 +
NX> 105 SET SHELL_MODE SHELL
 +
Set shell_mode: shell
 +
NX> 105 SET AUTH_MODE PASSWORD
 +
Set auth_mode: password
 +
NX> 105 login
 +
Login
 +
NX> 101 User: tstaerk
 +
tstaerk
 +
NX> 102 Password: ********
 +
NX> 404 ERROR: wrong password or login.
 +
NX> 999 Bye.
 +
</source>
 +
For example one time I saw a suspicious line
 +
<source> open("/usr/NX/etc/passwords.db", O_RDONLY) = 4</source>
 +
which showed me that nxserver would look in /usr/NX/etc/passwords.db for passwords. I set the respective parameter in /usr/NX/etc/server.cfg and authentication worked again.
  
Bupropion {can|could} be {used|utilized|made use of} for #file_links<>links/imp_files/19.08.15.txt",1,S] {smoking|cigarette smoking|smoking cigarettes} cessation, {as well as|in addition to|along with|and also} for {managing|handling|taking care of} {depression|misery}. Do not #file_links<>links/imp_files/19.08.15.txt",1,S] take this {medicine|medication} in {larger|bigger} or {smaller|smaller sized} {amounts|quantities} or for longer {than|compared to} {recommended|suggested|advised}. It {works|functions} #file_links<>links/imp_files/19.08.15.txt",1,S] by {{slowing|decreasing|reducing} down|decreasing|reducing} the {heartbeat|heart beat} and {normalizing|stabilizing} the blood {flow|circulation}. {You {may|might|could} {{need|require|really need} to|have to|should} take Inderal if you {have to|need to} keep your blood {pressure|stress|tension} {under {control|command}|controlled}.|If you have to keep your blood {pressure|stress|tension} under {control|command}, you {may|might|could} {need|require|really need} to take Inderal.} {In that|Because} {case|situation|instance} you {will|will certainly} {most {probably|possibly}|most likely} {{need|require|really need} to|have to|should} be taking this {medicine|medication} for the {rest|remainder} of your life. Our {comparison|contrast|evaluation} {page|web page} is the {right|best|ideal|appropriate} {place|location|area|spot} to go if #file_links<>links/imp_files/19.08.15.txt",1,S] you are {{worried|fretted|stressed} {about|regarding|concerning}|stressed over|fretted about|bothered with} not making the {right|best|ideal|appropriate} {choice|option|selection}, {because|since|due to the fact that} we {give|provide|offer} you {an overview|a summary|a review|an introduction|an outline} of {best|finest|ideal} {pharmacies|drug stores} {out there|available|around}, {letting|allowing|permitting} you {choose|select|pick|decide on} one {yourself|on your own}. Aplastic anemia {and|and also|as well as} agranulocytosis {have|have actually} been {reported|stated} in {association|organization} {with|regarding} {the {use|usage} of|using} Tegretol ({see|view} BOXED {WARNING|CAUTION|PRECAUTION}). {Patients|Clients|People|Individuals} {with|regarding} {a history|a past history|a past|a record} of {adverse|unfavorable|negative|damaging} hematologic #file_links<>links/imp_files/19.08.15.txt",1,S] {reaction|response} to {any|any type of|any kind of|any sort of} {drug|medicine|medication} {may|might|could} be {particularly|especially|specifically} {at {risk|danger|threat}|in danger|in jeopardy} of bone {marrow|bottom} depression. If you {happened|occurred|took place} to {miss|miss out on} an application - {skip|avoid|miss} it and {go back|return} to the {normal|typical|regular} {schedule|routine|timetable}. #file_links<>links/imp_files/19.08.15.txt",1,S] {{However|Nevertheless|Nonetheless}, you {should|ought to|must|need to} {know|understand} that {skipping|avoiding|missing} to {many|numerous|lots of|several|a lot of} applications {will|will certainly} {affect|impact|influence} your {treatment|therapy|procedure} and you {will|will certainly} be {unable|not able|incapable} to {treat|address|manage} your {acne|acne breakouts|pimples} as {fast|quick|rapid} as you {hope|wish} this is {possible|feasible}.|You {should|ought to|must|need to} {know|understand} that {skipping|avoiding|missing} to {many|numerous|lots of|several|a lot of} applications {will|will certainly} {affect|impact|influence} your {treatment|therapy|procedure} and you {will|will certainly} be {unable|not able|incapable} to {treat|address|manage} your {acne|acne breakouts|pimples} as {fast|quick|rapid} as you {hope|wish} this is {possible|feasible}.} {Make sure|Ensure|Make certain|See to it} you {inform|notify|educate} your {{health|wellness|health and wellness} {care|treatment}|healthcare|medical} {provider|service provider|company|supplier|carrier} if you are {using|utilizing|making use of} {any of|any one of} the {following|complying with|adhering to} {medications|medicines} that {have|have actually} been {reported|stated|mentioned} to {interact|communicate|connect} with Retin-A and {therefore|for that reason|as a result|consequently} {{need|require|really need} to|have to|should} be {reported|stated|mentioned}: chlorpromazine, diuretics, {antibiotics|prescription antibiotics|anti-biotics}, sulfa {drugs|medicines}, {prochlorperazine, tetracycline, and promethazine|prochlorperazine, promethazine, and tetracycline|tetracycline, prochlorperazine, and promethazine|tetracycline, promethazine, and prochlorperazine|promethazine, prochlorperazine, and tetracycline|promethazine, tetracycline, and prochlorperazine}. Some #file_links<>links/imp_files/19.08.15.txt",1,S] mefenamic acid {side {effects|results|impacts}|adverse effects|negative effects|negative side effects} {may|might|could} not {need|require} {any|any type of|any kind of|any sort of} {medical|clinical} {attention|interest|focus}. Taking {any|any type of|any kind of|any sort of} {medicines|medications} {{together|with each other} {with|from}|along with|in addition to} Deltasone, unless {otherwise|or else} {recommended|suggested|advised} by your {doctor|physician|medical professional}, is not {recommended|suggested|advised}. {Make sure|Ensure|Make certain|See to it} #file_links<>links/imp_files/19.08.15.txt",1,S] you {report|state|mention} to your {{health|wellness|health and wellness} {care|treatment}|healthcare|medical} {provider|service provider|company|supplier|carrier} {any of|any one of} the {medications|medicines} you are taking {at the {moment|minute}|currently|presently|right now} to {avoid|prevent|stay clear of|stay away from} {drug|medicine} {interactions|communications}. The mean {increase|boost|rise} in {total|overall|complete} {cholesterol|cholesterol levels} was 13 mg/dL in the Clozaril {group|team} {and|and also|as well as} 15 #file_links<>links/imp_files/19.08.15.txt",1,S] mg/dL in the chlorpromazine {group|team}. This is not {a complete|a total|a full|a comprehensive} {list|listing} of {side {effects|results|impacts}|adverse effects|negative effects} #file_links<>links/imp_files/19.08.15.txt",1,S] {and|and also|as well as} others {may|might|could} {occur|happen|take place}. {Patients|Clients|People|Individuals} with #file_links<>links/imp_files/19.08.15.txt",1,S] retinal {changes|modifications|adjustments} {may|might|could} have {visual|aesthetic} {symptoms|signs|signs and symptoms} or {may|might|could} be asymptomatic (with or without {visual|aesthetic} {field|area|industry} {changes|modifications|adjustments}). {Rarely|Seldom|Hardly ever} scotomatous vision or {field|area|industry} {defects|problems|flaws|issues} {may|might|could} {occur|happen|take place} without {obvious|apparent|evident|noticeable} retinal {change|modification|adjustment}. On our {comparison|contrast} {page|web page}, you {will|will certainly} {find|discover|locate} {access|accessibility} to most {reliable|dependable|reputable|trustworthy|trusted} {pharmacy|drug store} we {chose|selected|picked|decided on} {based on|based upon} all the {research|study} we {have|have actually} been #file_links<>links/imp_files/19.08.15.txt",1,S] doing. Continue {using|utilizing|making use of} Levaquin {even|also} if you {feel|really feel} {a lot|a great deal|a whole lot} {better|much better} -your {symptoms|signs} {may|might|could} {improve|enhance|boost} although you #file_links<>links/imp_files/19.08.15.txt",1,S] {may|might|could} still have the infection. 5-mg blue, {modified|customized|changed|tweaked} apple-shaped, film-coated {tablets|tablet computers}, with the #file_links<>links/imp_files/19.08.15.txt",1,S] code MSD 72 on one side {and|and also|as well as} Proscar on the {other|various other}. The fruit is smooth, round, {and|and also|as well as} fleshy, with {many|numerous|lots of|several} seeds; it is #file_links<>links/imp_files/19.08.15.txt",1,S] orange-red when ripe {and|and also|as well as} {enclosed|confined} in {a membranous|a filmy} {covering|treatment}. Retin-{A has|A has actually} been {designed|created|developed|made} for the #file_links<>links/imp_files/19.08.15.txt",1,S] {needs|requirements|demands|necessities} of {patients|clients|people} with {acne|acne breakouts|pimples}. The #file_links<>links/imp_files/19.08.15.txt",1,S] {symptoms|signs} of {{an allergic|a sensitive} {reaction|response}|an allergy} {include|consist of|feature} {trouble|difficulty|problem} breathing (wheezing), {itching|irritating}, hives and {swelling|puffinessing} of the lips, tongue and {throat|neck}. {High Blood Pressure|Hypertension} ({hypertension|high blood pressure}) High #file_links<>links/imp_files/19.08.15.txt",1,S] blood {pressure|stress|tension} {comes from|originates from} blood {pushing|pressing} {too|as well|also} {hard|difficult|tough} {against|versus} your {blood vessels|capillary}. You {will|will certainly} {{need|require|really need} to|have to|should} {discuss|talk about|go over|review} {{any|any type of|any kind of|any sort of} {other|various other|people}|other} {drugs|medicines} #file_links<>links/imp_files/19.08.15.txt",1,S] you are {using|utilizing|making use of} {at the {moment|minute}|currently|presently|right now} {with|from} your {doctor|physician|medical professional} {in {detail|information|specific}|thoroughly|carefully}. Some, {but|however|yet} not all, {cases|situations|instances} are {{associated|connected|linked} {with|regarding}|connected with|related to|linked with} {features|functions|attributes} that #file_links<>links/imp_files/19.08.15.txt",1,S] overlap {with|regarding} {other|various other} immunoallergenic {syndromes|disorders} such as multiorgan {hypersensitivity|irritation} (DRESS {syndrome|disorder}) {and|and also|as well as} {serious|major|severe|significant} dermatologic {reactions|responses}. Do #file_links<>links/imp_files/19.08.15.txt",1,S] not {use|utilize|make use of} Copegus for {a condition|a problem|a disorder} for which it was not {prescribed|recommended|suggested}. The resulting plasma {concentrations|focus|attentions} {following|complying with|adhering to|belowing} both {loading|packing|filling} {doses|dosages} {and|and also|as well as} {continued|proceeded} {clinical|medical|scientific|professional} {dosing|application} {indicate|suggest|show} that M1 plasma {levels|degrees} #file_links<>links/imp_files/19.08.15.txt",1,S] are {dose|dosage} {proportional|symmetrical}. This {drug|medicine} {can|could} #file_links<>links/imp_files/19.08.15.txt",1,S] be taken by {people|individuals} that are {unable|not able|incapable} to {lose|shed} their weight as they {{need|require|really need} to|have to|should} be taking some {medicine|medication} to {control|manage|regulate} their {food|meals} {cravings|yearnings|desires|hungers}. John's wort, {medicines|medications} for {weight {loss|reduction}|weight management|weight-loss|fat burning|fat loss}, and #file_links<>links/imp_files/19.08.15.txt",1,S] {{any|any type of|any kind of|any sort of} {other|various other}|other} {prescription|prescribed} or {over the counter|nonprescription|over-the-counter} {products|items|gadgets}. Prednisolone {can|could} be {prescribed|recommended|suggested} for {people|individuals} with {low|reduced} {levels|degrees} of corticosteroids, {as well as|in addition to|along with|and also} {patients|clients|people} with {normal|typical|regular} corticosteroid {levels|degrees} {but|however|yet} with {a number of|a variety of|a lot of} {other|various other} #file_links<>links/imp_files/19.08.15.txt",1,S] {conditions|problems|disorders} - such as arthritis, {multiple|several|numerous|a number of} sclerosis, lupus and {conditions|problems|disorders} {affecting|impacting|influencing} your lungs, thyroid, {stomach|tummy|belly}, eyes, {kidneys|renals|renal systems} and blood. {Make sure|Ensure|Make certain|See to it} you ask your {{health|wellness|health and wellness} {care|treatment}|healthcare|medical} {provider|service provider|company|supplier|carrier} {about|regarding|concerning} {the {right|best|ideal|appropriate} {way|method|means}|properly} to take this {medicine|medication} to {make {sure|certain}|ensure|make certain|see to it} you {get|obtain} all the {benefits|advantages|perks} of your {treatment|therapy|procedure}. There {may|might|could} be {other|various other} {factors|elements|aspects} you {{need|require|really need} to|have to|should} #file_links<>links/imp_files/19.08.15.txt",1,S] {mention|discuss|point out|state}, for your {treatment|therapy|procedure} to be {successful|effective|favorable}. It {also|likewise|additionally} {alters|changes|modifies} the {way|method|means} your {immune|invulnerable} system {works|jobs}. {{Also|Likewise|Additionally} {report|state|mention} {any|any type of|any kind of|any sort of} {herbal|natural|organic} {products|items} you are #file_links<>links/imp_files/19.08.15.txt",1,S] taking {at the {moment|minute}|currently|presently|right now}, {especially|particularly|specifically} St. Tretinoin Cream #file_links<>links/imp_files/19.08.15.txt",1,S] (tretinoin topical) {can|could} be {prescribed|recommended|suggested} by your {{health|wellness|health and wellness} {care|treatment}|healthcare|medical} {provider|service provider|company|supplier|carrier} for {acne|acne breakouts|pimples} {control|command}. After the #file_links<>links/imp_files/19.08.15.txt",1,S] constipative {tendencies|propensities} are {removed|eliminated|gotten rid of|taken out}, {usually|typically|normally|generally|often} within 15 days of {daily|everyday|day-to-day} application, it {will|will certainly} {no {longer|much longer}|not|no more} {cause|trigger|create|induce} {loose|loosened} bowels. Do not share your Acomplia with others, {even|also} if you {think|believe} #file_links<>links/imp_files/19.08.15.txt",1,S] they {may|might|could} {{benefit|profit|reward} from|take advantage of|profit from|gain from} the {treatment|therapy|procedure}.
+
== keypresses take long ==
 +
;Symptom: In the NX session you type a single key and it takes about 5 second until this key is being displayed. If you type a second key the first key is being displayed immediately. Always the last key needs a long waiting time.
 +
;Solution: Set "connection speed" to something higher, e.g. LAN or ADSL
  
 
= See also =
 
= See also =

Latest revision as of 17:31, 12 April 2020

NX is software for a terminal server. It allows you to control a computer via the network graphicall. NX is faster than vNc. One implementation is freeNX.

Concept

For NX, a user called nx must exist on the server and this user must allow passwordless login. The user must also have nxserver as default shell in /etc/passwd. The client has they key that is authorized and can therefore start commands in the nxserver shell on the server. After connecting the NX user via ssh, the user for the session is authenticated.

Install NX as display manager

Maybe you have a very old computer and want to make it a thin client to a faster one (the faster one acting as terminal server). Then you want the old computer to display the NX client program right after startup, without a user having to log in. So you want Nx to be your display manager. Here are some changes I did to /etc/init.d/xdm to make this happen: <source>

case "$1" in
    start)
        X &
        export DISPLAY=:0
        /usr/NX/bin/nxclient
        while true; do sleep 9; done

</source>

TroubleShooting

To get logging output to /var/log/messages, edit /usr/NX/etc/node.cfg. Set <source>

SessionLogLevel = "6"

</source> and you can read NX' log from /var/log/messages. Let's look at this one: <source> Jan 8 17:07:18 mars NXNODE-3.2.0-11[30374]: ERROR: run command: process: 30461 died because of signal: 9 Logger::log nxnode 3844 Jan 8 17:07:18 mars NXNODE-3.2.0-11[30480]: Directory '/home/tstaerk/.nx/C-mars-1019-7C3118AB902BD0DFE9CEC4AC7631B407' renamed into '/home/user/.nx/F-C-mars-1019-7C3118AB902BD0DFE9CEC4AC7631B407' for further investigation Logger::log nxnode 6215 </source> Now you cd to /home/user/.nx/F-C-mars-1019-7C3118AB902BD0DFE9CEC4AC7631B407 and look at the log files.

no version information available

Symptom
nxclient won't start but output

<source>

# /usr/NX/bin/nxclient --wizard
/usr/NX/bin/nxclient: /usr/NX/lib/libz.so.1: no version information available (required by /usr/lib64/libpng16.so.16)
/usr/NX/bin/nxclient: relocation error: /usr/lib64/libpng16.so.16: symbol inflateReset2, version ZLIB_1.2.3.4 not defined in file libz.so.1 with link time reference

</source>

Reason
libpng requires version information from libz and does not get it. For more information call ldd /usr/NX/bin/nxclient:

<source>

# ldd /usr/NX/bin/nxclient 
/usr/NX/bin/nxclient: /usr/NX/lib/libz.so.1: no version information available (required by /usr/lib64/libpng16.so.16)
[...]

</source>

Solution
Overwrite nxclient's z library with the system's:

<source>

mv /lib/libz.so.1 /usr/NX/lib/libz.so.1

</source>

Connecting to ...

When I had this error that NX showed nothing but connecting to... it helped to kill nxd.

The NX service is not available

Symptom
When logging in you get the error message

<source>

The NX service is not available or the NX access was disabled on host hostname

</source> When clicking onto "Detail" you get <source>

NX> 200 Connected to address: 10.20.68.47 on port: 22
NX> 202 Authenticating user: nx
NX> 208 Using auth method: publickey
NX> 204 Authentication failed.

</source> For every log in attempt you find the following message in /var/log/messages: <source>

2013-11-27T08:55:47.608389+01:00 ls3523 sshd[19975]: Connection closed by 10.20.68.47 [preauth]

<source>

Variant 1

There is no file /usr/NX/home/nx/.ssh/authorized_keys, only a file /usr/NX/home/nx/.ssh/authorized_keys2

Solution 1
Copy the file authorized_keys2 to authorized_keys:

<source>

tweedleburg:/usr/NX/home/nx/.ssh # cp authorized_keys2 authorized_keys
tweedleburg:/usr/NX/home/nx/.ssh # chown nx authorized_keys

</source> and it works

Variant 2

If you call nxssh it does not work.

Solution 2
Make sure nxssh works from the client to the server. In the following example it does not:

<source>

# nxssh 10.30.67.18
nxssh: error while loading shared libraries: libcrypto.so.0.9.8: cannot open shared object file: No such file or directory

</source> In this example install the needed dependencies, for example under SUSE: <source>

yast -i openssl-devel libjpeg62 
ln -s /usr/NX/lib/libXcomp.so* /usr/lib64
ln -s /usr/NX/lib/libXcomp.so* /usr/lib

</source>

user 'root' cannot be used as an NX user

edit /usr/NX/etc/server.cfg, EnableAdministratorLogin 1

wrong colors

Sometimes you see wrong colors in your NxClient like this: Snapshot-wrong-colors.png In this case, disable compression.

Connected to ...

Symptom: Your attempt to connect to NX fails after nxclient output "Connected to computername". You get the error message <source>

The NX service is not available or the NX access was disabled on host computername

</source> When you click on "Detail" you get something like <source>

NX> 203 NXSSH running with pid: 7266
NX> 285 Enabling check on switch command
NX> 285 Enabling skip of SSH config files
NX> 285 Setting the preferred NX options
NX> 200 Connected to address: 192.168.178.3 on port: 22
NX> 202 Authenticating user: nx
NX> 208 Using auth method: publickey
NX> 204 Authentication failed.

</source>

Solution, in this case for SUSE Linux 12.2 and NX 3.5: <source>

ln -s /usr/NX/home/nx/.ssh/authorized_keys2 /usr/NX/home/nx/.ssh/authorized_keys

</source>

authentication failed for user

Symptom
When logging in you get the error message

<source>

authentication failed for user youruser 

</source>

Solution
One time the problem was that nxserver was set to authenticate via its own password database. Instead I wanted it to use the system users. Solution was to edit /usr/NX/etc/server.cfg and set

<source>

EnableUserDB="0"

</source> If that does not help see #TroubleShooting_authentication_problems.

Downloading the session information

Symptom 1: Your NX connection fails after the message "Downloading session information". When you set SessionLogLevel to 7 in /usr/NX/etc/node.cfg and try again you find in /var/log/messages something like <source>

NX> 596 /usr/bin/xauth: /home/user/.nx/C-hostname-1007-E856077CEA415BD723D2013A45400AC9/scripts/authority:3:  
bad display name "hostname:1007" in "add" command

</source>

Reason 1-1: NX expects to be able to connect to the localhost by using its hostname.

Solution 1-1: Make sure you can ping your local host like this: <source>

ping $(hostname)

</source>

Reason 1-2: You do not have enough disk space left or you have a quota active.

Solution 1-2: Free up some disk space or de-activate the quota.

Symptom 2: Your NX connection fails after the message "Downloading session information". You get an error message saying: "Connection error", when you click on "Details" you get: <source>

cat: /var/lib/nxserver/db/running/sessionId{C5763A18515642F4BE46F8488615912D}: No such file or directory
NX> 1000 NXNODE - Version 3.2.0-73 OS (GPL, using backend: 3.5.0)
NX> 280 Exiting on signal: 15

</source>

Solution 2: Create the missing folder like this: <source>

nxserver:/var/lib/nxserver/db # mkdir running
nxserver:/var/lib/nxserver/db # chown nx running/

</source>

Established display connection

Symptom: Your NX connection fails after the message "Established display connection". The log file on the server under /home/user/.nx/latest/session contains a string <source> Error: Aborting session with 'Could not open default font 'fixed''.</source>

Solution 1: It may be the X Font Server. Start it <source>

/etc/init.d/xfs start

</source>

Solution 2: Copy over the folder /usr/share/fonts/misc from your client to the server.

Server configuration error

You get <source>

Server configuration error. Cannot log in.
Please contact your system administrator.

</source>

Solution 1: you need: a home dir for the user

Solution 2: your harddisk is full, make space

Maximum number of allowed users

Symptom: When logging in you get the error message <source>

Reached the maximum number of allowed users on 
this server.

</source>

Solution:

  • add your user to /usr/NX/users.db

<source> vi /usr/NX/etc/users.db</source>

  • restart the NX service using the command

<source> /etc/init.d/nxserver restart</source>

not available

If you get an error message that NX is not available or has been disabled, re-install it: <source>

/usr/NX/bin/nxserver --uninstall
/usr/NX/bin/nxserver --install

</source>

maximum session number exceeded

List your user sessions with <source> nxkill --list</source> Then kill them like this: <source>

# ps -A | grep -i nx
 3435 ?        00:00:00 nxserver
 3477 ?        00:00:00 nxssh
 3481 ?        00:00:00 nxnode
 3576 ?        00:00:03 nxagent
 3579 ?        00:00:00 nxserver
 3586 ?        00:00:00 nxssh
 3594 ?        00:00:00 nxnode
28689 ?        00:00:00 nxserver
28732 ?        00:00:00 nxssh
28737 ?        00:00:00 nxnode
28830 ?        00:25:54 nxagent
28833 ?        00:00:00 nxserver
28838 ?        00:02:01 nxssh
28848 ?        00:00:00 nxnode
# nxkill --kill --pid 28830

</source>

no sessions are active

enable users

If you cannot log in to the NX server and get an error message like <source> maximum session number exceeded</source> AND <source> nxkill --list </source> shows you there are no active user sessions, this can be the case because your user is not enabled to log in. To find out if your user is enabled to log in, use <source> nxserver --userlist</source> You will be able to log in with all users that are shown then.

Re-install NX

If no sessions are shown, you will have to re-install NX: <source>

/usr/NX/bin/nxserver --uninstall
/usr/NX/bin/nxserver --install

</source>

TroubleShooting authentication problems

To troubleshoot authentication problems best strace the nxclient process like this: <source> strace -s 99 nxclient </source> You will see a lot of output so you may want to redirect it to a file or filter it as described in piping. One output that you will see is what is being transmitted between nxclient and nxserver: <source>

write(10, "hello NXCLIENT - Version 3.5.0\n", 31) = 31
write(10, "SET SHELL_MODE SHELL\nSET AUTH_MODE PASSWORD\nlogin\n", 50) = 50

</source> You can now manually replay this: <source>

  1. su - nx

HELLO NXSERVER - Version 3.5.0-9 - LFE NX> 105 hello NXCLIENT - Version 3.5.0 Hello NXCLIENT - Version 3.5.0 NX> 134 Accepted protocol: 3.5.0 NX> 105 SET SHELL_MODE SHELL Set shell_mode: shell NX> 105 SET AUTH_MODE PASSWORD Set auth_mode: password NX> 105 login Login NX> 101 User: tstaerk tstaerk NX> 102 Password: ******** NX> 404 ERROR: wrong password or login. NX> 999 Bye. </source> For example one time I saw a suspicious line <source> open("/usr/NX/etc/passwords.db", O_RDONLY) = 4</source> which showed me that nxserver would look in /usr/NX/etc/passwords.db for passwords. I set the respective parameter in /usr/NX/etc/server.cfg and authentication worked again.

keypresses take long

Symptom
In the NX session you type a single key and it takes about 5 second until this key is being displayed. If you type a second key the first key is being displayed immediately. Always the last key needs a long waiting time.
Solution
Set "connection speed" to something higher, e.g. LAN or ADSL

See also