Saturday, November 14, 2009

Configuring package repository /extras for Open Solaris

Fire up your browser and point it to http://pkg.sun.com
Login if you have a Sun Online public account, if you don't have any, create one.
Once you have logged in follow the instructions stated at the same page as you would download the two certificates required to add the /extra repository.

If you're using root, just perform the following instead
# mkdir /var/pkg/ssl
# mv OpenSolaris_extras.key.pem /var/pkg/ssl
# mv OpenSolaris_extras.certificate.pem /var/pkg/ssl
# pkg set-authority -k /var/pkg/ssl/OpenSolaris_extras.key.pem \
  -c /var/pkg/ssl/OpenSolaris_extras.certificate.pem \
  -O https://pkg.sun.com/opensolaris/extra/ extra

Run the following to list the packages available on the extra repository
# pkg list -a 'pkg://extra/*'

Or just fire up the package manager on your taskbar, and choose Extra at the top right corner.

Tuesday, November 3, 2009

Booting Solaris 10 into single-user mode

Yeah I know, what's with the recent influx of techie stuffs. I have written/typed too many of those important techie notes of which I have the utmost tendency to loose even after a mere 5 minutes after the note was written/typed.

To boot Solaris 10 into single user mode (maintenance mode)
perform
reboot -- -m milestone=none

As compared to Solaris8/9 (on SPARC) where instead of executing the above, you'd run
init 0 (reboot to OBP)


boot -s
or boot into cdrom and single user mode.
boot cdrom -s

All this SMF framework on Solaris 10 is nothing quite like your usual conventional init level and scripts.

lessfs

open source alternative to dedup
tried installing it on Centos 5.3, will not work do to kernel version (lower version)
required kernel version is 2.6.26 (I believe)

Prerequisites
FUSE (http://fuse.sourceforge.net/)
Tokyo Cabinet (http://1978th.net/tokyocabinet/)
lessfs (http://www.lessfs.com/wordpress/)

Steps

Fuse
Download from http://sourceforge.net/projects/fuse/files/fuse-2.X/2.8.0/fuse-2.8.0.tar.gz/download
tar xvfz fuse2.8.0.tar.gz
cd fuse2.8.0
./configure
make && make install

Tokyo Cabinet
Download from http://1978th.net/tokyocabinet/tokyocabinet-1.4.36.tar.gz
tar xvfz tokyocabinet-1.4.36.ta.gz
cd tokyocabinet-1.4.36
./configure
make && make install

lessfs
Download from http://sourceforge.net/projects/lessfs/files/lessfs/lessfs-0.8.0/lessfs-0.8.0.tar.gz/download
tar xvfz lessfs-0.8.0.tar.gz
cd lessfs-0.8.0
set env variables
export PKG_CONFIG=/usr/local/lib/pkgconfig
export PATH=/usr/local/bin:/usr/local/sbin:${PATH}
export LD_LIBRARY_PATH=/usr/lib:/usr/local/lib
./configure --enable-off64 (to enable the database limit to >2GB)
make && make install

again like mentioned in the 2nd line above, don't have any centos or rhel with kernel 2.6.26, so to be continued....

Solaris 10 on Compaq Evo Desktop

Apparently doesn't recognize/unable to detect Intel Pro/100 VM NIC

Run prtconf -pv

# prtconf -pv (will give a long output)

                compatible: 'pci8086,103b.e11.12.81' + 'pci8086,103b.e11.12' + 'pcie11,12' + 'pci8086,103b.81' + 'pci8086,103b' + 'pciclass,020000' + 'pciclass,0200'
                model:  'Ethernet controller'
                power-consumption:  00000001.00000001
                fast-back-to-back:
                devsel-speed:  00000001
                interrupts:  00000001
                max-latency:  00000038
                min-grant:  00000008
                subsystem-vendor-id:  00000e11
                subsystem-id:  00000012
                unit-address:  '8'
                class-code:  00020000
                revision-id:  00000081
                vendor-id:  00008086
                device-id:  0000103b
                name:  'pcie11,12'

Locate Ethernet controller (as show in the output snippet pasted above)

Go to http://pci-ids.ucw.cz/read/PC/
Use the vendor-id and devicei-id to locate the correct device name
103b - 82801DB PRO/100 VM (LOM) Ethernet Controller

run
# grep 82801DB /boot/solaris/devicedb/master
pci8086,1039 pci8086,1039 net pci iprb.bef "Intel 82801DB Ethernet 82562ET/EZ PHY"
pci8086,103d pci8086,103d net pci iprb.bef "Intel 82801DB PRO/100 VE Ethernet"

edit /etc/driver_aliases

add the following accordingly (into /etc/driver_aliases of course silly0

iprb "pci8086,103b"

load the driver
# modload /kernel/drv/iprb
# ifconfig iprb0 plumb

# ifconfig iprb0 x.x.x.212 netmask 255.255.255.0 up
# route add default x.x.x.1

Permanently configure IP address for iprb0

Create a new text file /etc/hostname.iprb0
x.x.x.212

Create another new text file /etc/defaultroute
x.x.x.1

Edit if doesn't exist, create /etc/resolv.conf
nameserver x.x.x.20
nameserver x.x.x.13

Edit /etc/hosts accordingly to make it look something like this (sample output only, please amend accordingly, yes silly)
::1     localhost       loghost
127.0.0.1       localhost       loghost
x.x.x.212      europa europa.jupiter.space

Make sure the following exist or amended accordingly (if need be) /etc/nsswitch.conf
hosts: files dns



do a reconfigure reboot
# reboot -- -r