Blog O' Matty


Sectioning data with awk

This article was posted by Matty on 2005-10-29 20:01:00 -0400 -0400

I was working on a shell script last week and wanted to grab just the CPU section from the Solaris prtdiag(1m) output. I was able to perform this operation with awk by checking $0 for one or more “=” characters, and then setting a variable named SECTION to the value contained in the second position variable. If this variable was equal to the string CPUs, all subsequent lines would be printed up until the next block of “=” characters were detected. The awk script looked similar to the following:

$ prtdiag -v | awk '$1 ~ /^\=+/ {SECTION=$2} { if ($SECTION == "CPUs") print }'

==================================== CPUs ====================================
E$ CPU CPU
CPU Freq Size Implementation Mask Status Location
--- -------- ---------- ------------------- ----- ------ --------
0 502 MHz 256KB SUNW,UltraSPARC-IIe 1.4 on-line +-board/cpu0

I really dig awk!

Getting failure notifications with Veritas Volume Manager

This article was posted by Matty on 2005-10-29 11:42:00 -0400 -0400

One of the cool and often overlooked features in Veritas Volume Manager is the failure notification mechanism. This facility provides automated notifications when problems are detected with Veritas managed disks, plexes, subdisks and volumes. These notifications are active by default, and will generate an e-mail to the user root each time a failure is detected. These e-mail notifications take the following form:

To: root@tigger
Subject: Volume Manager failures on host tigger
Content-Length: 240

Failures have been detected by the VERITAS Volume Manager:

failed disks:
c1t6d0

failed plexes:
raid5vol-P08

Since e-mails will be sent to the root user by default, it is often beneficial to create a root alias in the /etc/aliases file:

$ grep "^root" /etc/aliases /etc/aliases.db
root: admins@prefetch.net

If you would like messages to be sent to a user other than root, you can add additional users to the line that starts vxrelocd in the vxvm-recover init script:

$ grep vxrelocd /etc/init.d/S95vxvm-recover
vxrelocd root alerts &

I have been using this facility for years to get advanced notifications, which has helped me avoid disaster on more than one occassion.

Concert review Nine Inch Nails

This article was posted by Matty on 2005-10-28 17:13:00 -0400 -0400

I have always liked Trent Reznor and the Nine Inch Nails, and wanted to see how they were live. I finally got my chance last night, and can report back that the concert was incredible. The lighting was awesome, the setlist was arranged perfectly, and the crowd was definitely into the show! If I had to pick a favorite moment from last night, it would either be when Trent came onstage alone to play “Hurt,” or when they closed with “Head like a Hole!” What an awesome show!!!!

Enabling large file support dynamically with VxFS

This article was posted by Matty on 2005-10-27 12:52:00 -0400 -0400

I recently encountered a VxFS file system that didn’t support largefiles. This issue was causing one of our Oracle databases to complain, which was preventing us from using datafiles optimized for our application access patterns. Since the file system was a Veritas File System (VxFS), I was able to fix this problem with the fsadm utility:

$ /usr/lib/fs/vxfs/fsadm -F vxfs -o largefiles /u01

$ mount -p | grep u01
/dev/vx/dsk/oradg/oravol01 - /u01 vxfs - no rw,suid,delaylog,largefiles,ioerror=mwdisable

This operation can be run against mounted live file systems, which is great for production environments.

Proactively managing digital certificate expiration with ssl-cert-check

This article was posted by Matty on 2005-10-26 21:26:00 -0400 -0400

I finally got around to writing an article on dealing with expired certificates. The article is titled Proactively Handling Certificate Expiration with ssl-cert-check, and is available on the prefetch.net web server.