Using KDE on a diskless client

pathiaki

Member

Thanks: 2
Messages: 69

#1
Hi,

I couldn't find anything in searching the archives but I have to believe that someone has attempted this at one point. I'd like to run KDE4 on FBSD FreeBSD 10.0 as a diskless client. I've figured everything else out regarding the diskless workstation, pxeboot, NFS mounting, all of it. However, I took my standard, with a disk, workstation and copied over my /etc/rc.conf and put in the diskless directory. It was seen, however, when it tried to start.

Code:
Cannot create /usr/local/kde4/share/config/kdm/kdmrc
I have to assume that this is a location that is supposed to be written to for configuration and temporary files.

Any simple workarounds?

Thank you,

P.
 

xibo

Well-Known Member

Thanks: 78
Messages: 389

#2
Install the startx script which is in the x11/xinit port, write something like
Code:
dbus-launch --exit-with-session /usr/local/bin/startkde
into your user's ${HOME}/.xinitrc and run startx to start kde.
 
OP
OP
pathiaki

pathiaki

Member

Thanks: 2
Messages: 69

#3
I'll attempt this but, if I understand this correctly, how doe this help with starting a KDE greeter login screen?

If I do a fresh install on a regular workstation, install KDE/X etc... I get a login screen/greeter screen.
This is what I'm attempting. I'm trying to make the diskless station behave just like one with a hard disk.

In my /etc/rc.conf,

I have:

kdm4_enable="YES"

and everything starts on the workstation with the a disk. I'd like the same behavior on something without a disk.

P.
 

xibo

Well-Known Member

Thanks: 78
Messages: 389

#4
It doesn't help at all with the greeter, it works around the requirement for it ;)

The mentioned file is required by kdm but kdm will also create that file if it is not present at it's execution, so mounting the nfs share with write access and root conservation, executing kdm and rebooting the box with readonly ${KDEDIR} should do the job.

Of cause, you can also mount a union mfs on /usr/local/kde4/share/config or something alike.
 
OP
OP
pathiaki

pathiaki

Member

Thanks: 2
Messages: 69

#5
Now I've realized what it's doing.... I expect that I will need a filesystem for each client, probably set up the client to be able to write to it's own mountpoint like /thinclient/<IP address> and mount it to that location rw. It may have not been an applicable solution for more than one workstation, but it has made me think about what I've been reading and I hope to come up with the solution soon. Thank you for the help and spurring the thoughts. :)
 
OP
OP
pathiaki

pathiaki

Member

Thanks: 2
Messages: 69

#6
Interesting things abound here.

It looks like I have to create those 'client specific' directories for things like/etc/X11/xorg.conf. (Many of the clients are different configurations.

Also, something that I had problems with were logging in through kdm while having an LDAP backend. I have solved that through creating a PAM module for it in /etc/pam.d/kde

Contents of the file look like:

Code:
# auth
#auth           required        pam_nologin.so          no_warn
#auth           sufficient      pam_krb5.so             no_warn try_first_pass
#auth           sufficient      pam_ssh.so              no_warn try_first_pass
auth            sufficient      pam_ldap.so             no_warn try_first_pass
auth            required        pam_unix.so             no_warn try_first_pass

# account
#account        required        pam_krb5.so
account         sufficient      pam_ldap.so
account         required        pam_unix.so

# session
#session        optional        pam_ssh.so
session         sufficient      pam_ldap.so
session         required        pam_permit.so
Also, getting the /usr/local/share/config/kdm mount point to be writable was solved by overlaying a memory disk on top of it.

The entries in /etc/fstab now look like:


Code:
192.168.0.6:/thinclient/FreeBSD         /       nfs     ro      0       0
192.168.0.6:/thinclient/FreeBSD/usr     /usr    nfs     ro      0       0
192.168.0.6:/usr/local  /usr/local      nfs     ro      0       0
192.168.0.6:/usr/home                   /usr/home       nfs     rw      0       0
md                                      /tmp    mfs     -s=30m,rw       0       0
md                                      /var    mfs     -s=30m,rw       0       0
md                                      /usr/local/share/config/kdm     mfs     -s=30m,rw       0       0
proc                                    /proc   procfs  rw      0       0
So.... where am I now? Well, the kdm_greeter comes up, I can login with both local and LDAP passwords, however, the environment comes up with a black screen, no toolbar at the bottom, and a red 'X' button where the 'K' start should be.

Anyone have any ideas?

Thank you,

P.
 
Top