Server – openSUSE Lizards https://lizards.opensuse.org Blogs and Ramblings of the openSUSE Members Fri, 06 Mar 2020 11:29:40 +0000 en-US hourly 1 Micro openSUSE Leap 15.1 for AWS https://lizards.opensuse.org/2020/02/16/micro-opensuse-leap-15-1-for-aws/ Sun, 16 Feb 2020 19:29:30 +0000 http://lizards.opensuse.org/?p=14347 I make the minimalist version of openSUSE available on AWS. In addition to multipurpose, complete stable and easy to use. It is intended for users, developers, administrators, and any professional who wants openSUSE resources on the server. It’s great for beginners, experienced users and ultra geeks, in short, it’s perfect for everyone! Suggestions at cabelo@opensuse.org, More information here: https://aws.amazon.com/marketplace/pp/B083XBP51G

micro-opensuse-15.1

Here are the main advantages:

Resources openSUSE Leap 15.1 Micro openSUSE 15.1
Disk space 1,5G 686M
Used memory 70M 55M
Packages 576 236

Disadvantage: It does not have YAST!

]]>
Tricks with IPFS https://lizards.opensuse.org/2019/08/07/tricks-with-ipfs/ Wed, 07 Aug 2019 19:45:06 +0000 http://lizards.opensuse.org/?p=13968 Since April I am using IPFS

Now I wanted to document some neat tricks and details.

When you have the hex-encoded sha256sum of a small file – for this example let’s use the GPLv3.txt on our media –
sha256sum /ipns/opensuse.zq1.de/tumbleweed/repo/oss/GPLv3.txt
8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b90

Then you can use the hash to address content directly by prefixing it with /ipfs/f01551220 so it becomes

/ipfs/f015512208ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903

In theory this also works with SHA1 and the /ipfs/f01551114 prefix, but then you risk experiencing non-unique content like
/ipfs/f0155111438762cf7f55934b34d179ae6a4c80cadccbb7f0a

And dont even think about using MD5.

For this trick to work, the file needs to be added with ipfs add --raw-leaves and it must be a single chunk – by default 256kB or smaller, but if you do the adding, you can also use larger chunks.

Here is a decoding of the different parts of the prefix:
/ipfs/ is the common path for IPFS-addressed content
f is the multibase prefix for hex-encoded data
01 is for the CID version 1
55 is for raw binary
12 is for sha2-256 (the default hash in IPFS)
20 is for 32 byte = 256 bit length of hash

And finally, you can also access this content via the various IPFS-web-gateways:
https://ipfs.io/ipfs/f015512208ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903

You can also do the same trick with other multibase encodings of the same data – e.g. base2

Base2 looks pretty geeky, but so far I have not found practical applications.

]]>
Highlights of YaST Development Sprint 73 https://lizards.opensuse.org/2019/03/14/yast-sprint-73/ Thu, 14 Mar 2019 09:10:57 +0000 http://lizards.opensuse.org/?p=13681 As (open)SUSE releases are approaching, the YaST team is basically in bug squashing mode. However, we are still adding some missing bits, like the bcache support for AutoYaST. Additionally, there are some interesting improvements we would like to let you know about:

  • AutoYaST support for using Btrfs subvolumes as user home directories.
  • Improved Certificates management in the registration module.
  • Correct detection of DASDs when using virtio-blk.
  • Proper handling of the resume option in the bootloader module.
  • Display fonts and icons properly during installation.

And, as a bonus, some insights about a YaST font scaling problem on the GNOME desktop (spoiler: not a YaST bug at all).

Adding bcache support to AutoYaST

A few days ago, support for bcache landed in the YaST Partitioner. In a nutshell, bcache is a caching system that allows to improve the performance of any big but slow disk (so-called backing device) by using a faster and smaller disk (caching device).

The way to describe a bcache in AutoYaST is pretty similar to how a RAID or a LVM Volume Group is described. On one hand, you need to specify which devices are going to be used as backing and caching devices by setting bcache_backing_for and bcache_caching_for elements. And, on the other hand, you need to describe the layout of the bcache device itself. As you would do for a RAID, you can partition the device or use it as a filesystem.

The example below creates a bcache device (called /dev/bcache0) using /dev/sda to speed up the access to /dev/sdb.

<partitioning config:type="list">
    <drive>
      <type config:type="symbol">CT_DISK</type>
      <device>/dev/sda</device>
      <disklabel>msdos</disklabel>
      <use>all</use>
      <partitions config:type="list">
        <partition>
          <!-- It can serve as caching device for several bcaches -->
          <bcache_caching_for config:type="list">
            <listentry>/dev/bcache0</listentry>
          </bcache_caching_for>
          <size>max</size>
        </partition>
      </partitions>
    </drive>

    <drive>
      <type config:type="symbol">CT_DISK</type>
      <device>/dev/sdb</device>
      <use>all</use>
      <!-- <disklabel>none</disklabel> -->
      <disklabel>msdos</disklabel>
      <partitions config:type="list">
        <partition>
          <!-- It can serve as backing device just for one bcache -->
          <bcache_backing_for>/dev/bcache0</bcache_backing_for>
        </partition>
      </partitions>
    </drive>

    <drive>
      <type config:type="symbol">CT_BCACHE</type>
      <device>/dev/bcache0</device>
      <bcache_options>
        <cache_mode>writethrough</cache_mode>
      </bcache_options>
      <use>all</use>
      <partitions config:type="list">
        <partition>
          <mount>/data</mount>
          <size>20GiB</size>
        </partition>
        <partition>
          <mount>swap</mount>
          <filesystem config:type="symbol">swap</filesystem>
          <size>1GiB</size>
        </partition>
      </partitions>
    </drive>
  </partitioning>

Using Btrfs Subvolumes as User Home Directories in AutoYaST

In our last report we presented a new feature to allow using Btrfs subvolumes as user’s home directories. However, the AutoYaST support for that feature was simply missing.

Now you can use the home_btrfs_subvolume to control whether a Btrfs should be used as home directory.

<user>
   <encrypted config:type="boolean">false</encrypted>
   <home_btrfs_subvolume config:type="boolean">true</home_btrfs_subvolume>
   <fullname>test user</fullname>
   <gid>100</gid>
   <home>/home/test</home>
   <shell>/bin/bash</shell>
   <uid>1003</uid>
   <user_password>test</user_password>
   <username>test</username>
</user>

Tuning the Bootloader’s resume parameter

The resume parameter is used by the bootloader to tell the kernel which swap partition should be used for the suspend to disk feature. If you are curious enough, you can find the value for your system in the Kernel Parameters tab of the YaST bootloader module. Now that we know what the resume parameter is, it is time to talk about the two issues we have solved recently.

The first problem was related to the way in which YaST determines which swap partition should be used. The bug report mentioned that YaST was taking a swap partition not used by the system that, in addition, was located in a removable device. After checking the code, we found out that we were using a simplistic heuristic which just selected the biggest swap partition available. We improve that logic to use the biggest swap partition which is being used by the system. However, if no suitable partition is found, YaST will fall back to the old behaviour.

The second problem was related to AutoYaST not handling the noresume option properly. When a user specified that option, AutoYaST just blindly added it to the kernel command line keeping the conflicting resume parameter too. Of course, that caused troubles. Now when noresume is given, AutoYaST simply removes all occurrences of the resume parameter.

Registration, OpenSSL and Debugging

These days, handling the SSL certificates in a proper way is key to keep our systems secured. So during this sprint, we invested quite some time improving how certificates are used in our registration module. Basically, we have improved YaST behaviour in these scenarios:

  • Using self-signed certificates.
  • Handling with unknown certificate authorities.

When the custom registration server (the new RMT or the older SMT) use a self-signed certificate, YaST offers to import the server certificate and make it known to the system.

Self-signed Certificate Dialog

On the other hand, when the server SSL key was signed by an unknown key, YaST used to just display an error popup. That was not much helpful as it was not obvious what to do. Now a new popup which contains some hints about how to import the CA certificate manually is displayed. In this case it cannot be imported automatically as YaST does not know where to obtain it, it is not present in the server response.

Unknown Certificate Authority Dialog

The work of importing and activating the certificate is now performed by a YaST script, preventing the user from having to run some complicated (and error prone) commands manually.

These improvement and some other OpenSSL details have been documented in the OpenSSL Certificates documentation. Additionally, if you ever need to debug some SSL related issue, this new OpenSSL Debugging Hints documentation might be useful for you. It covers basic topics, like displaying PEM certificate details, running a testing HTTPS server, creating a self-signed certificate, etc.

Detecting DASDs when using virtio-blk in zKVM

IBM’s S/390 platform has some special features that you will not find in conventional architectures like x86. One of them are DASD hard disks. These devices can be accessed in zKVM using the virtio-blk backend, but DASDs need special handling. For instance, the most common DASD type (CDL ECKD) cannot be used with an MS-DOS partition table nor a GPT, instead a DASD partition table is required. Having this requirement in mind, YaST now detects DASDs using virtio-blk properly and uses the correct DASD partition table.

Improving Fonts and Icons Handling in the Installer

Back some time ago, Stasiek Michalski (a.k.a. as hellcp), one of our very active openSUSE community contributors, spent quite some work for better artwork in YaST. As a result, icons are now used from the desktop’s icon theme whenever possible, and the installer font was changed.

One fallout of the latter was that the font size was now too small for users with diminishing eyesight: That new font has different font metrics, so the default font size was too small. We fixed that during this sprint. See also openSUSE/branding#107.

By the way, the disappearing icons issue was solved too. See libyui/libyui-qt#100 if you are interested in the details.

And just to get this straight: We are welcoming active community members to contribute (thanks again, @hellcp!). There will be some bugs; that’s just natural. We need to cooperate to fix them.

YaST Font Scaling Problem on the GNOME Desktop

This is not really a YaST problem, but of course it was still the natural thing to write a bug report against YaST for this bsc#1123424. And it took us quite a while to figure out what went wrong here.

Basically, when you use the GNOME Tweak Tool to set a Font Scaling Factor that is not a multiple of 0.25, this is completely ignored, and so all Qt5 applications (including the YaST Qt Control Center and all YaST modules) appear with unscaled fonts.

The problem is this GNOME Tweak Tool setting non-integer DPI values (which is already out of spec and thus a bug) and the Qt5 libraries consequently completely ignoring that DPI value. So that GNOME tool should do it correctly, but the Qt5 libs could also handle this more gracefully.

Unfortunately, there is nothing that we can do about this from the YaST side, even though we are aware that this might become reported as a YaST bug again in the future 🙂

Closing Thoughs

As we stated at the beginning of this post, we are basically in bug squashing mode. So, please, if you have some time, give the testing versions of (open)SUSE a try and report as many bugs as you can.

Thanks!

]]>
Basic Nextcloud installation on openSUSE Leap https://lizards.opensuse.org/2016/10/28/nextcloud-installation-on-opensuse-leap/ https://lizards.opensuse.org/2016/10/28/nextcloud-installation-on-opensuse-leap/#comments Fri, 28 Oct 2016 15:09:09 +0000 http://lizards.opensuse.org/?p=12089 Nextcloud Logo

I see the official documentation has full tutorial for RHEL 6 or CentOS 6 and RHEL 7 or CentOS 7. The main documentation covers Ubuntu 14.04 LTS

openSUSE already has the Nextcloud client packaged in Tumbelweed and the Server is in the PHP extra repo! Personally, I prefer to install eveything from official repository, so when an update is available, I can have it without a glitch. This tutorial describes how to install Nextcloud using command line. I followed the official documentation of Ubuntu 14.04 LTS installation.

Why choose openSUSE Leap? openSUSE Leap is a brand new way of building openSUSE and is new type of hybrid Linux distribution. Leap uses source from SUSE Linux Enterprise (SLE), which gives Leap a level of stability unmatched by other Linux distributions, and combines that with community developments to give users, developers and sysadmins the best stable Linux experience available. Contributor and enterprise efforts for Leap bridge a gap between matured packages and newer packages found in openSUSE’s other distribution Tumbleweed. You can download openSUSE Leap from the site https://software.opensuse.org/.

Make sure that ssh (sshd) is enabled and also the firewall either is disabled or make an exception to the apache and ssh services. You can also set a static IP (check out how).

First of all, let’s install the required and recommended modules for a typical Nextcloud installation, using Apache and MariaDB, by issuing the following commands in a terminal:

zypper in apache2 mariadb apache2-mod_php5 php5-gd php5-json php5-fpm php5-mysql php5-curl php5-intl php5-mcrypt php5-zip php5-mbstring php5-zlib

Create Database (optional since it’ll create eveything automatically)
Next step, create a database. First of all start the service.

systemctl start mysql.service
systemctl enable mysql.service

The root password is empty by default. That means that you can press enter and you can use your root user. That’s not safe at all. So you can set a password using the command:

mysqladmin -u root password newpass

Where newpass is the password you want.

Now you set the root password, create the database.

mysql -u root -p
#you’ll be asked for your root passwordCREATE DATABASE nextcloudb;

GRANT ALL ON nextcloudb.* TO ncuser@localhost IDENTIFIED BY ‘dbpass’;

Database user: ncuser
Database name: nextcloudb
Database user password: dbpass

You can change the above information accordingly.

PHP changes
Now you should edit the php.ini file.

nano /etc/php5/apache2/php.ini

change the values

post_max_size = 50G
upload_max_filesize = 25G
max_file_uploads = 200
max_input_time = 3600
max_execution_time = 3600
session.gc_maxlifetime = 3600
memory_limit = 512M

and finally enable the extensions.

extension=php_gd2.dll
extension=php_mbstring.dll

Apache Configuration
You should enable some modules. Some might be already enabled.

a2enmod php5
a2enmod rewrite
a2enmod headers
a2enmod env
a2enmod dir
a2enmod mime

Now start the apache service.

systemctl start apache2.service
systemctl enable apache2.service

Install Nextcloud from source code (option 1, preferable)
Before the installation, create the data folder and give the right permissions (preferably outside the server directory for security reasons). I created a directory in the /mnt directory. You can mount a USB disk, add it to fstab and save your data there. The commands are:

mkdir /mnt/nextcloud_data
chmod -R 0770 /mnt/nextcloud_data
chown wwwrun /mnt/nextcloud_data

Now download Nextcloud (find the latest version at https://nextcloud.com/install/). Then unzip and move the folder to the server directory.

wget https://download.nextcloud.com/server/releases/nextcloud-10.0.0.zip
unzip nextcloud-10.0.0.zip
cp -r nextcloud /srv/www/htdocs
chown -R wwwrun /srv/www/htdocs/nextcloud/

Make sure that everything is OK and then delete the folder nextcloud and nextcloud-10.0.0.zip from the root (user) directory.

Now open your browser to the server IP/nextcloud

Set your administrator username and password.
Your data directory is: /mnt/nextcloud_data
Regarding database, use the following.
Database user: ncuser
Database name: nextcloudb
Database user password: dbpass

Wait until it ends the installation. The page you’ll see is the following.

Install Nextcloud using the respository (option 2)

If you want to have automatic updates of your Nextcloud instance when there’s a new version, you can add the repository. There are packages available for openSUSE Leap 42.1, 42.2 and Tumbleweed (we recommend openSUSE Leap 42.1). You should be an administrator, so you can install Nextloud on your server.

1. Add the Nextcloud repository.
openSUSE_Leap_42.2

zypper ar http://download.opensuse.org/repositories/server:/php:/applications/openSUSE_Leap_42.2/ Nextcloud

openSUSE_Leap_42.1

zypper ar http://download.opensuse.org/repositories/server:/php:/applications/openSUSE_Leap_42.1/ Nextcloud

openSUSE_Leap_Tumbleweed

zypper ar http://download.opensuse.org/repositories/server:/php:/applications/openSUSE_Tumbleweed/ Nextcloud

2. Refresh your repositories

zypper refresh

3. Install Nextcloud (be careful you have to install LAMP first and change permissions of the files).

zypper install nextcloud

4. Open http://serverIP/nextcloud to install your instance (admin user account). Be careful to create another folder with the proper permissions for your data (as described).

5. Login and use Nextloud.

For more information about Nextcloud on openSUSE, check openSUSE wiki.

For any changes, check the github page.

For more configuration, you can follow the official documentation. That was the basic installation on openSUSE Leap.

]]>
https://lizards.opensuse.org/2016/10/28/nextcloud-installation-on-opensuse-leap/feed/ 2
Tally ERP 9 on Linux https://lizards.opensuse.org/2016/07/21/tally-erp-9-on-linux/ Thu, 21 Jul 2016 08:47:54 +0000 http://lizards.opensuse.org/?p=11890 Recently we implemented Tally ERP 9 solution for Antico Pumps. That itself is not interesting, the interesting part is they are using LTSP Fat client system on openSUSE. They have only one server from which all their client computers boot over the network, the clients do not have hard disk, client OS with all softwares they need including wine(Tally is Windows only software), as well as users’ data resides on the server. Once the client boots all the local resources are used so single low power server can be used to serve many clients.

Tally multiuser is served from a Samba share  on a NAS device, Tally folder is copied to samba share and path to Tally Data is changed so that it points there. Everything they need including printing and export(CSV) works from all clients. Same way Tally can be run on standalone computers. Neither Tally, Wine or openSUSE are modified for getting it working as it would under Windows environment.

]]>
Announcing Li-f-e 42.1 https://lizards.opensuse.org/2015/12/21/announcing-li-f-e-42-1/ https://lizards.opensuse.org/2015/12/21/announcing-li-f-e-42-1/#comments Mon, 21 Dec 2015 10:37:48 +0000 http://lizards.opensuse.org/?p=11596 The best Linux distribution for education got a whole lot better, your Li-f-e(Linux for Education) takes a “Leap” to 42.1. openSUSE Education community is proud to present this latest edition based on openSUSE 42.1 with all the features, updates and bug fixes available on it till date. This effectively makes it the only enterprise grade long term supported(LTS) distribution for Education.

As with previous releases we have bundled a ton of softwares on this live DVD/USB specially packaged for education, along with the Plasma, GNOME and Mate Desktop Environments, full multimedia experience is also provided out of the box thanks to the Packman repositories. Only x86_64 architecture is supported, if you have a lot of machines that only support x86 then read on to find out how you can extend their Li-f-e.

You can of course very easily turn Li-f-e to full-fledged LTSP server to PXE boot machines in your local network. Booting both i686 and x86_64 architectures is supported. In case you need to PXE boot machines below i686 then you would have to install this package.

Happy holidays!

Get Li-f-e from here: Direct Download | md5sum | Alternate download and mirrors

]]>
https://lizards.opensuse.org/2015/12/21/announcing-li-f-e-42-1/feed/ 5
Compile ZNC (IRC Bouncer) on Raspberry Pi https://lizards.opensuse.org/2015/03/26/compile-znc-irc-bouncer-on-raspberry-pi/ Thu, 26 Mar 2015 10:44:18 +0000 http://lizards.opensuse.org/?p=11303 There are many IRC Bouncers . My favourite one is ZNC. ZNC installation on server is a simple thing (zypper in znc). But what if you don’t have a server (avoid all the costs)? The best solution is a Raspberry Pi (it doesn’t matter if it’s B, B+, 2). It’s small, no power consumption, can easily setup as home small server. The only thing that it might disturb you, is the lights.

First of all, check out how you can install openSUSE on Raspberry Pi.

Now, you have to compile ZNC. There’s no package in the repositories. If developers read this, please please make an ARM package. Please!!!

First of all, you have to install the following packages (that’s what I did):

zypper in gcc-c++ gcc git libopenssl-devel make

Now, let’s download the last release (you can find the whole procedure at official page)

wget http://znc.in/releases/znc-latest.tar.gz

Then untar the file:

tar -xzvf znc*.*gz

Then you have to do some steps that usually do when you compile:

cd znc*

and run the command

./configure

Next command will take a lot of time to finish

make

When it’s over, run the final command:

make install

You’re ready to use it. Now login as user and run the command:

znc –makeconf

If you have an older configuration, you can use it (run only the command znc).

]]>
LTSP client goes Banana Pi! https://lizards.opensuse.org/2014/12/16/ltsp-client-goes-banana-pi/ https://lizards.opensuse.org/2014/12/16/ltsp-client-goes-banana-pi/#comments Tue, 16 Dec 2014 14:03:33 +0000 http://lizards.opensuse.org/?p=11121 The Raspberry Pi is a credit-card sized computer running ARM processor that plugs into your TV/PC monitor, mouse and a keyboard, it is capable of running Linux and can be made to do many interesting things.The Banana Pi is a what Chinese ingeniousness came up with after they checked out Raspberry Pi, they made a lot more powerful knockoff. This is a “How-to” use Banana Pi as LTSP client.

There is BerryTerminal project which makes it possible to use Raspberry Pi as LTSP Thin Client, on the server you can run any distribution that can run LTSP server, it can be running CPU with x86/x86_64/whatever architecture as LTSP provides a way to run X session from the server via SSH tunnel. Biggest benefit of running LTSP is centralized user and data management, and clients can be of modest specification as all clients’ sessions are run on the server. This is a drawback as well, as the server needs to be powerful enough to handle many sessions. This is where LTSP Fat Client help, it allows running of users’ session on the client that are powerful enough, while users and data are stored on the central server allowing modest server to serve many more clients than it would otherwise. Raspberry Pi is not that capable to run full featured Linux desktop, Banana Pi with it’s dual core CPU and 1 GB RAM is just good enough to work as a Thin Client as well as a Fat Client. perfect for home, small office or school lab.

Piece of history, first ever Banana Pi LTSP terminal running openSUSE KIWI-LTSP

There is openSUSE 13.1 available for Banana Pi, it comes with XFCE desktop and many useful software pre-installed. Because I do not know how to create images for this hardware, that image is used as a base for Banana Terminal. Here are the steps to turn your Banana Pi into LTSP client.

* Download openSUSE-Bananapi-LTSP.tar.xz

* Extract the archive to get openSUSE-Bananapi-LTSP.img from it.

* Dump the openSUSE-Bananapi-LTSP.img on to a SD card, see step 5 here.

* Change settings according to your network configuration

In the second partition of SD card etc/lts.conf edit the SERVER variable to point to LTSP server in your network.

* Plug the SD card in your Banana Pi and boot it up, make sure the network is connected and LTSP server is set up properly. You have to create users on the server to use for login on client.

*  In case you have a bigger SD card, use yast2 disk(partitioner) on the client to expand the second partition. You can use yast’s package manager to install more software. The default password for root is bananapi, you may want to change that first thing after booting.

If you would like to run LTSP client on ARM7 hardware supported by openSUSE I would be happy to accept hardware donation to get it working 😉

Have a lot of fun…

]]>
https://lizards.opensuse.org/2014/12/16/ltsp-client-goes-banana-pi/feed/ 1
openSUSE Education Li-f-e 13.2.1 out now! https://lizards.opensuse.org/2014/12/06/opensuse-education-li-f-e-13-2-1-out-now/ Sat, 06 Dec 2014 04:57:32 +0000 http://lizards.opensuse.org/?p=11100 openSUSE Education Team is happy to announce the availability of Li-f-e built on the latest openSUSE release. Download and spread this love around.

]]>
Tiny Core kiwi-ltsp thin client https://lizards.opensuse.org/2014/05/31/tiny-core-kiwi-ltsp-thin-client/ Sat, 31 May 2014 12:33:42 +0000 http://lizards.opensuse.org/?p=10840 Couple of days back went to a school here to demonstrate what openSUSE Education Li-f-e with KIWI-LTSP can bring to their lab. We have created a product based on Li-f-e called My sCool Server. It brings together all the goodies that a modern operating system must have and all the softwares required by the state board curriculum in one seamless package.

However my excitement evaporated quickly after knowing that their “well equipped” computer lab was mostly made up of state of the art P4s!! kiwi-ltsp can work sort of OK with about 256M RAM, 512M is recommended. Once the user logs in, the processor and RAM on the client is not very important as all the processing happens on the server. This got me working on finding a way to bring the snappiness of this next generation OS running on i3 server performing exactly same on P4s with may be as little RAM as 128M.

Enter Tiny Core Linux, one awesome distribution in a very tiny bundle. So tiny in fact that the whole OS that PXE boots and gives full desktop X session via ssh or rdesktop is just 27M in size. Compare that to 26M size of just the initrd of standard openSUSE, 49M kiwi-ltsp’s initrd and 180M kiwi-ltsp’s system image. And incredibly it works very well on P4 PC with 128M RAM.

So if you have some old hardware get some new Li-f-e, set up kiwi-ltsp and after that install kiwi-ltsp-tinycore-tc package. Once the package is installed you would see tinycore-thinclient available in PXE boot menu.

Edit /srv/tftpboot/images/tc/nfsrw/home/tc/client.conf according to your need. Change RUN_COMMAND=mate-session on Li-f-e GNOME Classic edition, GNOME seems to have this annoying bug that locks the screen and does not allow unlocking if GDM was not used as display manager. You can remove/comment RSESSION=ssh line to use rdesktop. Use the xrdp package from server:ltsp repository, and of course enable/start the service(chkconfig xrdp on && rcxrdp start). Change the line in /etc/xrdp/startwm.sh that starts Xsession appending the session you want it to start by default for example: /etc/X11/xdm/Xsession mate-session, without that the DEFAULT_WM from /etc/sysconfig/windowmanager is used.

If you are not using openSUSE or cannot use rpm package, get the files from here, adapt the setup script to suite your need.

]]>