Dear Community

With the announcement of openSUSE Factory becoming rolling
distribution[1], KIWI-LTSP, LTSP implementation on openSUSE using KIWI
imaging now goes rolling too.

--Very long email follows.---

Updates below assumes you are familiar with setting up LTSP, if not
then see this: https://en.opensuse.org/SDB:LTSP_quick_start_12.2_Edu,
you basically need to set up network first and run kiwi-ltsp -c. All
the other available documentations are here:
https://en.opensuse.org/Category:KIWI-LTSP some may now be out dated.

So what does using factory mean? apart from getting the very latest
and the greatest of open source world:

1. kiwi-ltsp scripts and image description is adapted to build image
using openSUSE Factory as a base distribution, unlike before when the
latest released openSUSE version was used as a base.

2. New pre-built image packages are now available in both 64 and 32bit flavors


http://download.opensuse.org/repositories/server:/ltsp/openSUSE_Factory/x86_64/

kiwi-image-ltsp-boot64-Factory - 64bit kernel and initrd
kiwi-image-ltsp64-Factory  - 64bit system image

http://download.opensuse.org/repositories/server:/ltsp/openSUSE_Factory/i586/

kiwi-image-ltsp-boot32-Factory - 32bit kernel and initrd
kiwi-image-ltsp32-Factory  - 32bit system image

Both 32 and 64bit images can be installed together to serve it to
clients supporting those archs. 32bit image can be used for 64bit
clients as well.

On non-factory openSUSE distribution(openSUSE_13.1 for example)
install the packages using rpm/zypper after downloading the packages
from factory repository, Add openSUSE 13.1 server:ltsp repository as
below, DO NOT add factory repository.

zypper ar 
http://download.opensuse.org/repositories/server:/ltsp/openSUSE_13.1/server:ltsp.repo
zypper in kiwi-ltsp
rpm -Uvh 
http://download.opensuse.org/repositories/server:/ltsp/openSUSE_Factory/i586/kiwi-image-ltsp-Factory-15.1.i586.rpm
http://download.opensuse.org/repositories/server:/ltsp/openSUSE_Factory/i586/kiwi-image-ltsp-boot-Factory-15.1.i586.rpm

3. As always, we support AOE, NBD and NFS root. Add the fullimagename
to the list of available profiles:in /etc/sysconfig/kiwi-ltsp as
below:

LTSP_PROFILES="i386 fatclient kiwi-ltsp-factory-x86_64-Build15.1"

To use the prebuilt image with NFS, extract the
/srv/kiwi-ltsp/fullimagename.img using unsquashfs and move the
resulting squashfs-root to fullimagename-nfs

for example:
cd /srv/
unsquashfs /srv/kiwi-ltsp/kiwi-ltsp-factory-x86_64-Build15.1.img
mv squashfs-root kiwi-ltsp-factory-x86_64-Build15.1-nfs

Edit /etc/sysconfig/kiwi-ltsp

Change IMAGETYPE="NFS"

Run kiwi-ltsp -c to apply changes made in /etc/sysconfig/kiwi-ltsp,
this will create boot menu entries for all available images(profies).

4. To add packages or modify the client image, you have to unsquashfs
it first as above.

kiwi-ltsp --chroot fullimagename #(that is also profile name)

#add repositories
zypper ar http://download.opensuse.org/factory/repo/oss/ factory-oss
zypper in any packages you want

#update image
zypper dup

Make sure to keep boot images synchronized with the system image if
the kernel has been updated, either by installing latest prebuilt boot
image and renaming it to match the system image or creating a new one
by running kiwi-ltsp -n profilename.

#when done, to come out of chroot
exit


5. To create AOE/NBD image out of modified tree run mksquashfs as below:

mksquashfs /srv/fullimagename-nfs /srv/kiwi-ltsp/newimagename.img

You can then add newimagename to LTSP_PROFILES in
/etc/sysconfig/kiwi-ltsp and run kiwi-ltsp -c to make it available to
clients.

6. FATCLIENT or THINCLIENT?

To serve the image to fatclients add LTSP_FATCLIENT=true to

/srv/tftpboot/KIWI/root.default/etc/lts.conf

7. If you are updating from earlier distribution then note that
dnsmasq replaces tftp and dhcpd, it should be automatically set up, if
you do not wish to use dnsmasq and want to continue the existing tftp
and dhcp setup export USE_DNSMASQ=no before running kiwi-ltsp script
or add it to /etc/sysconfig/kiwi-ltsp file.

8. You can run kiwi-ltsp on any other distribution, for example to
test it out on your existing LTSP infrastructure without installing
openSUSE you can do the following:

* install rpm2cpio package

* Download both the system and boot image rpms from the links above

* Extract the rpms
    rpm2cpio kiwi-image-ltsp-boot64-Factory-15.1.x86_64.rpm | cpio -i -d
    rpm2cpio kiwi-image-ltsp64-Factory-15.1.x86_64.rpm | cpio -i -d

* Copy srv/tftpboot/boot to your tftpboot's folder(/var/lib/tftpboot/
on Ubuntu for example)
Add the section like this to your boot menu in pxelinux.cfg/default

LABEL kiwi-ltsp-factory-x86_64-Build15.1
     kernel boot/linux-kiwi-ltsp-factory-x86_64-Build15.1
     append initrd=boot/initrd-kiwi-ltsp-factory-x86_64-Build15.1
AOEROOT=/dev/etherd/e2.1  quiet splash plymouth:force-splash showopts
init=/sbin/init-ltsp
     IPAPPEND 2

If you are running AOE, for NBD, NBDROOT=SERVERIP;NBDEXPORTNAME, or
NFSROOT=SERVERIP;/path/to/extracted/squashfs-root, you'd of course
have to setup AOE/NBD/NFS accordingly.

* Create KIWI/root.default/etc/ssh/ folder in your tftpboot and copy
ssh_known_hosts from your existing ltsp image.

* Create KIWI/config.default with this content:

CONF="/KIWI/root.default/etc/ssh/ssh_known_hosts;/etc/ssh/ssh_known_hosts,"
ALLOW_CMDLINE_OVERWRITE=YES


Add UNIONFS_CONFIG=tmpfs,nfs,unionfs to that file if using NFSROOT.

You can add more files to CONF line that you would like to copy into
the client image at boot time.

Have a lot of fun...

-J

[1] https://news.opensuse.org/2014/07/29/factory-rolling-release/
[2] https://en.opensuse.org/Portal:KIWI-LTSP

------------------------------------------------------------------------------
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
_____________________________________________________________________
Ltsp-discuss mailing list.   To un-subscribe, or change prefs, goto:
      https://lists.sourceforge.net/lists/listinfo/ltsp-discuss
For additional LTSP help,   try #ltsp channel on irc.freenode.net

Reply via email to