Friday Jul 04, 2008

OpenSolaris Developer Conference 2008 held in Prague finished exactly a week ago. This was a three days event organized by people from German Unix Users Group (GUUG) and Czech OpenSolaris Users Group (CZOSUG). I would like thank to everyone involved in this event -- sponsors (Sun, Intel, GUUG, and Commerzbank), speakers , attendees and organizers . A special thanks belongs to Academic and Medical Conference Agency (AMCA), which was behind of all the logistics and without their involvement we would not be able to run this event.

The conference brought together more than 60 people from around the world and the agenda was busy -- the speakers delivered four tutorials, two keynotes and twelve presentations.

Martin Man announced yesterday where to find slides, videos and pictures. Below are also several pictures from me -- both from the conference as well as from a social event on June 26th night (a boat ride on the Vltava river).

I do not know yet if and eventually when OSDevCon 2009 will be organized but if yes then I definitely would like to participate again.












Friday Jun 27, 2008

I have an opportunity to use Asus Eee PC 4G Surf (the green one ;-) ) on which I managed to install OpenSolaris 2008.05 operating system. The installation went well, except a known bug with kb8042 driver. The workaround is quite easy, just start the kernel with -v parameter (the timing problem with initialization of the keyboard will go away). To make WiFi work I downloaded and installed a driver for Atheros WiFi card (an updated HAL is needed).

This machine is extremely cool because it's keyboard size is just about right for my fingers to be able to do some work while it is really lightweight (920 grams), so it is very convenient to carry it. Here are pictures of the Asus Eee PC running OpenSolaris and me using it at OSDevCon 2008 (thanks to Jim Grisanzio for taking this picture).

asus_eeepc_213x160.jpg IMG_5218

On May 28th I presented at CZOSUG meeting about OpenSolaris 2008.05 operating system, so my choice for a laptop to use for the presentation was quite obvious :-) .

Friday May 30, 2008

I recently installed OpenSolaris 2008.05 in VirtualBox 1.6.0 both on Mac OS X and also on my workstation running Nevada, build 88 (which would be equal to SXCE build 88 but this build was skipped).

Virtual Machine Settings

Base Memory796 MB
Hard DiskNormal, 16GB
NetworkIntel PRO/1000 MT Desktop, NAT

Notes

VirtualBox installation was very easy on both platforms as well as installation of the OpenSolaris in the virtual machine. However, I met a few problems:

  • ICMP protocol is not supported by VirtualBox's NAT engine, so the initial network test using ping failed. This is actually well documented in VirtualBox's User Manual and other TCP/IP based protocols work fine.
  • My workstation is on NIS, while VirtualBox's NAT relies on DNS. So, I had to create /etc/resolv.conf file with nameserver entry.

NAT is the only networking option for Mac OS X, while Host Interface (virtual NIC) option is available for other platforms including Solaris. I tried the procedure described in VirtualBox's User Manual (only the manual steps led to successful creation of the virtual network interface) but so far I was not successful in setting this up. VirtualBox did not start the virtual machine -- I got the following error: "Failed to open VNIC "vnic0" in raw mode.". So, I must be doing something wrong and I still need to investigate this problem.

VirtualBox offers also great and easy to use command line interface -- VBoxManage -- which is very convenient for controlling the machine.

References

Virtual Box Error – A Domain Name Server (DNS) for NAT networking could not be determined
Using Crossbow to get a host interface network for VirtualBox

Thursday May 22, 2008

Dirk Wetter from GUUG, one of the main organizers of OpenSolaris Developer Conference 2008 (OSDevCon 2008), announced that visitors registrations are now open! This is a great news, especially after long time of preparations for this event. Being one of the co-organizers (even not the most active one) provided me already with a lot of experience concerning "what does it mean to organize a community conference". Check the program and sign in :-) !

Tuesday Apr 29, 2008

I recently tried several Release Candidates for the OpenSolaris (Indiana) release and as I learned more about installing and setting up the OpenSolaris in Parallels virtual machine I decided to consolidate my previous posts on this topic. I also plan to update this entry later if a new information appears.

System

I performed all my tests at following system configuration:

Virtual Machine

The virtual machine has the following basic parameters:

OS TypeSolaris
OS VersionSolaris 10
Main memory768 MB
Video memory16 MB
1 x HDD, size10240 MB
1 x CD/DVD ROMImage file with OpenSolaris image
2 x Serial portEmulation / Use output file
Network adapterBridged Ethernet / Default Adapter
Options/BootingBoot Sequence is set to boot from CD-ROM at first

Installation

The installation itself went without any problems, I just followed the instructions displayed by the installer. When the system is rebooted after successful installation do not forget to change the Options/Booting/Boot Sequence to boot first from the hard disk.

Network Set Up

Parallels emulate Realtek 8029(AS) network adapter. A driver for this adapter can be found at vmtools.iso CD image located inside /Library/Parallels/Tools directory. Click on the CD icon at the bottom of window running the OpenSolaris virtual machine and connect this image.

The vmtools.iso gets automatically mounted and inside /media/PRTOOLS/Drivers/Network/RTL8029/SOLARIS directory is located device driver for the Realtek network adapter. Log as a root, copy all the files to a local disk and run network.sh script. Choose to get the IP address using DHCP. Once the script finishes then just reboot and the network should be up an running. If this method does not work for some reason then you can try a workaround describing a manual installation (it was needed for OpenSolaris Developer Preview 1)

Native Resolution in Full Screen Mode

After the installation the default resolution is 1024 x 768 points. This is nice but native resolution of the 15 inches MacBook Pro laptop is 1440 x 900 pixels, so the next step is to change X settings to be able to use the native resolution in a full screen mode. Here are the required steps:

  • Log as a root and copy file /etc/X11/.xorg.conf to file /etc/X11/xorg.conf
  • Edit the /etc/X11/xorg.conf as the following:
    • In the section "Monitor" add rows:
      HorizSync 31.5 - 100.0
      VertRefresh 59.0 - 75.0
      Option "dpms"
      Modeline "1440x900" 108.84 1440 1472 1800 1912 900 918 927 946
    • In the section "Screen" add row: DefaultDepth 24
    • For each subsection "Display" you want to use in the section "Screen" add a new resolution "1440x900" at the begin in the Modes line. For example:
      Modes "1440x900" "1024x768" "800x600" "640x480"
    • Restart X server (reboot).

References

Sunday Feb 17, 2008

I tried to install today OpenSolaris Developer Preview 2 in Parallels Desktop 3.0 virtual machine. The installation went without any problems and I was able to get the network up and running using the method I described at OpenSolaris Developer Preview / Indiana on MacBook entry. The only extra step needed was to reboot the machine and then the network started to work.

Sunday Dec 30, 2007

I finally found some time to play a bit more with the NSLU2 (Network Storage Link for USB 2.0 Disk Drives) from Linksys I bought many months ago.

Originally I used an old IBM Deskstar PATA hard drive, which I installed in Icy Box external case and connected to NSLU2. I also flashed NSLU2 with the Unslug firmware. I followed carefully all instructions at the Unslug web and everything worked fine including installation of a NFS server on the NSLU2 to be able to access the shared disk easily from Solaris boxes. Note, that NSLU2 is primarily intended for Windows users, so the default network file system support is limited only to SMB/CIFS protocol (Samba). This solution was OK for occasional backups and sharing data among computers on the home network (the old hard drive did not have too much capacity and was quite noisy).

Before Christmas I bought a new shiny Western Digital hard drive with much bigger capacity than the old disk. The goal was to use this disk not only for backups but also for sharing iTunes music and iPhoto library by the computers at home (mostly Mac's).

The iPhoto library was quite simple -- I just copied the library itself on the shared disk and then used the "option-open" feature of iPhoto (hold the option (alt) key when opening iPhoto), which makes possible to select a library to be used by iPhoto. This solution has one disadvantage -- only one user can work with the iPhoto data but this is not a problem for now.

Sharing iTunes was a bit more difficult and as the best solution turned out to be mt-daapd server (now re-branded as Firefly Media Server). I use one of the computers at home as primary source for the iTunes music and on as-needed basis I rsync the local data to the shared drive, so it can be used by iTunes running on other machines.

rsync is also used for backing up user's data.

Tuesday Nov 20, 2007

Students of Technical University of Vienna visited Czech Republic and as part of their program they also visited Prague Engineering Center (PEC). We have prepared for them a series of presentations, starting with information about Sun and PEC and continuing with OpenSolaris, NetBeans, and Glassfish. I had the opportunity to present about Introduction to OpenSolaris. This event was very interesting for me because of the following reasons:

  • It was the first time when I presented together with people from other engineering groups in Prague.
  • We talked about important part of Sun's software portfolio and all products we discussed are open source.
  • The students had interesting questions -- not too much technical but mostly economical -- how Sun can make money from software when almost all our products are open sourced and people can start to use them for free. So, instead of answering questions about ZFS, DTrace, etc., I talked about Sun's strategy in this space. It proved to be very good to have a CEO who blogs and read what he writes about :-) .

Me presenting:

Geertjan presents about NetBeans:

Wednesday Nov 07, 2007

I installed the last week the OpenSolaris Developer Preview / Indiana inside Paralles Desktop 3.0 running on MacBook Pro laptop (see my post concerning installing SXCE for details about setting up the virtual machine).

Booting the LiveCD went very well and the auto-login worked for me. I booted the system from real CD not just an iso image and I was quite impressed by the speed of the boot process. Then I started the actual installation and again, everything went smooth.

The last thing I had to do was to install the network drivers. This required mounting the /Library/Parallels/Tools/vmtools.iso (set the vmtools.iso at the Edit/Virtual Machine.../CD/DVD-ROM Options/Image File and reboot the virtual machine). The device driver is located at /media/PRTOOLS/Drivers/Network/RTL8029/SOLARIS. The recommended method to install the driver is to use the network.sh script. However, this script builds the driver from source code and since the Indiana preview does not contain C compiler this method did not work. So, I read the README.txt, network.sh, unpacked the sources and found that the binaries are also provided. I looked also in the makefiles to find out details about installing the driver and here are the steps, which worked for me:

  • Use prtconf to verify that the RTL8029 card is recognized, look for pci10ec,8029 under pci, instance #0.
  • Log as a root.
  • unzip and untar the ni0.8.11.tar: # gunzip ni0.8.11.tgz; tar xvf ni0.8.11.tar
  • Use addni.sh script (part of the unpacked sources) to add the new driver to the system.
  • Install the driver binaries to the /kernel/drv directory -- invoke the following commands from the directory with unpacked sources:
    • # /usr/sbin/install -f /kernel/drv -m 755 -u root -g sys i386/dp8390
    • # /usr/sbin/install -f /kernel/drv -m 755 -u root -g sys i386/ni
  • Wait a few seconds and the Network Auto-Magic magically picks the driver up, plumbs the interface and starts DHCP for you.

Saturday Nov 03, 2007

After a few months pause two CZOSUG meetings were organized in October -- CZOSUG BootCamp (October 20th) and the first CZOSUG meeting in Brno (October 23rd).

The all-day BootCamp focused on application tuning and debugging on OpenSolaris and many people from Solaris RPE team presented there (big thanks to Peter Harvey, Milos Muzik, Vita Batrla, Sasa Nedvedicky, Pavel Filipensky, and Zdenek Kotala). Thanks also to Faculty of Mathematics and Physisc, Charles University for hosting this event.

The CZOSUG #20 run at Masaryk University, Faculty of Informatics. I had there a presentation about "Introduction to OpenSolaris" (slides are in Czech) followed by very nice demo of DTrace, ZFS and BrandZ delivered by Milan Jurik. Thanks to Roumen for organizing this event. The CZOSUG meeting followed a CZJUG meeting, so we (the OpenSolaris community) were able to leverage the contacts Rouman has from his for as NetBeans evangelist.

Tuesday Sep 18, 2007

After I installed SXCE on MacBook Pro using Parallels I ended up with resolution 1024 x 768 points. This is nice but native resolution of the 15 inches MacBook Pro laptop is 1440 x 900 pixels, so the next step was to make the SXCE use the native resolution for SXDE in full screen mode.

I found two useful links -- one at Parallels Forum and another at DraginFly site, which helped me to get the native resolution. Here are the steps I followed:

  • Log as super user and copy file /etc/X11/.xorg.conf to file /etc/X11/xorg.conf
  • Edit the /etc/X11/xorg.conf as the following:
    • In the section "Monitor" add rows:
      HorizSync 31.5 - 100.0
      VertRefresh 59.0 - 75.0
      Option "dpms"
      Modeline "1440x900" 108.84 1440 1472 1800 1912 900 918 927 946
    • In the section "Screen" add row: DefaultDepth 24
    • For each subsection "Display" you want to use in the section "Screen" add a new resolution "1440x900" at the begin in the Modes line. For example:
      Modes "1440x900" "1024x768" "800x600" "640x480"
    • Reboot.

Tuesday Jul 17, 2007

I recently switched from Ferrari 3400 laptop to MacBook Pro. After I got familiar with Mac OS X (one of the first tasks was to find Terminal ;-) ) I started to play with Parallels Desktop for Mac in order to be able to install Solaris.

Parallels is easy to install but there is not actually too much information at their web site how to set up the virtual machine for Solaris installation. After a some searching I found very useful blog entry Getting Solaris 10 working in Paralles by Martin MC Brown. I did not use Solaris 10 but Solaris Express Community Edition (SXCE, Nevada, build 68). The virtual machine has the following parameters:

OS TypeSolaris
OS VersionSolaris 10
Main memory1024 MB
Video memory16 MB
1 x HDD, size25600 MB
1 x CD/DVD ROMImage file with SXCE image
2 x Serial portEmulation / Use output file
Network adapterBridged Ethernet / Default Adapter

Set Options/Booting/Boot Sequence to boot from CD-ROM at first and the SXDE installation can start. I choose the "Solaris Express" option at the begin because I wanted to use this machine to compile ON/Nevada from the sources later on (Solaris Express Developer Edition installs Sun Studio 12 while Sun Studio 11 is recommended for building ON/Nevada).

The installation went on without any problems. The only thing to really decide was the slice layout. I used a simple one -- slice 0 for /, slice 1 for swap, slice 2 is the overlay, and slice 3 for /data).

When the Solaris Express booted first time I logged as a root using Failsafe Session and created /root directory and set it as home directory for the super user (edit the file /etc/passwd. This way all the Gnome stuff generated for root goes to the /root directory and /does not get polluted.

The next step was to install driver for the Realtek 8029(AS) network adapter provided by the Parallels virtual machine. As Martin MC Brown's blog says, the driver is located on vmtools.iso CD image located inside /Library/Parallels/Tools directory. So, I shut down the Solaris Express, stopped the virtual machine, set the vmtools.iso at the CD/DVD-ROM Options/Image File, and booted the Solaris Express again.

The vmtools.iso gets automatically mounted and inside /media/PRTOOLS/Drivers/Network/RTL8029/SOLARIS is located device driver for the Realtek network adapter. I installed the driver using the network.sh script and choose to get the IP address using DHCP. After another reboot I get assigned DHCP address from my home DHCP server and another (virtual) machine appeared on the network!

After getting the network up an running I set up ZFS pool. I used slice 3 (/dev/dsk/c0d0s3), which was originally mounted as UFS file system (under /data in my case). Here are the steps to convert this slice to ZFS pool:

  • umount /data
  • Edit /etc/vfstab and remove (mark as a comment) the line, specifying how the /dev/dsk/c0d0s3 should be mounted.
  • Create the ZFS pool: zpool create -f mypool /dev/dsk/c0d0s3 (the -f parameter forces to overwrite the existing UFS file system.
  • Check the ZFS pool: zfs list

Once the ZFS pool is set then actual file systems can be created inside it. One of the obvious choices would file system for /export/home. This can be achieved in two simple commands, for example:

  • zfs create mypool/home
  • zfs set mountpoint="/export/home" mypool/home

And this is all folks :-) -- the Solaris Express, Comunity Edition is ready for the game!

Sunday Jul 15, 2007

Blastwave provides very useful set of packages for Solaris, so I quite often use this site. Setting up Blastwave is quite easy and the HOWTO section at Blastwave is definitely the best source for information. Here are the simplified steps:
  • Go to Blastwave HOWTO. Download and install the pkg-get package.
  • Edit the /opt/csw/etc/pkg-get.conf file -- add there the mirror closest to you and set http_proxy or ftp_proxy if needed. Since I am based in Czech Republic I typically use mirror at Silicon Hill (http://ftp.sh.cvut.cz/MIRRORS/blastwave/stable/).
  • Install wget from Blastwave: pkg-get -i wget
  • It is not a bad idea to use "more automation", so pkgadd will not ask all the dependency questions, the trick is as the following: cp -p /var/pkg-get/admin-fullauto /var/pkg-get/admin
  • And finally, I can install my favorite text editor :-) ! pkg-get -i gvim

Thursday Apr 12, 2007

Thanks to OpenSolaris there are now multiple distributions to choose from:

  • If you are OpenSolaris newbie it is not a bad idea to start with OpenSolaris Starter Kit.
  • Choose Solaris 10 if you want to use the most stable Solaris release.
  • Solaris Express, Community Edition is for people who want the latest Nevada builds.
  • There is a new program -- Solaris Express, Developer Edition, which focuses on developers. This release installs also the developer tools -- Sun Studio.
  • Nexenta is a distribution for people who like Debian packaging tools, Ubuntu look and feel and Solaris cutting edge features and stability.
  • BeleniX is a great LiveCD distribution.
  • Schillix was the first OpenSolaris distribution, which came out just three days after official OpenSolaris launch.
  • MarTux is a distribution, which focuses on the Sparc platform.
  • Singanix is a new distribution focusing on servers.

Saturday Mar 31, 2007

Time to time people ask me what HW to choose for Solaris and about Solaris installation in general. I am not an expert in this area but I played with Solaris installation several times recently, so I got some experience and I have some useful information to write about.

There are a lot of myths and prejudices concerning hardware supported by Solaris. I hear quite often that Solaris does not run on such a such HW configurations. This is typically not entirely true. Solaris runs on a lot of HW configurations but it may happen that a specific device is not supported. So, for example, you can end up without sound card support but Solaris will run on your machine. Here is a list of useful links:

This blog copyright 2008 by lr