Mandriva 2009 and Freebsd 7.1 review

Mandriva 2009


I didn't get very far with Mandriva due to its very obtrusive and stubborn
partitioning system. The heart of an installation is measured by the
partitioning system it uses, where both openSUSE and Ubuntu shine. Ubuntu is
particularly good at understanding that you may have other operating systems on
partitions which you would like to consolidate rather than oblitirate.


 


Mandriva's
Draken partitioner, on the other hand, decided my existing partitions were so
corrupt it couldn't do anything but reformat everything and install itself in
place of everything else. Needless to say, I opted out of that option, and put
the dvd away where the sun doesn't shine. I then, just to confirm my hypothesis
that the partitioner was at fault, installed ubuntu, which immeditely picked up
all my other partitions (I had openSUSE, knoppix and freebsd already installed)
and labelled them correctly in Grub, allowing me to have my quadro-boot system.

FreeBSD
7.1

The last time I looked into the BSDs was probably more than 8 years ago, and
was eager to see how it fared compared to the Linuxes. The installation process
for FreeBSD is no trivial task, and I don't see anyone except really seasoned
geeks being able to install it, understanding what it is doing. The neat thing
though, is you can dedicate a single partition to  it, and let it do the rest. Once installed,
there was no automatic teleportation to the X windows system.


 


Instead, after
trial and error, I found I had to start X using the gdm command, but from a
root user only! I know I could have messed with permissions to get it to work
for a regular user and the like, but it was another complicated stumbling block
for beginning users. Once in Gnome, it looked like any other gnome environment,
except there was no easy graphical method for installing new programs.


 


I blame
a lot of this on my lack of experience in the BSD area. It has been too long
since I used it properly, so getting out a book and studying up would probably
have made my experience a little nicer. That said, freeBSD has 'beginner bsd
setups' that make life easier like PCBSD and easybsd.


 


 


Rate It! (Average 0, 0 votes)



Knoppix 6.1 - The review

At first glance, knoppix seems to really have it all together, with a realm of software, although organised in a barely discernable fashion. But out of the box, it was able to read all my peripherals and play back my mp3s and tv series without complaints about codecs. For all the other systems, this was a problem, as I was not near an internet connection so downloading the codecs was out of the question.


The Adriane system, which is a windows interface for the blind I take it, was impressive, and a great step in the direction of making a full system easily accesible to to the hard of sight or blind.


As for the general layout of Knoppix itself, the menus and the style choices including colour and themes, I was quite dissapointed. Nevertheless, I attempted to install the operating system to disk, which I know is unusual since knoppix has traditionally been known to be a live cd/dvd idea.


This is where my problems started. First, I had to partition everything by hand, seeing as I alread had another os on the drive. This was NO trivial task, even for a seasoned parted head like myself. First, it demanded a reiserfs partition for /, and then both that and the swap partition had to be turned on (mounted) before the installer would let me do anything. I spent a good 20 minutes figuring that one out.


From then on, installation seemed to go well, until it came to the grub part. I was cryptically asked whether it should just add an entry to my existing grub or make a new one. I naturally answered I wanteda simple addition to the system. When I rebooted my computer, I was greeted with no operating system found. Hmmm, I thought. So, being quite experienced with grub issues, I loaded up a live cd, entred command line, and did the typical, find /boot/grub/menu.lst. It found 2 of them on different partitions?!?


Perplexed as I was, I tried setting the root one to the partition knoppix was on. Reboot... same thing, no operating system. That was frustrating enough for me to pull out my trusty old ubuntu and install that, hoping it would find my other partitions and fix it all. Which it did. So.... knoppix may be a fine live dvd, but I would not recommend installing it unless you really like trouble. Once my bootloader was recovered though, knoppix was quite a delightful OS to work with. Easy access to the applications I needed for work were easy and fast to access, and I have the feeling that overall the system is quick and responsive in comparison to some of the other linux distros.


Knoppix curiously also has something called the knoppix terminal server, which looks and feels very much like a kind of LTSP server, but that just feeds fat knoppix images to other computers on the network. This would seem like a very useful feature which isnt very well documented and would be perfect for educational environments, if only the state of the applications was better. I hope to see more progress in that area in general. On a last note, it took me a good 15 minutes just to find out how to change my keyboard settings.


Rate It! (Average 0, 0 votes)



easy packaging with openSUSE's build service

Distros tend to have their own unique package management system, though some share a common base (Debian and ubuntu for example), but non can do what openSUSE's online build service does, which is build for most architectures and practically all distributions. Being able to edit a couple of files, upload them, and let the remote computer to the work is a dream come true. No longer do upstream maintainers have to build packages individually for every distro they want to support, not to mention architectures. They can follow a set of simple instructions that practically anyone can follow and have their software available on most major platforms and architectures. This document should show you how its done. It is assumed you are using openSUSE as your base distro. Special thanks go out to Jigish Gohil/cyberorg, for helping me understand these steps


The first step is to create an account with https://build.opensuse.org/ or if you already have one, log into it. Also, we need to add a little script that tracks changes by pasting the following into /usr/bin/changelog and editting your time zone and email address:


#!/bin/bash
EDITOR=vi
FILE=$1
COMMENT_FILE=$(basename $FILE .spec).changes
tmpfile=$(mktemp changelog-XXXXXX)
timestamp=$(LC_ALL=POSIX TZ=Asia/Kolkata date)
email=my@emailaddress.org
separator="-------------------------------------------------------------------"
{
    echo "$separator"
    echo "$timestamp - $email"
    echo
    echo "- "
    echo
    if [ -n "$COMMENT_FILE" ]; then
      if [ -f "$COMMENT_FILE" ]; then
        cat $COMMENT_FILE
      fi
    fi
} >> $tmpfile || exit 1
if [ -z "$COMMENT_FILE" ]; then
    lines=1
    CHKSUM_BEFORE=$(md5sum $tmpfile | awk '{print $1}')
else
    lines=$(wc -l $COMMENT_FILE | awk '{print $1}')
    CHKSUM_BEFORE=has_changed
fi
$EDITOR +$((4+lines)) $tmpfile
if [ "$CHKSUM_BEFORE" = "$(md5sum $tmpfile | awk '{print $1}')" ]; then
    exit 1
fi
cat $tmpfile > $COMMENT_FILE
rm $tmpfile

and changing the permissions of the file by doing:


 


sudo chmod u+x /usr/bin/changelog

 


Meanwhile, search the net for a package you are interested in building. It is suggested to start off with something easy, that already has the source available in rpms format, that is to say, is a package that contains the source tarball and a .spec file at least. Usually these packages look like this: package-name-version-distro-1.2345.src.rpm. Next you want to download that file to the desktop and extract it by right clicking and choosing extract here.


You can now open the .spec file which will contain the description required to build the package on rpm based systems, as well as the name and description of the package. In the opensuse build service (oBS) web page, choose create a project or subproject, and then add a package. Here you need to fill out the Name, Title and description. The name and title are usually the same and are normally just the name of the package without version number or platform. (For example, sugar-maze) Then in the description copy and paste the description you got from the .spec file.


Now its time to go to the terminal and do:


osc co home:username:subproject packagename
cd home:username:subproject/packagename
mv ~/Desktop/package-name.version.distro.src/* ./

 


Now we want to edit the .spec file and replace the line that looks something like this:


Release: 1.20090216%{?dist}

with these lines:


%if 0%{?suse_version}
Release: 1
%else
Release: 1.20090216%{?dist}
%endif

 


We will also need to add any missing requires and buildrequires. These are usually visible inside the oSB tool, when the build has been committed. That means one may need to go back and edit the .spec file, and then recommit the changes. Now we need to add an entry to the changelog, which tracks what you are doing to the package:


changelog package-name

The command interface here is vi based, so its i for insert, and :qw to write and quit. Next you will want to edit the metadata (this only requires doing the first time you build a package!):


osc meta prj -e home:username:subproject

You should change the content so it looks something like this


Finally we add the spec, changes and source tarball to the oBS:


osc add *.spec *.changes *.gz

and we commit it:


osc ci -m "uploaded new package"

Thats all it takes to have your package now building or queued to be building. If you want to create a package directly from a tarball, that is also possible, and it is suggested you use the spec file you created as the base that you will need to edit accordingly. While it is not in the scope of this document to explain how that is done, it is easy enough to duplicate a project, and use that as the base:


osc copypac home:username:subproject youroldpac home:username:subproject newpac

And then you can rename the .spec file, changes, and add the source tarball of the package you want to build. Then you can follow the same instructions above for uploading to oBS.


Rate It! (Average 0, 0 votes)



Opensuse 11.1 and its kiwi-ltsp review

My previous attempts at installing opensuse have been mostly fiascos, but a lot has changed in the latest incarnation, opensuse 11.1. Unlike its predecessors, I installed it to the hard disk using a live dvd, available here: http://download.opensuse.org/repositories/Education/images/iso/


After loading up the dvd, which takes a while to start up, one is greeted with a blank desktop with a couple of options for using the DVD. You can run the LTSP server straight from the DVD without installing anything to the hard drive. This works by serving pre-built kiwi images to the clients. I, however, chose to install to the hard drive by using the installer found on the desktop.


Unlike previous attempts, I was asked only a couple of questions such as timezone, keyboard settings, and partitioning schematics, before the installation process got underway. About 30 minutes later I restarted my computer and had a nicely functional desktop running gnome. I have 2 network cards, but those were easy enough to setup, by clicking on the bottom left computer menu, and then choosing network. The settings here are quite straightforward, and I had to set my 2 network cards to be either internal or external, and make sure the network settings were correct. I set my LTSP facing network card to internal, which is important for firewall issues, and then ran easy-ltsp. Here I had to change a couple of settings for my dhcp server, as the default serves a 10.0.x.x range, which is often used by routers, like mine.


After doing this, I plugged in a thin client, and it loaded up with no problems. On startup, the thin client gives some options such as boot from hard disk, turn apic off, shell prompt. If nothing is chosen, it loads up the thin client and you can start using LTSP. Setting up users is best done through the GUI, but can be done from the terminal using the useradd -m command, which is slightly different from Ubuntu, but has much more integration with LDAP, which is useful for larger setups. I went on to setup italc for ltsp client monitoring. Italc requires a keypair to be created and permissions to be set so anyone in the group italc can read the keys by doing:


ica -createkeypair
chgrp -R italc /etc/italc/keys/private
chmod -R 640 /etc/italc/keys/private
chmod -R ug+X /etc/italc/keys/private


This will probably be done automatically in the next incarnation of the livedvd, but for now, it has to be done manually, if you change your network settings from the default.


I also chose to setup samba for file sharing, which was quite straightforward, and as with other services, is best setup through yast. The defaults seemed fine for what I wanted, which was users home directories shared, using nbd password. The only annoyance I found here is that you have to set the username and passwords for the smb shares from the terminal. It is possible to set up LDAP to work with samba to provide authentication through a gui, but that seems overkill for smaller setups. To setup a samba user with password I did: smbpasswd -a nubae


Just for the sake of trying it out, I went through the process of setting up LDAP with samba to see if windows systems could then login with no problems. I followed this tutorial: http://digiplan.eu.org/ldap-samba-howto-v4.html


That seemed to work fine, though it realls is far too complicated for the typical home or school user. Setting the smbpasswd and using samba to directly authenticate is far easier and faster to setup. Taking it further than the fileserver, I also tries using ldap to authenticate the LTSP users when logging into LDM, and that worked great. If one is interested in using the fatclient option for LTSP, using LDAP is required.


One of the interesting options with opensuse's LTSP is the ability to choose different types of images, such as nomad or AOE. Nomad is a useful image type for thin clients because it allows for the network disconnection with the client without loosing data. That is to say, a user can continue using the thin terminal when the network comes back. AOE is used for fatclient implementation, where services and apps run directly on the client, as opposed to on the server. Of course, there is also the local apps possibility, whereby individual apps are chosen to be run directly on the client. Under opensuse this is very easy to setup, using the easy-ltsp configurator. The easy-ltsp configurator also allows for individual setting for thin clients, such as installation of printers and so on.


A quick glance at the applications available makes you realise there is almost everything one could wish for in an educational environment. There are almost too many edu apps available. It would have been nice to see some grouping of the educational apps, to make life easier for teachers, but the choice is a great start, and quite unique amongst distros. Lacking were some teacher tools, for creating educational content, but I have it on good authority that these will be included soon.


All in all, I was quite impressed with Opensuse and the wide variety of services it can run, be it as a fileserver, ltsp server, ldap server, or desktop machine. The educational software collection is impressive, and the ability to use many kinds of images via easy-ltsp makes it quite friendly to use. I would have to say that next to Ubuntu, this is the best implementation of LTSP so far. The only negative thing I can say is that Opensuse tends to do things in its own way, as opposed to following the upstream projects, but this allows it to be ahead of the game. I will certainly continue using it as my main desktop alongside ubuntu.


Rate It! (Average 0, 0 votes)