Dotsch/UX a Linux distribution, based on Ubuntu Linux.
The purpose is to make a Linux distribution for BOINC which easily installs and boot from a USB stick, hard disk and
from diskless clients and also has some interfaces to setup the diskless server and the clients automatically.
Features & Facts :
• Small memory usage : The OS requires about 64 MB plus the memory for the BOINC client and BOINC science
application. The graphical GNOME desktop requires about 128 MB more. - In general the memory depends strongly
on the project(s) you would like to crunch...
Recommended minimum 128 MB for diskless, HDD and USB Stick based systems and 256 MB for disksless servers.
• Small disk usage : The distribution fits on a 1 GB USB stick, but 2 GB would be good for multi BOINC project
crunching. The HDD installation requires about 2.5 GB, and the diskless server requires 1.5 GB plus 1.5 GB for
each diskless client you would add.
• Easy installation : The OS could be easily installed by several included tools on a USB stick, hard disk, and
setup as server for diskless clients.
• Server for Diskless clients : The server and diskless clients could easily installed with several included tools. Only
the main configuration parameters must be specified, the diskless server and clients installs automatically.
• Additional proxy server : Preconfigured proxy server, which allows to separate the BOINC USB, diskless and
HDD systems in an isolated network, and communicate through the proxy server with the science project
servers
• Ubuntu based : As Dotsch/UX is based on Ubuntu, you can also install additional Ubuntu packages or update to
your USB/HDD/Diskless systems.
• BOINC Client : The BOINC client comes pre installed and would be started as daemon and would be monitored
and kept alive from this daemon. Dotsch/UX 1.0 includes the BOINC client 6.2.15. Dotsch/UX 1.1 includes the
BOINC client 6.4.5 for CUDA support.
• Graphical Desktop and text console : If you like, you can choose between the text console (for lower memory
requirements) or the graphical GNOME Desktop.
• SSH : ssh login per default preconfigured.
• 32+64 bit distribution : A distribution of 32 bit (386) and 64 bit (x64) is available. With Dotsch/UX 1.1 it‘s possible to
add mixed 32 and 64 bit diskless clients on the same diskless server.
Download :
• Dotsch/UX 1.1 i386 - 566 MB ISO Image (md5sum : bb8f039bdfe6c78309cadbd81cfa9915)
• Dotsch/UX 1.1 x64 - 603 MB ISO Image - x64 (md5sum : 7e7bd5751164f9001d1417f70bcf3d55)
„sudo cp pxelinux.i386.cfg /opt/dotsch_ux/templates/“ till I have fixed this in the ISO files.
• Dotsch/UX 1.1 Patch i386 - 22 MB - i386
This patch updates Dotsch/UX 1.0 to 1.1. The patch includes a bundled BOINC client 6.4.5, DHCP server for non
diskless systems, mixed i386/x64 diskless clients, updated documentation bugfixes.
Patch Download will be soon available.
• Dotsch/UX 1.0 i386 - 500 MB ISO Image (md5sum : 4cc2e7f40e2b71a958c34c9a7a3448f6)
Screenshots :
1. Introduction
1.1 USB Diskless
Dotsch/UX can be installed by a few steps on a USB stick. Minimum USB Stick size 1 GB, recommended 2 GB.
The installation requires about 560 MB for the i386 OS image and 600 MB for the x64 OS image, a second image on the USB stick (about 200..500 MB) for OS changes, OS updates and your data, plus a separate image (recommended 500 to 1 GB) for the BOINC installation.
The size of the BOINC image depends strongly on the BOINC projects you would crunch !
The data will been immediately written to the USB stick, so you have not any data loss.
1.2 Hard disk installation
Dotsch/UX could also easily installed on a hard disk. It requires about 2.5 GB disk space.
1.3 NFS (Network) Diskless
For a NFS diskless installation a hard disk installation on a server is required. After you have installed the OS on the
hard disk, you have got to edit the global config file with your configuration parameters and install the diskless server
by starting a script, which setups your configurations automatically.
The installation of a diskless server requires additionally 1.5 GB for each architecture on the hard disk, plus 1.5 GB for each diskless client you add.
Recommended minimum memory : 256 MB for text console, 384 MB for graphical desktop
Recommended memory : 512 MB for text console, 768 MB for graphical desktop
For the server setup, edit and customise the config file /etc/opt/dotsch_ux/diskless.conf and apply the changes with the server setup script (/opt/dotsch_ux/bin/install_diskless-server.sh), which would configure and install the NFS, TFTP and DHCP server which would be required for the diskless server, automatically.
After the server setup, it‘s possible to add diskless client(s) to the server via the script (/opt/dotsch_ux/bin/add_disklessclient.sh). This tool installs the diskless client automatically.
How it works :
• The diskless server offers a DHCP server for the assignment of the IP addresses, network configuration, PXE
boot images. The DHCP server would be configured via /etc/opt/dotsch_ux/diskless.conf
Configuration via /etc/opt/dotsch_ux/diskless.conf
• The TFTP Server offers the PXE boot images and kernel images to the clients.
The data for the TFTP server is located in /diskless/tftpboot.
Configuration via /etc/opt/dotsch_ux/diskless.conf
• The NFS Server offers the whole OS instance to each client via NFS.
The client root directories are located in /diskless/<CLIENTNAME>.
In /diskless/master.i386 or /diskless/master.x64, is the Dotsch/UX master image for each architecture copyied on your
hard disk at the initial diskless server installation. The image would be used for setup the other diskless clients. You
could also make some modifications in /diskless/master to customise your configuration, if you would like to.
Via „sudo add_arch.sh“ you can later also add additional architectures and server different architectures on the same
diskless server.
Configuration via /etc/opt/dotsch_ux/diskless.conf
Some sample network topologies :
1.4 Special Configurations
1.4.1 Proxy Server
If you wish to use a separate (isolated) network for the diskless clients and the internet connection, for example to separate the diskless clients for security reasons, you can easily install a proxy server. The clients on the internal network communicates through the proxy server with the science project serves.
The proxy server is preconfigured and could be easily configured for your subnet with the included tool. For security reasons it is also possible to restrict the traffic through the proxy server.
Proxy server setup is possible on Hard disk and USB systems.
1.4.2 DHCP Server
If you would like not to configure your IP addresses manually and have no router or DHCP server for automatically IP address assignment, you can easy install a DHCP server on a HDD or USB system.
2. Installation
2.1 USB stick installation
2.2 HDD Installation
2.3 NFS Diskless installation
2.4 BOINC configuration
2.5 Install Patches
3. Special (optional) configurations
3.1 Proxy Server
3.2 DHCP server
3.3 VNC
4. Tips and tricks
• Disable GNOME desktop : The GNOME desktop is enabled per default on a HDD and USB Installation, and disabled
per default on a NFS diskless system.
To enable the graphical desktop at boot time : sudo mv /etc/rc2.d/s30gdm /etc/rc2.d/S30gdm
To disable the graphical desktop at boot time : sudo mv /etc/rc2.d/S30gdm /etc/rc2.d/s30gdm
Or disable/enable the GNOME Desktop temporarly : sudo /etc/init.d/gdm stop / sudo /etc/init.d/gdm start
• Enable/disable GNOME autologin : Per default the User BOINC would be automatically login after the boot on
Dotsch/UX 1.0, since Dotsch/UX 1.1 it‘s disabled due security reasons.
To enable/disable the autologin : Select „System“ / „Administration“ / „Login Window“ in the GOME menu. Select
the bar „Security“ and enable/disable the option „Enable Automatic Login“
• Sudo handling : The user boinc is configured to administer the system via the sudo configuration. The password of
the user boinc is required to make changes.
Insure the command „sudo apt-get update“ to update and snyc the repositories.
• The powernowd daemon for power management and CPU scaling was not removed by me. This cause the
problem, that the CPU scaled down and did not get the full throughput. Please issue „sudo apt-get remove
powernowd“ to fix this problem. This problem was fixed in Dotsch/UX 1.1.
„sudo cp pxelinux.i386.cfg /opt/dotsch_ux/templates/“ till I have fixed this in the ISO files.
• DHCP adderesses would been not automaticly assigned in Dotsch/UX 1.1. Workaround : Edit the config file
/etc/network/interfaces and add the statement „auto ethX“ before each iface statement, save the file and reboot the
system. For example a fixed config file :
auto lo
iface lo iface lo inet loopback
auto eth0
auto eth0 iface eth0 dhcp
auto eth1
auto eth1 iface eth0 dhcp
• Dotsch/UX 1.1 x64 Live CD did not eject the CD.- I am still investigating this problem.
5. Future developments
Prio 1
• Build in NVIDIA CUDA support or a tool to enable the NVIDIA CUDA support.
• Persistent Live CD mode for testing the distribution as Live CD and store the data on a USB stick or network share
• Automated and semiautomatic backup of the BOINC client data and some other OS data
• High Available Clustering of the diskless server (NFS/TFTP/DHCP/PROXY, Syslog...)
Prio 2
• Break the limit of 254 diskless clients
• Improved error and exception handling within the several scripts
• Syslog server
• Boot floppy for systems with old BIOSes which does not support boot from USB.
Prio 3
• Menu based administration interface
• WUBI installation side by side with a existing Windows installation
• Text only distribution
• Improved VNC Implementation
• Improved daemon/monitor for the BOINC client on each system
6. Changes in Dotsch/UX
6.1 Dotsch/UX 1.1
• Distribution for 32 and 64 bit systems
• Bundled with BOINC client 6.4.5. Default on the Dotsch/UX 1.1 ISO images. Must be manually upgraded on a
patched Dotsch/UX 1.0 system. See chapter 2.4 for a BOINC upgrade guide.
• DHCP Server for non diskless systems
• Updated documentation
• Mixed i386/x64 diskless clients on a single diskless server
• Bugfixes for the diskless server, diskless client and USB stick installation and USB stick hostname bug
• Patch and release handling
• NTP (Network Time Protocol) preconfigured
• GNOME Autologin disabled. To enable autologin have look at chapter 4. The default user is still boinc with the
password boinc
Special thanks to the Ubuntu team, David Anderson, Jord, Vipin P., Andy W., Cosmic_Ocean,
Eric M., Al, Dudumomo, Mike B. and the whole BOINC and BOINC projects community
for the help and support!