Saturday, March 12, 2016

2016 - 30 Years in Unix - Tools of the trade

Celebrating my 30th Year in Unix.

Expect some reminiscing from the days gone by.

I still have my first "vi" reference guide, dog eared and tea stain (I'm British), dated 1987.
I came to vi late as I started with "ed" writing Cobol on a PDP11/44, AT&T V7 Unix. Yes I did have to use coding sheets, before I could start coding on the terminal.

Wednesday, December 30, 2015

KeePassX 2.0 On Redhat 6 / Cent OS 6 / OL6

I'm sure we all know the virtues of long, complex and unrememberable passwords and the need for a tool to store them. My favourite has been KeePass, with a shared database on a cloud drive.

KeePassX has long been around for native Linux support, but hasn't been compatibility with the KeePass 2 (Professional Edition) database format kdbx. Well the excellent authors have release KeePassX 2.0 which is a rewrite with kdbx support.  Currently only available as source code, the following instructions will help you to compile and install on Redhat 6/ CentOS 6 /Oracle Linux 6.

Required packages
$ sudo yum install cmake gcc-c++ qt-devel qt libgcrypt libgcrypt-devel libXtst libXtst-devel

NOTE* GIT version uses QT5 plus other packages.

Download source
$ wget
$ tar zxvf keepassx-2.0.tar.gz
$ cd keepassx-2.0

Create UNIX Makefiles

Compile and install
$ make
$ sudo make install

$ /usr/local/bin/keepassx

Wednesday, July 01, 2015

Solaris Leap second - Time well spent

Stayed on line for the extra second 01:00BST.

Glad to say all Solaris system good so far.

Solaris 11.2 Latest SRU - NTPv4 Slew mode
Jul  1 01:00:01 sol11-2 ntpd[659]: [ID 702911 daemon.notice] Positive leap second, expect slowdown slew soon. System clock will be inaccurate until it finishes.

Solaris 11.1 - NTPv4 Slew mode (bug doesn't handle leap second correctly)
Jul  1 01:00:00 sol11-1 ntpd[3459]: [ID 702911 daemon.notice] Inserting positive leap second.

Solaris 10 NTPv3 client in slew mode
Jul  1 01:01:48 sol10 xntpd[3183]: [ID 774427 daemon.notice] time reset (slew) -0.997015 s

Sunday, May 03, 2015

Pocket full of caps!

Pocket full of LC Fibre dust caps, after all-nighter DC relocation and SAN build.

Thursday, April 24, 2014

25 years as an IT Professional.

25 years today I started work at WTL PLC. Then known as CEC, which was Data General and Wang broker. I came on board in 1989 at the start of the Unix technical workstation revolution, "Power to the Desktop". Along came Apollo's running Aegis/Domain OS and Sun MicroSystems Sun-3 range with SunOS 3. Installing and patching from QIC tape was the highlight of my day!

A lot of things have changed over the years in IT, which is itself is the catalyst that has kept me challenged, motivated and passionate about delivering solutions to customers.

As the longest serving employee at WTL I've seen a few people come and go, but the core people and values haven't. The technical team around me, are dedicated to the customers challenges and issues and continue to make my life easier. Equally the WTL sales team, driven commitment in finding outstanding projects, to which the WTL technical team can deliver the foremost technology with latest servers, storage, software and networks.

Thanks to all customers and colleagues(friends) for all your support over the years.


Monday, August 27, 2012

A Multitude of Putty Sessions

Many hands may light work, doesn't really work with in IT. I usually look for consistency and reproducible results. So let change this for one hand and many windows make light work!

Come across a nice tool PuttyCS for Windows people which did just the job.

In the Solaris world I would use Sun's Cluster Console on CDE, but other seem to favour Cluster SSH or PSSH.

I would be amiss to say, a better answer to issues above is to automate and use confguration management tools such as Chef and Puppet.

Saturday, July 28, 2012

Solaris 11 Locale en_GB.UTF-8 / en_GB.ISO8859-1 / en_GB.ISO8859-15

When you install Solaris 11/11 from standard text installer cdrom, the en_GB-UTF-8 locales are not installed, even if you select British locales on install.

To make sure packages are have the correct localisation, IPS uses facet as a localisation personality.
$ pkg facet
facet.locale.pt_BR True
facet.locale.es_ES True
facet.locale.en_US True
facet.locale.zh_TW True
facet.locale.zh_CN True
facet.locale.de_DE True
facet.locale.fr_FR True
facet.locale.it_IT True
facet.locale.ko_* True
facet.locale.ja_* True True True
facet.locale.zh True
facet.locale.ko True True True True
facet.locale.en True
facet.locale.ja True
facet.locale.* False

As you can see no en_GB is described and "facet.locale.* False" is a deny everything else rule. So let change this. I'm assuming you have a Solaris 11 repository already configured. Iinstall en_GB packages/files and creates a backup boot environment.

$ sudo pkg change-facet 'facet.locale.en_GB=True'

            Packages to update: 463      
       Create boot environment:  No
Create backup boot environment: Yes

PHASE                                          ITEMS
Image State Update Phase                         2/2 

Now lets make the en_GB.UTF-8 the default locale. Previously in Solaris 10 we would edit /etc/default/init. But as with many thing in Solaris 11 this has moved to SMF and /etc/default/init is read only.

$ sudo svccfg -s svc:/system/environment:init setprop \
     environment/LANG = astring: en_GB.UTF-8

$ sudo svcadm refresh svc:/system/environment

Now the system defaults to en_GB.UTF-8 for new processes, but remeber not children processes. So thing like cron and ssh have to be restarted, but I would go for a reboot.
$ sudo svcadm restart ssh
$ sudo svcadm restart cron

Settings for Non-UTF-8 locales (en_GB.ISO8859-15 / en_GB.ISO8859-1)

Non-UTF-8 locales such as en_GB.ISO8859-15 require the "system/locale/extra" package to be installed.
$ sudo pkg install system/locale/extra

$ sudo svccfg -s svc:/system/environment:init setprop \
     environment/LANG = astring: en_GB.ISO8859-15

Additional Options

These are set correctly on install, but added here for completeness.
$ svccfg -s keymap:default setprop keymap/layout = UK-English
$ svcadm refresh keymap
$ svcadm restart keymap

$ svccfg -s timezone:default setprop timezone/localtime= astring: GB
$ svcadm refresh timezone:default