OpenSolaris Tips and Tricks
OpenSolaris is SUNs attempt to pretend they are open source. This page should be a place holder for information concerning things like installation, administration and other peculiar things.
Some useful documentation can be found at the SUN Solaris website:
- [Developer] http://www.opensolaris.org/os/community/on/devref_toc/
- [Community Tools] http://opensolaris.org/os/community/tools/
- [OpenSolaris] http://www.opensolaris.org/os/community/documentation/
- [SUN] http://docs.sun.com/app/docs/coll/47.16
Setup
System Setup
One can use the Solaris Management Console for system setup:
/usr/sadm/bin/smc &
LDAP Setup Client setup is described here:
Zone Setup
- [Zones] http://opensolaris.org/os/community/zones/
- [Zone Examples] http://users.tpg.com.au/adsln4yb/zones.html
Network Setup
Useful documentation can be found at:
- [Network Setup] http://solaris-x86.org/documents/tutorials/network.mhtml
In order to get a network interface configured for dhcp do the following:
touch /etc/hostname.{interfacename}
touch /etc/dhcp.{interfacename}
ifconfig {interfacename} dhcp start
ifconfig {interfacename} dhcp status
Note: When setting up a server and name resolution does not work even though /etc/resolv.conf has been created correctly, try to do the following:
cp /etc/nsswitch.dns /etc/nsswitch.conf
This must be done in order for the system to use DNS servers.
Software Package Management
Software packages for OpenSolaris can be administered with the Product Registry GUI:
prodreg
- [Prodreg Guide] http://docs.sun.com/app/docs/doc/817-1985/6mhm8o5v5?a=view
The prodreg utility really sucks and there is a better way to install 3rd party software packages, namely with pkgadd:
pkgadd -d /cdrom/cdrom0/Solaris_11/Product SUNWbash
The previous command would add bash the bash package to the system.
Installation of SVN is described here, but it does not support SSL so install SVN through pkg-get (see next subsection):Proper Package Management for OpenSolaris
OpenSolaris base installation sucks! Since we want more cool software to run and a nice package management front end, pkg-get should be installed:
/usr/sfw/bin/wget http://www.blastwave.org/pkg_get.pkg
pkgadd -d pkg_get.pkg all
More information can be found at:
- [Package Management] http://www.blastwave.org/howto.html
sudo, vim and subversion with SSL support are easily installed through pkg-get.
Zone Manipulation
The zone manipulation commands are quite similar to the ones used for XEN:
zoneadm list -cv # list all zones and their status
zoneadm -z vfm boot # boot vfm zone
zlogin -C vfm # login to vfm zone over the console
Perl and CPAN Workarounds
The CPAN version distributed with OpenSolaris is terribly broken! The following checklist should help to configure CPAN:
- Make sure GNU make is used and can be executed as a root user. I just symlinked gmake into a directory which is in everyones path:
ln -s /usr/sfw/bin/gmake /usr/bin/make
- If you haven’t already done this during the openRTSP compile procedure do the following:
sudo ln -sf /usr/sfw/bin/gcc /usr/ucb/cc # this is a bug workaround for OpenSolaris
- Do NOT upgrade CPAN through the CPAN shell! You have to do it manually! Thus download the cpan module from cpan.org, and execute the following commands:
perl Makefile.PL
make
make test
sudo make install
- Change CC (C-Compiler) parameters which CPAN and Perl uses since they have options for the SUN C-Compiler which are not known to gcc:
sudo vim /usr/perl5/5.8.4/lib/i86pc-solaris-64int/Config.pm
....
- change cccdlflags from '-KPIC' to '-fPIC'
- change optimize from '-x03 -xspace -xildoff' to '-O3'
....
- Now you can start CPAN and install modules:
sudo perl -MCPAN -e shell
OpenRTSP
In order to compile OpenRTSP for OpenSolaris do the following:
genMakefiles solaris
sudo ln -sf /usr/sfw/bin/gcc /usr/ucb/cc # this is a bug workaround for OpenSolaris
Parallels and Qemu Installation
In order to install OpenSolaris in these virtual machines, it is necessary disable dma for cdrom atapi devices. For more information check this link http://www.inf.furb.br/~javito/?p=39.
Now it is Official
After signing the official papers my diploma thesis is official as of now. Even though it is going to be a lot of work to provide a clean, functional and good implementation, I am really looking forward to it. Especially after having messed around with and read about various compiler back end strategies.
Anyway, I am not dead but unfortunately I have almost no more time to blog. There are also some people I really really really have to send an E-Mail to and this right here is a promise that it will happen really soon!!!!
BSD vs. GNU or Non-Standard UNIX Options
Everyone who has to deal with various flavors of UNIX or UNIX-like systems knows about this dilemma and it is really starting to piss me off by now! Just to list a few annoying differences:
- GNU make and BSD make
- General UNIX commands like rm, mv etc. where the GNU people made nice and nifty but NON STANDARD extensions which people readily like to use
- ...
So every now and then I have to take a script from some system and use it on a system which adheres to UNIX standards and the disappointment starts because I have to go through it and remove all the non-standard options and replace them with logic which adheres to standards! That really is a waste of time because standards are there to guarantee compatibility between various UNICES and if you don’t follow such standards you are wasting MY TIME! End of rant!
Blogging with TextMate
A few days ago I installed TextMate and use it as my primary editor now. I have used Emacs for years and then switched to ViM for a few years. I will definitely not preach about how cool TextMate is but only say that it makes my life a lot easier :-) – especially when it comes to blogging since I can blog from within TextMate – instantly and without having to access the web. But see for yourself.
Mute Mac Bootup Sound
You are sitting in a lecture or library and would like to get you MacBook started up but you know that there is going to be this dreaded sound during the boot up which will instantly make everyone look at you. There is a very easy way out of this dilemma and it does not require any coding skills at all, namely:
YouTube.com
YouTube resembles a combination of Google and Flickr – namely a platform to store, search and share videos.
What makes it even more interesting for me, is the vast amount of Chomsky speeches and commentary he has given, which is stored there and can be readily viewed.
I would especially like to recommend Chomsky’s speech in Santa Fe from 2005.
MacBook Pro Missing Keys
Yesterday my MacBook arrived and I have to say I am very happy with it. There is just one big drawback, or let’s better say nuisance I have to get used to, namely the keyboard!
This is how to type the following keys:
- ‘{’ -> ALT+8
- ‘}’ -> ALT+9
- ’|’ -> ALT+7
- ‘[’ -> ALT+5
- ‘]’ -> ALT+6
- ’\’ -> ALT+SHIFT+7
- ’~’ -> ALT+n
If you are having trouble finding a key just try ALT SHIFT ‘some key on your keyboard’. The ‘Enter’ key is also waaaay to small and the control key is at a very position as well. And whatever is the combination for the @ sign on a german standard pc keyboard has the semantics of ‘close this application’ in MacOS X – that results in some funny mistakes ;-)
OpenBSD 4.0 - Release Song and Artwork Published 1
Cool stuff coming from the OpenBSD team again. The Relese Song and Artwork for the upcoming 4.0 release have been published.
Have fun and tune in!
SL Compiler Progress
A little while ago I posted that I started working on a compiler for the SL language. As the name suggests it is a S*impleL*anguage. First I started out and implemented a complete type checker. Now I have also finished the AST generation phase. It is really neat and the code looks very good as well.
There is also a nice feature where you can dump your symbol table and AST as XML and then analyze various things. Oh well, I far from finished though since the next step, namely code generation is still missing. The only thing I dislike is that I have to generate code for the Intel architecture. I would much rather generate code for a nice RISC architecture but that’s life. Well, I should better catch up on my reading and get away from the computer for today…
OpenBSD 4.0 - They have done it again
The OpenBSD team has done it again. Version 4.0 of the ultra secure Operating System is available. There are many improvements concerning wireless networking (e.g. new and improved wireless drivers), as well as many IPSec improvements. The diligent reader can find a complete list of all improvements at this site.
Furthermore there is a new and interesting article on Undeadly.org which describes how to test and troubleshoot your pf firewall.
Last but not least I should finally do some work on my PortBrowser for OpenBSD. I have some cool ideas for it but unfortunately no time right now…


