|
|
(16 intermediate revisions by 4 users not shown) |
Line 1: |
Line 1: |
− | {{Version|UCC=1.0}} | + | {{Version|UCS=3.2}} |
− | {{Cool Solutions Disclaimer}} | + | {{Version|UCC=1.0}} |
| + | {{Cool Solutions Disclaimer|Repository=no}} |
| + | {{Out of Maintenance|Current ThinClients have more than 1GB Memory. This article won't be updated anymore.}} |
| | | |
− | = Introduction = | + | == Archive == |
| | | |
− | Thin Clients may have smaller storage devices (i.e. Compact Flash or onboard Flash) than the default 1,2G of the UCC default image.
| + | There is a version of this article for [http://wiki.univention.com/index.php?title=Cool_Solution_-_XenApp/XenDesktop_on_Thinclient_with_only_1GB_Flash&oldid=12541 UCS 3.2 & UCC 1.0]. |
− | | |
− | This is an example for a thin client image for 1GB Flash supporting XenApp.
| |
− | | |
− | The configuration file, tested on a HP t5745(1GB), can be found at the bottom of this article.
| |
− | | |
− | == Software packages required ==
| |
− | Here we are going to create a small UCC Thin Client image targeting full Citrix support, tested in a HP t5745 with 1GB flash storage.
| |
− | | |
− | In a typical deployment, some of our customers often require these features in order of priority:
| |
− | | |
− | * XenApp Session (+Firefox), including german localisation
| |
− | * Typical ressoures: Sound, Flash, HDX
| |
− | * if possible special enhancements: truecrypt
| |
− | * if also possible RDP session as a fallback
| |
− | | |
− | == General procedure ==
| |
− | | |
− | For this we are going to need two diferent approaches, first we will use the ucc-image utility to build an image with an edited configuration file, and second we will manually install the packages left from the previous step.
| |
− | | |
− | = Step 1 - Configuration File =
| |
− | | |
− | This file is based on the official file for a thin client
| |
− | | |
− | /usr/share/doc/ucc-image-toolkit/example/ucc-thinclient.cfg
| |
− | | |
− | Please read [http://docs.univention.de/ucc-manual-1.0.html#imagegen:chapter UCC Manual Generation of adapted images].
| |
− | | |
− | The official images are also explained in [[Building_UCC_images]]
| |
− | | |
− | Another configuration file to generate a <1GB image [[Configuration_file_for_a_reduced-sized_thin_client]]
| |
− | | |
− | The image size is set at 794MB:
| |
− | | |
− | # Image size in GB
| |
− | size: 0.794
| |
− | | |
− | == Important packages ==
| |
− | | |
− | A graphical system is still installed, but without desktop manager:
| |
− | | |
− | packages_no_recommends:
| |
− | | |
− | univention-lightdm (Integration of lightDM login manager into UCC)
| |
− | indicator-session (Session management, status and user switching)
| |
− | indicator-power (Power state)
| |
− | | |
− | X window system (and input drivers)<br>
| |
− | | |
− | xserver-xorg
| |
− | xserver-xorg-input-mouse
| |
− | xserver-xorg-input-kbd
| |
− | | |
− | Drivers for some typical video card families
| |
− | | |
− | xserver-xorg-video-ati
| |
− | xserver-xorg-video-intel
| |
− | xserver-xorg-video-vesa
| |
− | xserver-xorg-video-nouveau
| |
− | xserver-xorg-video-sis
| |
− | | |
− | Audio server:
| |
− | | |
− | pulseaudio
| |
− | | |
− | Tools: (no sessions are installed in this step)
| |
− | | |
− | openssh-server (Remote secure shell (SSH) server)
| |
− | language-pack-de
| |
− | firefox-locale-de
| |
− | ntpdate (client for NTP time servers)
| |
− | libmotif4
| |
− | curl
| |
− | nspluginwrapper
| |
− | libcap2
| |
− | | |
− | UCC Cool-Solutions
| |
− | univention-ucc-status
| |
− | | |
− | Integration with the UCC domain, always required:
| |
− | | |
− | univention-ucc-theme (Univention theme)
| |
− | univention-corporate-client (Metapackage for client systems)
| |
− | | |
− | These are also essential:
| |
− | | |
− | # These packages will be installed
| |
− | packages:
| |
− | # Kernel
| |
− | linux-image-generic (Linux kernel image)
| |
− | # Grub
| |
− | univention-ucc-grub (Grub2 configuration)
| |
− | | |
− | == Repositories ==
| |
− | | |
− | If you want to include packages from the UCC Cool-Solutions Repository (e.g. univention-ucc-status from above), you need to [[Howtos_UCS_3.1#Integrate_the_Cool_Solutions_Repository_in_UCC|integrate the Repository]] in the image:
| |
− | | |
− | sources_list:
| |
− | [...]
| |
− | deb http://ucc.software-univention.de/unmaintained/component/ ucc-coolsolutions/all/
| |
− | deb http://ucc.software-univention.de/unmaintained/component/ ucc-coolsolutions/$(ARCH)/
| |
− | | |
− | You also need to include multiverse for some packages XenApp and Citrix Receiver require:
| |
− | | |
− | # Use multiverse repository?
| |
− | multiverse: true
| |
− | | |
− | == Name ==
| |
− | | |
− | Don't forget to rename your image:
| |
− | | |
− | # Name of output image
| |
− | name: ucc-%(version)s-thinclient-image-1G.img
| |
− | | |
− | == Partition scheme ==
| |
− | | |
− | /boot is set to 45MB. This is usually enough for one kernel, meaning that kernel updates should be performed by generating the image once again.<br>
| |
− | | |
− | partition2_name: boot
| |
− | partition2_size: 45
| |
− | partition2_fs: ext4
| |
− | partition2_mountpoint: /boot
| |
− | | |
− | <br> The slash partition (/) will take all the available space.
| |
− | | |
− | partition3_name: root
| |
− | partition3_size: expand
| |
− | partition3_fs: ext4
| |
− | partition3_mountpoint: /
| |
− | | |
− | The GPT would start at 2MB for alignment, and it will use 10MB of space. No "swap" partition is considered.
| |
− | | |
− | Now, after calling
| |
− | ucc-image -c thinclient-image-1G.cfg
| |
− | we will get the initial image, somewhere in the /tmp/ directory, e.g. /tmp/tmprUgkUj/ucc-1.0-rev2-thinclient-image-1G.img
| |
− | The precise path will be shown at the end of the image creation process. Alternatively, you can specifiy the target directory using the -t switch.
| |
− | | |
− | = Manual installation of extra packages = | |
− | | |
− | The idea is to first free some space used by apt-get and then temporarily mount additional disks so we get enough cache for packages.
| |
− | | |
− | That is to delete the cache of packages in var/cache/apt and var/lib/apt
| |
− | | |
− | First let us mount the image in /mnt/img/
| |
− | mkdir /mnt/img
| |
− | mount -o loop /tmp/tmprUgkUj/ucc-1.0-rev2-thinclient-image-1G.img /mnt/img/
| |
− | and free some space:
| |
− | chroot /mnt/img/
| |
− | apt-get clean
| |
− | should free var/cache/apt/archives/ and the lists we can delete manually:
| |
− | rm /var/lib/apt/lists/*
| |
− | there should remain a 'partial' directory in there
| |
− | exit
| |
− | | |
− | Second, let us create and mount the new filesystems
| |
− | dd if=/dev/zero of=/tmp/cache-apt bs=1M count=500 && mkfs.ext4 -F /tmp/cache-apt
| |
− | dd if=/dev/zero of=/tmp/apt-lists bs=1M count=500 && mkfs.ext4 -F /tmp/apt-lists
| |
− | Now they can be mounted
| |
− | mount -o loop /tmp/cache-apt /mnt/img/var/cache/apt/
| |
− | mkdir -p /mnt/img/var/cache/apt/archives/partial
| |
− | mount -o loop /tmp/apt-lists /mnt/img/var/lib/apt/lists/
| |
− | mkdir /mnt/img/var/lib/apt/lists/partial
| |
− | | |
− | The 'Citrix Receiver for Linux' and the 'USB Support Package' can be downloaded from [https://www.citrix.com/downloads/citrix-receiver/linux/ Here]
| |
− | Please copy them into the cache directory
| |
− | cp icaclient-12.1.0_i386.deb /mnt/img/var/cache/apt/
| |
− | cp ctxusb-2.2.0_i386.deb /mnt/img/var/cache/apt/
| |
− | | |
− | with all ready, we can go into the image
| |
− | chroot /mnt/img/
| |
− | Once inside we can install xenapp session (~200MB in this case)
| |
− | apt-get update
| |
− | apt-get install --no-install-recommends univention-ucc-session-xenapp
| |
− | Install the receiver and the USB support (the system outside the chroot should also be i386. [https://forge.univention.org/bugzilla/show_bug.cgi?id=31787 Bug])
| |
− | dpkg -i /var/cache/apt/icaclient-12.1.0_i386.deb
| |
− | dpkg -i /var/cache/apt/ctxusb-2.2.0_i386.deb
| |
− | | |
− | Create symbolic links for the browser plugin (the icaclient package itself fails to create them in this scenario):
| |
− | mkdir -p /usr/lib/mozilla/plugins/
| |
− | ln -s /opt/Citrix/ICAClient/npica.so /usr/lib/mozilla/plugins/
| |
− | | |
− | Now the image is complete, so we exit and unmount:
| |
− | apt-get clean
| |
− | sync
| |
− | exit
| |
− |
| |
− | umount /mnt/img/var/cache/apt/
| |
− | umount /mnt/img/var/lib/apt/lists/
| |
− | umount /mnt/img
| |
− | | |
− | Thanks to the 50MB buffer that the image has, other utilities as flash player can be added later, once the client is rolled out.
| |
− | | |
− | = Known Issues =
| |
− | | |
− | * client shutdown fails, the client needs to be powered off using the power button
| |
− | The reason is the indicator-power package is excluded as recommended when unity-greeter is installed.
| |
− | Adding this package to the list will add around 16MB extra space, but will activate the functionality.
| |
− | | |
− | = Further Info =
| |
− | | |
− | *[https://forge.univention.org/bugzilla/attachment.cgi?id=5362 794MB image configuration file]
| |
− | | |
− | *[[Configuration_file_for_a_reduced-sized_thin_client]]
| |
− | | |
− | *[[Building_UCC_images]]
| |
− | | |
− | *[http://docs.univention.de/ucc-manual-1.0.html#imagegen:chapter UCC 1.0 Manual - Chapter 8 Generation of adapted UCC images ]
| |
− | | |
− | *[http://wiki.univention.de/index.php?title=UCC-Quickstart_1.0 UCC 1.0 Quickstart]
| |
− | | |
− | *[http://wiki.univention.de/index.php?title=Univention_Corporate_Client UCC Wiki]
| |
− | | |
− | *[http://forum.univention.de/viewforum.php?f=65 Start a topic in the EN forum]
| |