Archive for the ‘UNIX’ Category

More thoughts on OS’s

August 28, 2009

Long time, as usual 😦

During the summer I’ve been using OpenSolaris (now at snv_118) on my laptop and it has worked just fine. Sometimes X crashes on resume, which is mildly irritating… Whats more irritating and infuriating is that Firefox dies pretty often… The page you get when you restart it says it all: “Well this is embarrassing…”

I also got mplayer to compile, so now I can enjoy a movie or some TV-series again. VDPAU however doesn’t work that well, but i have great hopes for that. I also got tired of the bad battery life so I bought a shiny new 9 cell extended battery and can now get 3+ hours on battery, Thats very nice πŸ™‚ Now I just hope they fix CPU-frequency scaling and implement a tickless kernel in OSOL. The cpu-freq is almost there, but there are things that can improve.

Since I maintain some FreeBSD machines at work I’ve been following the progress towards 8.0, and so far it’s looking good. I even decided to give it another try on the laptop, but alas, suspend-to-ram still didn’t work ( I tested on 8.0-BETA3-amd64 ), perhaps i386 is further along… So that still rules FreeBSD out as a laptop OS for me. I’ve also grown rather fond of the init and service management in opensolaris.


OS differences

April 7, 2009

Over the last couple of months i’ve been using GNU/Linux, FreeBSD and OpenSolaris. All of them are Unix-like OS’s so there are similarites but there are also a lot of differences.

The first Unix-like OS I ever used was Solaris 9. It was the default OS on the computers in uni. I felt at home right away and so spent a lot of time installing GNU/Linux on a spare computer at home. So much so that I failed an exam… I also didn’t choose the easiest way as I installed Gentoo.Β  That was the first time I ever installed a Unix-like OS. It was also in the middle of the switch from Linux 2.4 to Linux 2.6, which was a bit frightening… I have however been using Gentoo ever since.

One of my employers is really pro-FreeBSD, so he got me interested in that. This was about 2 years ago. It was a bit different than GNU/Linux, so it was kinda hard to get used to, and my hardware wasn’t really supported so I dropped it. Recently I have installed a couple of servers for the same guy, and of course FreeBSD was the OS of choise. As a preparation for that I made a new install on my current laptop, which has better support.Β  This was right about when FreeBSD 7.1 was released. Somehow I found it more manageable and more logical πŸ˜‰ It is a really nice OS with high quality software. It feels much more like a consistent OS than GNU/Linux, which sometimes feels very unwieldy and unorganized… From time to time I also try out OpenSolaris. I thought I should gather my thoughts on these 3 OS’s.

Some thoughts kernel-wise:

FreeBSD: Has a long tradition and proud heritage from BSD. It feels to me that the development is somewhat slow. Recently the ULE scheduler was choosen as default, which makes threaded applications scale very well indeed. Still has some oddities, like a kernel crash when removing a mounted USB-stick… Not so user-friendly, but I believe that it’s beeing worked on for the 8 series.

Linux: Has a huge developer base and moves rapidly. There is always this feeling, this kinda’ works, try next version. Sometimes a percieved lack of QA rears its ugly head. Has the best hardware support ( for consumer grade equipment, at least ) of the 3.

Solaris/OpenSolaris: Obviously strong backing by SUN, has an excellent track record for stability. The engineers at SUN has put in some great technologies, like ZFS and DTrace. Lacks support for many consumer grade products, which makes it a gamble for ordinary users. The tide is turning though.

Some thoughts distribution-wise:

GNU/Linux: A multitude of distributions. I would love to see more integration and tighter cooperation. I don’t really see a need for so many. It distracts developers of third party software who sadly must know the internals of many distros. It also distracts developers who could spend time on kernel/userland to do distribution specific stuff.

FreeBSD: Really just 2 distros, FreeBSD and PC-BSD. The FreeBSD distro has in my mind a very good filesystem layout: Everything not part of the base system resides in /usr/local. There is always a defined state of the base system, so third party devs have an easy job.

OpenSolaris: There are a few distros. I’ll stick to OpenSolaris. The filesystem layout is all over the place, you never know where to find stuff: is it in /usr/ccs/bin/ /usr/ucb/bin /opt/bin or wherever. OpenSolaris also has /usr/gnu/bin which has some very interesting effects on compilation of third party software, like configure finding /usr/bin/ld which is a symlink to /usr/gnu/bin/ld and so determines that ld is gnu ld, but as gcc is compiled with sun ld, things break badly. And why do they insist that home is /export/home/username?

Some thoughts package-management-wise:

GNU/Linux: Where to start. There everything from LFSΒ  to apt. I generally like portage over all the others. Don’t get me started on RPM-hell.

FreeBSD: Ahh, ports. The main inspiration for portage. This is really good too, and has gook support for binary packages for the lazy ones. As does portage.

OpenSolaris: Well, this apt clone isn’t that bad. It just lacks lots of software for end users.

So all in all I would like an OS like this:

Kernel technology from OpenSolaris, driver support from Linux ( but with SUN QA ), and file system layout from FreeBSD with package management from either ports or portage. Why is there not an infinite amount of spare time to work on this?

General update

January 15, 2009

So, long time, no news 😦

What has happend since last time? Not too much. I tried using OSOL as my main OS, and did so for a while. I still like the technologies at work, but I’m not as happy with the distribution. Why do they insist on using xorg 1.3?

Apart from that I don’t like gnome, and compiling KDE from svn seemd like too much work with all solaris specific things. So after a while I went back to linux, and decided to try ubuntu, just to see what all the buzz is all about.Β  I didn’t get it, nothing was as simple as it was supposed to be, and worst of all was the sound. It just refused to work properly while using mplayer 😦

So after building a good gentoo base system I went back to gentoo. Seems that I’m stuck with it πŸ˜‰ And thats not a bad thing, I really like it.

After some more time FreeBSD 7.1 was released so I just had to try it. And I kinda like it. I had some problems, like not being able to install the nvidia binary drivers. A bit annoying. Then boost gave me some weird problems like “concurrency error”. And worst of all, suspend to ram is not working on SMP kernels. Not very good for a laptop 😦 If I find the time maybe I’ll migrate to 8.0-CURRENT and see if that gives me working suspend to ram.

Well, that’s all for now. Hope to work out some of these issuses soon.

OpenSolaris snv_97

September 18, 2008

I recently found that I have a bit a of problem. Having an OS you can fiddle with means that you will, which means that the time needed to code the handin assignments in school drasticly decreases. Not good. So I updated my osol install and started working.

After installing some development tools it was time to go to school, and i found the ‘suspend’ button. And it worked, yay! I can’t use an OS without a working suspendtoram. The only problem is that nwam seldom works correctly on resume. I often need to manually restart it and the plug and yank an ethernet cable 😦 It also seems to lack support for more advanced authorization like WPA2+peap+mschapv2 that is used in school.

And the sound is still borked. I know there is a fix ( see the comments to my first post ), but that file was now longer available. So that is a bit bad, altough i dont strictly need sound it is kinda nice.

It also seems that my synaptics touchpad is not recognized, so no scrolling. This is bad, i really like and use that feature…

My editor of choice for developing code is emacs, which is still sadly missing from ips. I know vim is a good editor too, but i dont have time to learn it ( it is rather different… ).

I also started customizing the desktop, found a really nice theme (imetal) so i installed that. But I also wanted awn and the macmenu-applet, which aren’t in ips either. And after adding all deps needed to compile them, none of them compile :(. But I think that awn is scheduled to be included in an upcoming release.

So the real showstoppers is the lack of emacs and the malfunction of nwam. Otherwise i could use osol full time.

KDE4.1 update

August 26, 2008

Having used KDE4.1 for some time now I’ve grown accustomed to the changes and found some fixes to performance problems.

After reading this link and a recompile of qt-4.4 and all of KDE4.1 kwin no more uses ~80% cpu for no apparent reason. It does hower still use a hefty amount when dragging windows around…

After updating to nVidia’s latest beta drivers (177.67), things are now starting to work smoothly. I can now resize a window and not have to wait 10 seconds to see the results. So even nVidia are improving, thats nice. It’s just a shame the put themselfs in this position at all.

One thing with KDE4.1 I really don’t like is Kontact. It segfaults daily, and for no apparent reason. Since I built it without debugging symbols I can’t provide any useful backtraces, sorry. I also don’t like the changes in akregator: I dont want have a separate column for unread, just put that number right next to the feed name as in akregator in KDE3.5 please.

I also think that 4.1 uses to much screen area. I’d like the ‘Toolbar from current window’ at the top of the screen ( OS X lookalike ) but with the ability to add systray to it. That would enable me to get rid of the panel altogether and hence minimizing used screen area.


August 15, 2008

So today I installed an alpha version of PC-BSD, which is based on FreeBSD 7. It was a really easy to use installer which allowed for zfs based file systems. It also includes KDE4.1. I must say that KDE4.1 is much smoother on *BSD than on linux. What the **** are nVidia doing with their drivers?

It seems however that PC-BSD didn’t like the disk i installed it on ( a usb attached 120 gb ata disk) and spits out lots of “SCSI error…”

Maybe I’ll wipe my OpenSolaris install of my internal HDD and install FreeBSD there instead as I need to learn a bit about it for future possible jobs. I’ll then install OpenSolaris on the USB drive and see if it fares better.

OpenSolaris snv_94

August 10, 2008

It’s been a while since I used OpenSolaris, since I had to do some maintainance work on the computer which included wiping the disk. But now I’m back up fully running and updated.

One noticeable improvement is that compiz runs a lot smoother now than stock OS2008.05, ie. it no longer takes to second to maximize a window πŸ˜‰ I wonder if it is improvements in OS or in the nvidia drivers…

I also had me silent wishes fullfilled: a reboot option is now available when one choose ‘turn of’, yay!

OpenSolaris snv_90

June 23, 2008

So a while ago the upated my OpenSolaris install to snv_90. I, as many others, ran into to the no boot upon reboot.

The solution is quite simple: After running
$ pfexec pkg image-update
You get a new boot environment, as shown by
$ beadm list
If this is the first ‘image-upate’ your new boot environment will be named opensolaris-1. Now lets fix it:
$ pfexec mount -F zfs rpool/ROOT/opensolaris-1 /mnt
$ pfexec /mnt/boot/solaris/bin/update_grub -R /mnt

Now your ready to reboot into the new boot environment.

The process of doing a image-update is a bit painful, if a package times out or anything else goes bad, you have to redownload everthing. Pretty bad on 1 Gb of packages… But I hear that this is being worked on. Hope it gets done soon.

After this update I noticed that the cpu frequency scaling was working, yay! I got it working by adding
cpupm enable
cpu-threshold 15s

to the file
and then run
$ pfexec /usr/sbin/pmconfig

nVidia driver update

June 19, 2008

So I updated my gentoo system and was happy to see an updated nVidia driver. The 169.12 version wasn’t all that good: it was stable but didn’t really deliver any speed. Compiz was unusable, it took 2 seconds to maximize a window (with a quadro fx 570m). Compiz is so much smoother with anΒ  Intel X3100 card. The update fixes some problems (window resizing is now endurable) but is still way behind the intel card. Shame on you nVidia!

OpenSolaris 2008.05

May 29, 2008

Two installations of OpenSolaris 2008.05

General thoughts and impressions

After a long wait Project Indiana released there stable distribution, OpenSolaris OS. I tried both the in-preview199 and in-preview2 so I had rather high expectations on the final product. I headed over to and downloaded the os200805.iso file. Burned the CD and booted. So far so good.

The install process is smooth, as you’re booted into a fully working X environment, which has all the standard Gnome programs/tools you might expect and further more: A web browser, a device driver utility to check hardware compatability and an ‘install OpenSolaris’ option.

The installer takes you through initial config, such as setting up root password, adding a user and setting time zone and keyboard layout. The partioner is a bit narrowminded to my taste, as it only
allows to create Solaris partions or ‘unused space’. It would also be nice if there was an option not to toggle the boot flag ‘on’ for the solaris partion.

The regular boot process works nicely, although it would be very nice with a graphical boot progress screen. Think Apple’s white standard or some nice from the GNU/Linux camp. It should at least be possible to change resulotion of the console.

The package manager in OpenSolaris is a bit unintuitve for me coming from a GNU/Linux background (mostly Gentoo, occasional Ubuntu just for testing). The packages have kinda’ strange, enterprisy naming scheme which makes it pretty tricky searching for them. The GUI makes things
a lot easier, but personally i would have liked OpenSolaris to go with apt (synaptic), yast or portage (not in any specified order), since they are stable, flexible and foremost have a lot more packages to offer. But I guess this choice is due to the legendary Solaris backward compatability. And probably also due to the fact of integration with ZFS. It’s really nice with the boot environment
concept, but I wish that the beadm command would leave my partion setup alone. It tends to toggle the bootable flag and set it to on for the solaris partion.

I found it a bit amusing and annoying that to install top you first need to add an authority (another package repository) to the package manager and then ‘pkg install IPSFWtop’ (depending on which external package repository you choose. A Unix without top?!

I would have liked to see a version of OpenSolaris shipping with KDE too, as I’m not that fond of Gnome. I guess I’m just one of those guys πŸ˜‰

Technical stuff

Even though I might sound a bit sceptic I’m really rather impressed with OpenSolaris 2008.05. There is great potential here. Some things exists here that I really miss in Linux, such as ZFS, DTrace and last but not least the seamsless integration of 64/32 bit apps. No more ‘Can I boot this OS on this machine?’

Even though ZFS is close to breaking one of the fundamental UNIX rules (let one program do one thing, but really well) it does so on purpose. The integration of a volume manager in the filesystem allows for some really innovative stuff. All in all ZFS is pretty revolutionary and should probably make almost all other FS’s run away and hide. I however found one thing that annoyed me a bit. If you assemble a raidz array of four drives and then have the possibility to add four more drives it turns out that zfs can’t add them to the same raid. It does however create a new raidz array and then adds that to the storage pool. With Linux software raid 5 it is possible to extend the array with new drives.

DTrace is a bit over my head as a daily user but I can see that it has its uses, especially for developers. Actually a lot of them. From now on I would say that a UNIX or UNIX-like system is not complete without a working DTrace implementation.

All in all there are some really spectacular things in the Solaris codebase. Just today I read how a developer used a SUN LDOM Guest to work on an implementation of GRUB on Sparc.

I did install OpenSolaris on two machines. What follows is some machine/install specific issuses/thoughts.

Desktop, older hardware
The hardware:

2.53 GHz Intel Pentium 4 cpu
512 MB ram
60 GB hdd (gave 16 GB to OpenSolaris)
nVidia Geforce 4 4600ti graphics card
Creative Labs Soudblaster Audigy sound card
Generic ps2 keyboard
Logitech MouseMan Wheel usb mouse
Onboard Intel Pro 100 ethernet card.

The install process feels rather sluggish, it took me about 90 minutes from the time i powered on my computer to the restart. A comparable binary linux distro uses no more than 30 min (actually the Ubuntu Hardy Heron 8.04 finished in 21 minutes, with me having do the partitioning manualy so to not erase the OpenSolaris OS), but it’s a one time thing so I guess one can live with it.

Mouse and keyboard work flawlessly. Graphics works, but no 3D acceleration. I really would like to have the installer set up proper support for my nVidia card. As it turns out it probably did, only my
card was to old. The shipped drivers do not support Geforce 4 cards. So I had do work a bit for 3D, see below. The only thing not working is my pretty standard Creative Labs SB Audigy sound
card. Sound is nice, so I would like for it to work. Seems like it should be supported through the oss package.

How I got 3D working:
After restart I found the ‘nvidia-settings’ program, which failed with not finding a xorg.conf and sugested running nvidia-xconfig, which created a new xorg.conf in /etc/X11/. Upon restart I had no X. Notvery nice 😦 So I had to remove the file by hand and then parse /var/log/Xorg.0.log to get the default config-file and move it to a proper location. Then head to nVidia’s site and download the legacy nVidia drivers, uninstall the default nVidia drivers and then install the downloaded drivers. Now I have 3D working, yay! I wonder how the support for ATI cards are. Since the and mesa packages shipped are pretty old by now I don’t think there is support for mesa hardware acceleration in there yet (need version >7). It would be very nice if the IPS tree containd a NVDAgraphicslegacy for users of old nVidia cards.

The bootup time is acceptable at 58 seconds to the login screen from grub menu, but not as quick as ubuntu which uses 38 seconds.

Ubuntu nicely enough brings me a GUI with a massive 70 updates, and another GUI helping me set up nVidia proprietary drivers. So OpenSolaris falls a bit short on the useability front in comparison.

Laptop, newer hardware

To be fair to OpenSolaris I installed it on my laptop, which is a Lenovo Thinkpad t61p 8891-CTO with the following hardware:
2.00GHz Intel Core2 Duo
3GB Ram
80 GB HDD (gave 21 GB to OpenSolaris)
nVidia Quadro FX 570M 128MB
Intel hd audio

The install here was a bit quicker, at only 37 min. Unfortunatly I don’t have another spare partition to install Ubuntu on for comparison ( I already have Gentoo and Windows Vista on there + the 21 Gb partion OpenSolaris now uses)

Here the nVidia drivers work out of the box so enabling desktop effects work perfectly. Without beeing able to benchmark it I dare say that OpenSolaris/Compiz is far more responsive than Linux/Compiz, although the flawed nVidia driver architecture shows its true colors, it takes 2 seconds to maximize a window… Without desktop effects activated it’s instantaneus.

The audio is still a no go, so I downloaded the oss package from 4Front Technologies as suggested by different sources. Installation went smooth, but resulted in a very high beep. Only hitting the mute button makes it go silent. A reboot didn’t help, still a loud beep. So still some work to be done there.

Since this is a laptop power managemnet is crucial. So I tried to get CPU frequency scaling working, which according to
should be pretty simple. Well, it doesn’t work 😦 It would also be nice with working suspend/resume, but that does not seem to be available either.

The Synaptics touchpad weren’t detected, so no scrolling, but it works as a regular touchpad.

The wireless works out of the box, even with wpa. Nice work! Unfortunatly there seems to be some dns resolving issuses on reboots. To get things working again I have to do something like
‘pfexec svcadm restart nwam’ wait a few seconds and then it works again. Or plug and unplug the ethernet cable. Why not use NetworkManager? It’s pretty stable.


All in all I’m not really sure what to think about this release, or rather who it’s intended for. It’s an easy way to test a Solaris based OS, but not really an alternative to a full Linux Distro. There’s not
enough hardware support nor is there enough packages around. If you’re developing for Solaris I guess it’s a good base, and then you probably know the package naming scheme by heart so that wont give you any problems either but nor would a normal Solaris 10 install daunt you.

I probably wont start to use it as my main OS in the forseeable future, but if I had servers in need for a stable OS I wouldn’t hesistate trusting OpenSolaris to get the work done. And if I had a company I’d seriously consider using it as OS for desktop usage as well.

Why wont I use it as my main OS: Well, it does lack fully working power management and suspend/resume, many of the programs I use on a daily bases are not in IPS (and I don’t really have time to build all of them) and it shipps with GNOME only.