Installed openSUSE-12.1 on 86-year old mother's PC

Hi
I use nomachine and don’t have X running on my SLES server, desktop is
selected via the client.


Cheers Malcolm °¿° (Linux Counter #276890)
SUSE Linux Enterprise Desktop 11 (x86_64) Kernel 3.0.31-0.9-default
up 1 day 13:45, 3 users, load average: 0.13, 0.18, 0.22
CPU Intel i5 CPU M520@2.40GHz | Intel Arrandale GPU

Yes, but I select xdm in the client, not the desktop. In this case a session manager has to be running for nomachine, but not for FreeNX. If you open a desktop directly, they probably both do the same thing.

I had not tried to install nomachine nx on 12.1 before (its worked easily for me on previous openSUSE versions). I gave it a try on my mother’s PC (and my laptop, both running 12.1), and nx installed, but I kept obtaining an authentication error every time I attempted to connect (from a 12.1 PC to a 12.1 PC). I’ve not encountered this before, so there is something new here, and I’m likely making the same systemic error on both PCs.

These are the sort of messages from the /var/log/messages file of the server PC:


Jun 14 12:55:52 mothercpu NXSERVER-3.5.0-11[3977]: Selected node host:localhost with port:22 'main::selectNode'
Jun 14 12:55:52 mothercpu NXSERVER-3.5.0-11[3977]: Current selected node: localhost is in status: running  'main::selectNode'
Jun 14 12:55:52 mothercpu NXSERVER-3.5.0-11[3977]: Selected session type: unix-kde allowed in the profile of user: cpumother 'NXShell::Static'
Jun 14 12:55:52 mothercpu sshd[4017]: Accepted publickey for cpumother from ::1 port 35851 ssh2
Jun 14 12:55:52 mothercpu systemd-logind[971]: New session 3 of user cpumother.
Jun 14 12:55:56 mothercpu NXNODE-3.5.0-9[4021]: ERROR: NX> 596 ERROR: NXNODE Ver. 3.5.0-9  (Error id e326551) [e326551] Logger::log nxnode 2963
Jun 14 12:55:56 mothercpu NXNODE-3.5.0-9[4021]: ERROR: NX> 596 ERROR: create session: run commands [e326551] Logger::log nxnode 2963
Jun 14 12:55:56 mothercpu NXNODE-3.5.0-9[4021]: ERROR: NX> 596 ERROR: execution of last command failed [e326551] Logger::log nxnode 2963
Jun 14 12:55:56 mothercpu NXNODE-3.5.0-9[4021]: ERROR: NX> 596 last command: /usr/bin/xauth -v -f /home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/authority source /home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/scripts/authority [e326551] Logger::log nxnode 2963
Jun 14 12:55:56 mothercpu NXNODE-3.5.0-9[4021]: ERROR: NX> 596 exit value: 1 [e326551] Logger::log nxnode 2963
Jun 14 12:55:56 mothercpu NXNODE-3.5.0-9[4021]: ERROR: NX> 596 stdout: Using authority file /home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/authority [e326551] Logger::log nxnode 2963
Jun 14 12:55:56 mothercpu NXNODE-3.5.0-9[4021]: ERROR: NX> 596 Writing authority file /home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/authority [e326551] Logger::log nxnode 2963
Jun 14 12:55:56 mothercpu NXNODE-3.5.0-9[4021]: ERROR: NX> 596 stderr: /usr/bin/xauth:  file /home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/authority does not exist [e326551] Logger::log nxnode 2963
Jun 14 12:55:56 mothercpu NXNODE-3.5.0-9[4021]: ERROR: NX> 596 /usr/bin/xauth: /home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/scripts/authority:3:  bad display name "mothercpu:1001" in "add" command [e326551] Logger::log nxnode 2963
Jun 14 12:55:56 mothercpu NXNODE-3.5.0-9[4021]: ERROR: NX> 596 . [e326551] Logger::log nxnode 2963
Jun 14 12:55:56 mothercpu NXNODE-3.5.0-9[4021]: ERROR: NX> 596 init: stdin arguments: user=cpumother,userip=71%2e17%2e14%2e108,uniqueid=E3BE5EB0A461CAE3BCB49816D5C5742A,display=1001,node_number=0,server_name=mothercpu,license=%28None%29,subscriptionid=None,productid=LFE,reconnect=1,balance_host=172%2e16%2e1%2e63,encryption_mode=3,connection=local,images=64M,cache=16M,client=linux,media=0,backingstore=1,encryption=1,strict=0,clipboard=both,shpix=1,rootless=0,composite=1,session=moms%2dpc,shmem=1,type=unix%2dkde,virtualdesktop=1,screeninfo=1440x855x24%2brender,keyboard=pc102%2fus,geometry=1440x855,link=adsl Logger::log nxnode 2963
Jun 14 12:55:57 mothercpu NXNODE-3.5.0-9[4021]: getting agent pid: cannot read pid file '/home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/pids/agent'. Exiting. main::get_agent_pid nxnode 9042
Jun 14 12:55:57 mothercpu NXNODE-3.5.0-9[4021]: directory '/home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A' moved into '/home/cpumother/.nx/F-C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A' for investigation Logger::log nxnode 9099
Jun 14 12:55:57 mothercpu systemd-logind[971]: Removed session 3.
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) Warning: Permanently added 'localhost' (RSA) to the list of known hosts.#015
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NX> 596 ERROR: NXNODE Ver. 3.5.0-9  (Error id e326551)
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NX> 596 ERROR: create session: run commands
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NX> 596 ERROR: execution of last command failed
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NX> 596 last command: /usr/bin/xauth -v -f /home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/authority source /home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/scripts/authority
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NX> 596 exit value: 1
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NX> 596 stdout: Using authority file /home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/authority
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NX> 596 Writing authority file /home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/authority
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NX> 596 stderr: /usr/bin/xauth:  file /home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/authority does not exist
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NX> 596 /usr/bin/xauth: /home/cpumother/.nx/C-mothercpu-1001-E3BE5EB0A461CAE3BCB49816D5C5742A/scripts/authority:3:  bad display name "mothercpu:1001" in "add" command
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NX> 596 init: stdin arguments: user=cpumother,userip=71%2e17%2e14%2e108,uniqueid=E3BE5EB0A461CAE3BCB49816D5C5742A,display=1001,node_number=0,server_name=mothercpu,license=%28None%29,subscriptionid=None,productid=LFE,reconnect=1,balance_host=172%2e16%2e1%2e63,encryption_mode=3,connection=local,images=64M,cache=16M,client=linux,media=0,backingstore=1,encryption=1,strict=0,clipboard=both,shpix=1,rootless=0,composite=1,session=moms%2dpc,shmem=1,type=unix%2dkde,virtualdesktop=1,screeninfo=1440x855x24%2brender,keyboard=pc102%2fus,geometry=1440x855,link=adsl
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NXNodeExec::exec('startsession', 'user=cpumother&userip=71%2e17%2e14%2e108&uniqueid=E3BE5EB0A461CAE3BCB...', 'localhost', 22) called at handlers/nxserver.pl line 3582
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NXShell::handler_session_start('--link="adsl" --backingstore="1" --encryption="1" --cache="16M" ...') called at NXShell.pm line 373
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NXShell::handle_command('startsession', '--link="adsl" --backingstore="1" --encryption="1" --cache="16M" ...') called at NXShell.pm line 145
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) NXShell::run() called at nxserver.pl line 4497
Jun 14 12:55:57 mothercpu NXSERVER-3.5.0-11[3977]: ERROR: (exception id 3AAFCB87) eval {...} called at nxserver.pl line 4456
Jun 14 12:55:57 mothercpu systemd-logind[971]: Removed session 1.

I surfed our forum, and noted a similar thread where a user had the same problem with the nomachine version … but their solution was to install the freenx version, which is not my intent/desire at this time.

Fortunately vnc works, and I’ll stick with that for now.

Here’s what I have when I log in to a nomachine server (with 12.1 on both client and server):

Jun 14 18:11:57 kamala sshd[2256]: Accepted publickey for nx from 192.168.101.9 port 49732 ssh2
Jun 14 18:11:57 kamala systemd-logind[1139]: New session 480 of user nx.
Jun 14 18:11:57 kamala sshd[2329]: Accepted keyboard-interactive/pam for agnelo from 127.0.0.1 port 54982 ssh2
Jun 14 18:11:57 kamala systemd-logind[1139]: New session 481 of user agnelo.
Jun 14 18:11:57 kamala NXSERVER-3.5.0-9[2259]: User 'agnelo' logged in from '192.168.101.9'. 'NXLogin::set'
Jun 14 18:11:58 kamala systemd-logind[1139]: Removed session 481.
Jun 14 18:12:01 kamala NXSERVER-3.5.0-9[2259]: Selected node host:localhost with port:9123 'main::selectNode'
Jun 14 18:12:01 kamala NXSERVER-3.5.0-9[2259]: Current selected node: localhost is in status: running  'main::selectNode'
Jun 14 18:12:01 kamala NXSERVER-3.5.0-9[2259]: Selected session type: unix-xdm allowed in the profile of user: agnelo 'NXShell::Static'
Jun 14 18:12:03 kamala NXSERVER-3.5.0-9[2259]: ERROR: nxssh process exited with '255' 'NXNodeExec::exec'
Jun 14 18:12:03 kamala sshd[2342]: Accepted keyboard-interactive/pam for agnelo from 127.0.0.1 port 46120 ssh2
Jun 14 18:12:03 kamala systemd-logind[1139]: New session 482 of user agnelo.
Jun 14 18:12:06 kamala su: (to nobody) root on none
Jun 14 18:12:06 kamala NXNODE-3.5.0-7[2346]: Using port '1002' on node 'kamala' for session 'unix-xdm'. Logger::log nxnode 6243
Jun 14 18:12:06 kamala NXNODE-3.5.0-7[2346]: Using host from available host list: '192.168.101.15'. Logger::log nxnode 6244
Jun 14 18:12:06 kamala NXSERVER-3.5.0-9[2259]: Session 'F51FDBE3D0F4CA08D2CA9F3896304B4C' started by user 'agnelo'. 'NXShell::handler_session_start'
Jun 14 18:12:06 kamala NXSERVER-3.5.0-9[2259]: ERROR: run command: no child process with pid 2338 Logger::log nxserver 3131
Jun 14 18:12:06 kamala NXSERVER-3.5.0-9[2259]: User 'agnelo' from '192.168.101.9' logged out. 'NXLogin::reset'

Are you trying to log in from and to the same local machine. I notice that you’re using IPv6 loopback address.

Also your nxserver and nxnode versions are newer than mine. And I don’t understand why you’re trying to open a session as another user than ‘nx’. … but I might be missing something too. Actually in my case, FreeNX takes care of the publickey and forwards the connection to the nomachine server.

On 2012-06-14 14:36, please try again wrote:
>
> And it doesn’t explain what set the bootflag on a primary partition (the
> extended one is a primary) without removing it from another primary.
> Whatever did that has a bug.

Plain fdisk does that. You can set active all four partitions with it.


Cheers / Saludos,

Carlos E. R.
(from 11.4 x86_64 “Celadon” at Telcontar)

On 2012-06-14 17:16, oldcpu wrote:
> I removed the /dev/sda1 boot flag, and the PC still starts ok :slight_smile:
> Here is the latest fdisk:

It would be interesting to run the experiment (not with your mother
computer) of setting two active partitions, or more, and see which boots
with openSUSE generic MBR code. My guess is it boots the last one,
whichever it is.


Cheers / Saludos,

Carlos E. R.
(from 11.4 x86_64 “Celadon” at Telcontar)

How many times did I explain that already? And why do I suggest to use sfdisk (or findgrub -a) rather than fdisk to set the bootflag? When I said “whatever did that”, it obviously didn’t include fdisk with user intervention. So I should have said “whatever did that in your back has a bug”, meaning some setup or program or something, but not plain fdisk - which wouldn’t be a bug in this case but just a user mistake, although one may still wonder why fdisk allows that (sfdisk doesn’t).

Yes, it would be interesting - I would say even more than interesting. I don’t play with generic MBR - except to help others or improve and test findgrub - but this is the kind of info I would like to know. So if someone here uses generic MBR and has 3 OSes (such as Windows and 2 Linux for example), each of them installed in a primary partition, or 2 OSes in a primary partition and the Grub boot loader in the extended partition, he could do the following test and provide us with a very valuable info:

  • activate all four primary partitions (using fdisk) and see what boots.
  • activate all 3 bootable partitions and see which one boots.
  • activate 2 bootable partitions and see which one boots.
  • Does it makes a difference if you use SUSE generic MBR or Windows generic MBR ???

I’m afraid (but not sure) different BIOS or hard disks setups (IDE/SATA/AHCI) might behave differently (?).

Ok, I could do the test too since I have Unix and old DOS primaries (but no Windows) and Grub basically everywhere. lol! Maybe I will one day … after I’m done with the thousands things I have to do. I might be one of the rare persons here who’s actually happy that 12.2 release will be delayed (did I read that somewhere?).

On 2012-06-16 18:46, please try again wrote:
>
> robin_listas;2469593 Wrote:

>> It would be interesting to run the experiment (not with your mother
>> computer) of setting two active partitions, or more, and see which boots
>> with openSUSE generic MBR code. My guess is it boots the last one,
>> whichever it is.
>
> Yes, it would be interesting - I would say even more than interesting.
> I don’t play with generic MBR - except to help others or improve and
> test findgrub - but this is the kind of info I would like to know. So if
> someone here uses generic MBR and has 3 OSes (such as Windows and 2
> Linux for example), each of them installed in a primary partition, or 2
> OSes in a primary partition and the Grub boot loader in the extended
> partition, he could do the following test and provide us with a very
> valuable info:

Confirmed.

I installed, virtually, a system with three partitions: swap, system one,
system two. Well, two systems in one disk (vmplayer). Both with generic mbr
boot code, both booting from the root partition. 5 GB each. Both booted
correctly after creation.


sda1  swap
sda2  ext4 main_1
sda3  ext4 main_2  *

That was the status after installation of both systems. Then I activated
sda2 in addition to sda3 - and still the second system booted. Then I also
activated sda1, and the same result :slight_smile:


sda1  swap         *
sda2  ext4 main_1  *
sda3  ext4 main_2  *

So confirmed, the generic boot code installed by openSUSE version 12.1
boots the last primary with the active flag.

:slight_smile:

Now I want a virtual coffee as present :wink:


Cheers / Saludos,

Carlos E. R.
(from 11.4 x86_64 “Celadon” at Telcontar)

So, the generic MBR - at least the one installed by openSUSE - boots the last of the four primary partitions which has the bootflag. Maybe it checks the partition table in reverse order. Anyway we learned something. Thank you for taking the time of running this test, Carlos. It’s good info.

A virtual coffee? How does it taste?

As you said, you activated the other partitions. Do we agree that 2 or more primary partitions should normally not be active and that if a partitioning program does that (without user intervention) that would be a bug? AFAIK, except Linux fdisk, most programs won’t let you do that.

On 2012-06-18 22:36, please try again wrote:
>
> So, the generic MBR - at least the one installed by openSUSE - boots the
> last of the four primary partitions which has the bootflag. Maybe it
> checks the partition table in reverse order. Anyway we learned
> something. Thank you for taking the time of running this test, Carlos.
> It’s good info.

I was curious. :slight_smile:

> A virtual coffee? How does it taste?

The electrons tickle the tongue :slight_smile:

> As you said, you activated the other partitions. Do we agree that 2 or
> more primary partitions should normally not be active and that if a
> partitioning program does that (without user intervention) that would be
> a bug? AFAIK, except Linux fdisk, most programs won’t let you do that.

I don’t know if it is a bug, and where would the bug be. The definition of
the partition table allows writing it, so that’s the first bug, decades old :slight_smile:

Wikipedia

Look at the figure “Layout of one 16-byte partition record (all multi-byte
fields are little-endian)”. The first byte is the bootable flag. There are
four such tables, one per primary, thus indeed you can mark all four. If
the flag were a single byte outside, saying which primary is bootable, then
it would be physically impossible to mark two or more entries. The error is
in the definition, or they were thinking of something else that was never
implemented.

So fdisk what it does is allow doing what the table definition allows, even
if you shoot your own foot… :slight_smile:


Cheers / Saludos,

Carlos E. R.
(from 11.4 x86_64 “Celadon” at Telcontar)

FWIW, I found the same several years ago, with a windows partition and the extended partition (where grub located) both marked active, with no issue.

I’m now back in Europe and I will find out later tonight if I set up the remove access correctly.

I did a very brief test last night, where I was able to ping my mother’s router (in Canada) and also I was able to ssh into her PC. But I will save doing a ‘vnc’ connection and chatting with her on Skype until tonight when we both (my mother and I) have time. … I never did get the freemachine nx working on openSUSE-12.1 on her PC, nor my laptop. Given that I followed the same systemic approach I always do for nomachine nx, I’m suspicious of a bug in the software, and I’ll wait a few weeks, re-install nx when a new version is available and try again. … I also have some of the other minor hiccups (printing black and white text in tables and the icons showing up non-descript in black and white) to fix, but those are not show stoppers and I can sort those remotely from here in Europe.

The best part of the update is my mother’s PC is now on a supported openSUSE-12.1 (where her openSUSE version will receive security updates) as opposed to using openSUSE-11.3 which did not receive security updates.

Well, it’s a little bit tricky and to be honest, installing freenx is not the part of my setup I prefer. However when you get it working, it works very well. The version I built in my repo works on 11.4 and 12.1. freenx is actually what originally brings me to OBS. The version available at this time (probably as 11.3 was released, but I’m not sure) didn’t work because of a wrong lipjpg or libpng library. I ended up compiling it myself and started a repo because I had to install it on many computers. My setup is probably a little be too complicated, but here are a couple things I do after the package is installed. Maybe it will help.

This function is part of a much longer script and creates /etc/nxserver/node.conf by applying some changes to the sample config file. I put the relevant lines in red. You don’t need the NOMACHINE stuff if you’re not planning to run both servers. It might be nice to set the DEFAULT_FONT_PATH in the AGENT_EXTRA_OPTIONS if the same fonts are not installed on the client (which could be a Mac OSX or Windows system), but it’s not required.

function setfreenx {
# setting up freenx
if  ! -f /etc/nxserver/node.conf.orig -a -f /etc/nxserver/node.conf.sample ] ; then
	echo "- patching /etc/nxserver/node.conf ..."
	 -f /etc/nxserver/node.conf ] && cp /etc/nxserver/node.conf{,.orig}
	cat << EOFFREENXSERVER | sed -f - /etc/nxserver/node.conf.sample > /etc/nxserver/node.conf
s|#SSHD_PORT=22|SSHD_PORT=**$FreeNXPort**|
s|#ENABLE_SSH_AUTHENTICATION="1"|ENABLE_SSH_AUTHENTICATION="1"|
s|#ENABLE_SLAVE_MODE="1"|ENABLE_SLAVE_MODE="1"|
s|#ENABLE_NOMACHINE_FORWARD_PORT="0"|ENABLE_NOMACHINE_FORWARD_PORT="1"|
s|#NOMACHINE_FORWARD_PORT="22"|NOMACHINE_FORWARD_PORT="$NXPort"|
s|#NOMACHINE_SERVER="/usr/NX/bin/nxserver"|NOMACHINE_SERVER="/usr/NX/bin/nxserver"|
s|#NOMACHINE_NX_HOME_DIR="/usr/NX/home/nx"|NOMACHINE_NX_HOME_DIR="/usr/NX/home/nx"|
s|#DEFAULT_X_SESSION=/etc/X11/xdm/Xsession|DEFAULT_X_SESSION=$config/xdm/Xsession|
s|#EXPORT_USERIP="0"|EXPORT_USERIP="1"|
s|#ENABLE_ROOTLESS_MODE="1"|ENABLE_ROOTLESS_MODE="1"|
s|#AGENT_EXTRA_OPTIONS_X="-nolisten tcp"|AGENT_EXTRA_OPTIONS_X="-fp \$DEFAULT_FONT_PATH"|
/AGENT_EXTRA_OPTIONS_X/i \
DEFAULT_FONT_PATH=\$(echo \$(sed -n 's/^#].*FontPath 	]*"\\\\(.*\\\\)"/\\\\1/p' /etc/X11/xorg.conf | sed 's|:.*||' | tr "\\\
" "," | sed 's| ||g;s|,\$||'))
s|#COMMAND_MD5SUM="openssl md5"|COMMAND_MD5SUM="md5sum"|
EOFFREENXSERVER
fi
}

$FreeNXPort below is a variable you have to define. It indicates the port on which you want to run freenx. It could be port 22 or it could be any port on which ssh is ALSO listening. Thus if you want to use port 9022, you also have to add it in /etc/ssh/sshd_config (an of course open it in the firewall)

Port 22
Port 9022

Similarly, if you run nomachine as well, you’ll put in on another port.

Next, most people would probably run

/usr/bin/nxsetup --install --auto 

It should create a user nx with home in /var/lib/nxserver/home.

# grep nx /suse/etc/passwd       
nx:x:126:126:FreeNX Server,,,:/var/lib/nxserver/home:/usr/bin/nxserver

Other versions might use /var/lib/nxserver/home/nx. Actually where the nx home directory is located doesn’t matter. What matters is that it belongs to user ‘nx’ as well as the .ssh subdirectory and all the files it contains.

You can either use the nomachine default key (I don’t):

nxsetup --install --setup-nomachine-key --clean

Maybe the setup does that by default. Or you can create your own keys (I prefer):


# mkdir $freeNXHome/custom_keys 
# ssh-keygen -t dsa -f $freeNXHome/custom_keys/client.id_dsa.key
# cp $freeNXHome/{custom_keys/client.id_dsa.key.pub,.ssh/authorized_keys2}

where freeNXHOME= /var/lib/nxserver/home (or /var/ib/nxserver/home/nx).

Finally you have to add the local machine ssh host key to the freeNXHOME/.ssh/know_hosts. When you can not connect, a missing or incorrect know_hosts is often the culprit.

function recreateKnown_hosts {
	echo -n "127.0.0.1 " > $freeNXHome/.ssh/known_hosts
	cat /etc/ssh/ssh_host_rsa_key.pub >> $freeNXHome/.ssh/known_hosts
	chmod 644 $freeNXHome/.ssh/known_hosts
	chown nx:root $freeNXHome/.ssh/known_hosts
}

Make sure that all files belong to user nx:

# find /var/lib/nxserver/home -ls
1458874    4 drwx------   3 nx       root         4096 Apr 24 17:45 /var/lib/nxserver/home
1458875    4 drwx------   2 nx       root         4096 Dec 16  2011 /var/lib/nxserver/home/.ssh
1458876    4 -rw-------   1 nx       root          668 Mar  1  2010 /var/lib/nxserver/home/.ssh/client.id_dsa.key
1458879    4 -rw-r--r--   1 nx       root         1023 Jun 18  2011 /var/lib/nxserver/home/.ssh/known_hosts
1458878    4 -rw-------   1 nx       root          601 Mar  1  2010 /var/lib/nxserver/home/.ssh/authorized_keys2
1458877    4 -rw-------   1 nx       root          601 Jun  5  2011 /var/lib/nxserver/home/.ssh/server.id_dsa.pub.key
1456001    0 -rw-------   1 nx       nx              0 Apr 24 17:45 /var/lib/nxserver/home/.Xauthority

I’m sure I do it in a too complicated way … but it works after all. I don’t know about the printing issues reported in another thread. I never cared about printing.

There was a new version for ArchLinux two or three months ago (0.7.3-11). I didn’t update untill yesterday, but I didn’t see noticeable change. I’m not sure that freenx is still developped upstream. It doesn’t seem so if you visit the project homepage (FreeNX - the free NX). The Ubuntu FreeNX team seems to release a new (or the same) version only with Ubuntu LTS releases. Thus the version available in Oneiric is quite new. I might take a closer look at the latest ArchLinux and Ubuntu versions and update my version in OBS some day… but it’s a lot of work.

Actually I prefer ‘nomachine’ version of nx over the free version, but I can’t get either to work on 12.1 currently.

I’m so heavily jet lagged right now (after my flight back to Europe) that I may wait until the weekend, or after the weekend, when my body / head gets accustomed to the time zone shift, before I try looking at this again.

I can not tell what you are doing wrong. I install nomachine and freenx on many Linux servers (different distros) with the same setup, and it works. Everytime when it doesn’t, it’s almost always because of a wrong known_hosts, but my setups are more complicated, because I have to use existing SSH keys. If you are just installing nomachine and use the default keys (meaning you don’t create SSH keys at all, since the nomachine client use the default nomachine keys by default), you won’t have this kind of problem*. I had to uninstall/reinstall nomachine recently on 3 ArchLinux servers. I downloaded the latest versions (these are tarballs and not rpms for Arch, but they contain the same files). Out of curioisty, I decided to try to connect to nomachine directly (without forwarding through FreeNX) and use the generic keys. It worked. The only thing I did was applying my patches to node.cfg and server.cfg before. You certainly don’t need all these modifications, since they apply to our lan here, but here are my diffs in case they might help. …

--- /usr/NX/etc/node.cfg.orig   2012-06-28 00:10:35.067357357 -0700
+++ /usr/NX/etc/node.cfg        2012-06-28 00:19:53.141304686 -0700
@@ -29,7 +29,7 @@
 #
 # Specify hostname for the NX node. 
 #
-#NodeName = "localhost.localdomain"
+NodeName = "jadzia.niglo.net"
 
 #
 # Enable or disable the automatic clean-up of NX session directories
@@ -195,7 +195,7 @@
 #
 # Specify the path of default X window system startup script.
 #
-#DefaultXSession = "/etc/X11/xdm/Xsession"
+DefaultXSession = "/usr/local/config/xdm/Xsession"
 
 #
 # Set the default DPI of the X server to the specified value. This
@@ -203,7 +203,7 @@
 # to set an appropriate value and fall back to 75 DPI, which is the
 # value reported by default by the X server.
 #
-#DefaultXDPI = "96"
+DefaultXDPI = "96"
 
 #
 # Specify the path of libraries to be added to the agents environment.
@@ -269,7 +269,7 @@
 # character. Note that, for security reasons, no shell interpretation
 # is made.
 #
-#AgentExtraOptions = "-nocomposite -noshpix"
+AgentExtraOptions = "-nocomposite -noshpix" -fp "`awk 'BEGIN { ORS=","} ; /FontPath/ { gsub(/"/,"",$2) ; print $2 }' /etc/X11/xorg.conf`" 
 
 #
 # Specify the default Window Manager to be used when running single
@@ -334,7 +334,7 @@
 # filesystem to the target directory set by the ShareBasePath
 # key. The possible values are both, smbfs, cifs or none. 
 #
-MountShareProtocol = "cifs"
+MountShareProtocol = "both"
 
 #
 # Specify if NX node has to mount the shares by using the real host-
@@ -346,7 +346,7 @@
 #
 # Specify the TCP port where the NX node SSHD daemon is running.
 #
-#SSHDPort = "22"
+SSHDPort = "9123"
 
 #
 # Accept or refuse the NX client connection if SSHD does not export
@@ -508,11 +508,7 @@
 
 #
 # Specify path and name of the command to start the GNOME session.
-#
 CommandStartGnome = "/etc/gdm/Xsession gnome-session"
-
 #
 # Specify path and name of the command to start the KDE session.
-#
-CommandStartKDE = "/usr/bin/dbus-launch --exit-with-session startkde"
-
+CommandStartKDE = "/usr/local/config/kdm/Xsession startkde"
--- /usr/NX/etc/server.cfg.orig 2012-06-28 00:10:35.054024168 -0700
+++ /usr/NX/etc/server.cfg      2012-06-28 00:10:35.064024070 -0700
@@ -28,12 +28,12 @@
 #
 # Specify hostname for the NX server.
 #
-#ServerName = "localhost.localdomain"
+ServerName = "jadzia.niglo.net"
 
 #
 # Specify the TCP port where the NX server SSHD daemon is running.
 #
-#SSHDPort = "22"
+SSHDPort = "9123"
 
 #
 # Set the base display number for NX sessions.
@@ -84,7 +84,7 @@
 # 0: Disabled. NX server forbids a NX user to log as user
 #    having administrative privileges.
 #
-#EnableAdministratorLogin = "0"
+EnableAdministratorLogin = "1"
 
 #
 # Allow the server to terminate oldest suspended sessions:
@@ -315,7 +315,7 @@
 #
 # 0: Disabled.
 #
-#EnableDirectXdmQuery = "0"
+EnableDirectXdmQuery = "1"
 
 #
 # Enable or disable the XDM broadcast query:
@@ -329,7 +329,7 @@
 #
 # Specify path and name of the command 'sessreg'.
 #
-#CommandSessreg = "/usr/X11R6/bin/sessreg"
+CommandSessreg = "/usr/bin/sessreg"
 
 #
 # Specify the location and file name of the SSH authorized keys.
@@ -347,7 +347,7 @@
 # 0: Accept. Check the remote IP and accept the connection even if
 #    the remote IP is not provided.
 #
-#SSHDCheckIP = "0"
+SSHDCheckIP = "1"
 
 #
 # Enable or disable support for automatic provision of NX guest users:

You should replace hostname and SSH port (in red) with your own. You won’t need the changes I greyed out (it obviously won’t work on your system). I’m not even sure you need any of these changes. I need them because I connect through xdm in the client (instead of opening a desktop directly - unlike Malcolm). You don’t have to use an alternate ssh port, but if you do, it has to be defined in /etc/ssh/sshd_config and open in your firewall (sorry if it sounds obvious).

Delete the nx user before attempting to install/reinstall nomachine. I don’t remember if the rpms run the setups under openSUSE - I think the rpm post-install do. On ArchLinux, you have to run them manually. These are the two scripts (nxnode and nxserver) in /usr/NX/scripts/setup.

On Arch, I just ran:

/usr/NX/scripts/setup/nxnode --install redhat
/usr/NX/scripts/setup/nxserver --install redhat

Then I patched /usr/NX/etc/node.cfg and /usr/NX/etc/server.cfg (see the diffs above).

  • however in your case (connecting to your mother’s computer), I would create SSH keys.

@oldcpu Have you tried LogMeIn Hamachi BETA version for Linux? :slight_smile:

No I have not. Even if I had it installed, I do not think I know enough to use it.