monkey lives

I’ve been meaning to upgrade my home server from build 112 of Solaris Nevada for a while but kept running into an issue from 113 onwards where by the system would suffer an unexpected trap and by the time I thought about raising a bug someone else had already hit the same issue under CR 6844241 – “after kernel loads Unexpected Trap on Gigabyte GA-MA78GM-S2H”. Interestingly enough I’ve also seen another problem on a lab system at work which prompted me to raise CR 6852619 – “X2270 system reset booting nevada”. I don’t know how long they’re going to take to sort out but it’s a good excuse for me to make the migration over to OpenSolaris which I’ve been thinking about for a while. I’d already had a spare disk in the system which I’d just recently installed OpenSolaris 0906 to confirm that it was ok (via USB stick as well!). So once booted it was just a question of setting up the s/w I’d had configured in my previous Solaris Nevada environment. In fact when we talk about OpenSolaris and Nevada we’re really talking about the same OS accept the once of main differences is the new IPS packaging system. So from the new environment, I then added some additional repositories other than the default.|value|value|value

To add the Blastwave repository I did the following:

pkg set-authority -O https://blastwave.network.com:10000/ Blastwave

I then registered here httpss://pkg.sun.com/register and followed the instructions to add the supported repositories and extra ones. So my pkg publisher list now looks like this:

hippy@monkey:~$ pkg publisher
PUBLISHER TYPE STATUS URI
support.opensolaris.org (preferred) origin online httpss://pkg.sun.com/opensolaris/support/
Blastwave origin online https://blastwave.network.com:10000/
extra.opensolaris.org origin online httpss://pkg.sun.com/opensolaris/extra/
ha-cluster.opensolaris.org origin online httpss://pkg.sun.com/opensolaris/ha-cluster/
webstack.opensolaris.org origin online https://pkg.opensolaris.org/webstack/

I then added the following packages to start with:

amp
vpanel
studioexpress
storage-server
webmin
opends

from extra:
flash
virtualbox (although I’ll delete and use the latest from virtualbox.org).

from cluster:
quorumserver

For mirroring the main OpenSolaris repository you need to follow the instructions -> https://opensolaris.org/os/project/pkg/Mirroring/

The next modification was to enable my internal DDS4 drive as the scsi card won’t work as there isn’t a 64 bit drive for the ncrs:

Jun 19 14:53:04 monkey unix: [ID 469452 kern.info] NOTICE: ncrs: 64-bit driver module not found

hippy@monkey:~# grep ncrs /etc/driver_aliases
ncrs “pci1000,1”
ncrs “pci1000,2”
ncrs “pci1000,3”
ncrs “pci1000,4”
ncrs “pci1000,6”
ncrs “pci1000,c”
ncrs “pci1000,f”
ncrs “pci1000,8f”

however if you change ncrs to glm in /etc/driver_aliases it will then work.

Prior to the OpenSolaris environment, I was using and booted via ZFS from Nevada in a different pool and I wanted to migrate from the single OpenSolaris boot rpool back to stormsail. This meant using beadm which is the new live upgrade tool.

hippy@monkey:~$ zpool list
NAME SIZE USED AVAIL CAP HEALTH ALTROOT
data 928G 869G 58.8G 93% ONLINE –
rpool 232G 9.66G 222G 4% ONLINE –
stormsail 696G 567G 129G 81% ONLINE –

hippy@monkey:~$ beadm list
BE Active Mountpoint Space Policy Created
— —— ———- —– —— ——-
nv112 – /hobbesroot 13.02G static 2009-04-14 16:41
opensolaris – – 16.35M static 2009-06-05 11:40
opensolaris-1 NR / 5.81G static 2009-06-08 11:06
hippy@monkey:~$ pfexec beadm create -p stormsail opensolaris-storm

Once that was complete I could reboot and choose the new boot item to boot from the stormsail pool. However I did run into a problem in that it complained about this new boot environment:

Booting ‘opensolaris_storm’

findroot (pool_rpool,0,a)
Filesystem type is zfs, partition type 0xbf
bootfs stormsail/ROOT/opensolaris_storm

Error 30: Invalid argument

Press any key to continue…

Ah, if we change the findroot to point to stormsail instead of rpool then it appears to work.

findroot (pool_stormsail,0,a)

Once that was correctly pointing to the stormsail pool, the new environment booted successfully.

The next task was to enable SMB/CIFS using these instructions for starters. -> https://blogs.sun.com/timthomas/entry/solaris_cifs_in_workgroup_mode

1. Enable the CIFS server

hippy@monkey:~$ pfexec svcadm enable -r smb/server

2. Create the ZFS file system

hippy@monkey:~$ pfexec zfs create -o casesensitivity=mixed stormsail/incoming

3. Share the new file system via SMB and check that status of the operation

hippy@monkey:~$ pfexec zfs set sharesmb=on stormsail/incoming
hippy@monkey:~$ pfexec sharemgr show -vp

hippy@monkey:~$ sharemgr show -vp
default nfs=()
zfs
zfs/data/iso smb=()
iso=/data/iso
zfs/data/mac smb=()
mac=/data/mac
zfs/data/macbackup smb=()
macbackup=/data/macbackup
zfs/stormsail/entertainment smb=()
entertainment=/stormsail/entertainment
zfs/stormsail/media smb=()
media=/stormsail/media
zfs/stormsail/news smb=()
news=/stormsail/news

4. Change the name of the Share

I don’t like the default name of the share, stormsail_incoming, so I will change that to incoming

hippy@monkey:~$ zfs set sharesmb=name=incoming stormsail/incoming
hippy@monkey:~$ sharemgr show -vp
default nfs=()
zfs
zfs/data/iso smb=()
iso=/data/iso
zfs/data/mac smb=()
mac=/data/mac
zfs/data/macbackup smb=()
macbackup=/data/macbackup
zfs/stormsail/entertainment smb=()
entertainment=/stormsail/entertainment
zfs/stormsail/incoming smb=()
incoming=/stormsail/incoming
zfs/stormsail/media smb=()
media=/stormsail/media
zfs/stormsail/news smb=()
news=/stormsail/news

5. Set the name of the Workgroup.

By default the workgroup name is “workgroup” but I want to change that to “stormsail”.

hippy@monkey:~$ smbadm join -w stormsail
Successfully joined workgroup ‘stormsail’

6. Install the SMB PAM module

Add the below line to the end of /etc/pam.conf:

other password required pam_smb_passwd.so.1 nowarn

In this whole process, this is the only time I have to edit a file, and this is a one off.

7. Set/Change the Passwords for any Solaris User That Will be Used to Authenticate when Connecting to a CIFS share

I will use my username hippy, but I could use any Solaris user the server knows about.

hippy@monkey:~$ passwd hippy
New Password:
Re-enter new Password:
passwd: password successfully changed for hippy

With the SMB PAM module installed, this generates passwords that can be used by Windows as well as Solaris. This is a required step.

8. From my mac I can then map the share using apple-k:

smb://monkey/incoming

There is also some interesting information from here -> https://breden.org.uk/2009/06/16/home-fileserver-opensolaris-200906/

I also eventually want to setup an LDAP server and I found some information here but I don’t know how relevant it is to opends ->https://www2.petervg.nl/cgi-bin/docs.cgi?doc=102 and https://www.opends.org/. For configuring webmin you need to run webminsetup before you can connect via the web.

More will follow when I get round to writing things up……