Tiny Deathstars of Foulness

A great new feature of Apple Configurator 2 is the command line interface for Apple Configurator: cfgutil. Go ahead and click on the Apple Configurator 2 menu and select Install Automation Tools from the menu.

Screen Shot 2015-10-01 at 2.55.05 PM

When prompted,

Screen Shot 2015-10-01 at 2.55.09 PM

Once installed, you’ll find cfgutil at /usr/local/bin/cfgutil.

October 27th, 2015

Posted In: Apple Configurator, iPhone

Tags: , , , , ,

When I was just getting started with AngularJS, I found, a site that allows you to enter some code and run it straight from a browser. So, what do you do first: Hello World of course. This one with a little input twist…

<!DOCTYPE html>
<html ng-app>
<script type="text/javascript" src="//"></script>
Enter Your Name:
<input type="text" ng-model="name" />
<h1>Hello {{ name }}</h1>

Screen Shot 2015-09-08 at 1.58.35 PM

September 8th, 2015

Posted In: Java

Tags: , , , , ,

When you run a kill command to stop a process from bash or the javax.realtime.POSIXSignalHandler class, you’re sending what’s known as a POSIX signal to the process. These signals can be called via their numeric representations or the signal (e.g. with the -s option of the kill command). Signals include the following:

  • 1: SIGHUP – Close the controlling terminal when the controlling process dies
  • 2: SIGINT – Send a keyboard interrupt
  • 3: SIGQUIT – Quit from a keyboard/terminal
  • 4: SIGILL – Terminate illegal instruction with a core dump and don’t restart
  • 5: SIGTRAP – Send a trace/break trap (with core dump)
  • 6: SIGABRT – Process an abort signal
  • 7: SIGEMT – Send the signal when emulator traps happen
  • 8:SIGFPE – Terminate floating point errors (erroneous arithmetic operations) with a core dump
  • 9: SIGKILL – Kill a signal outright (kill cannot be ignored)
  • 10: SIGBUS – Terminate access (some portion of a memory object) with a core dump
  • 11: SIGSEGV – Terminate with a core dump – Invalid memory reference
  • 12: SIGSYS – Bad system call
  • 13: SIGPIPE – Terminate and write on the pipe
  • 14: SIGALRM – Timed kill of a signal
  • 15: SIGTERM – Software termination of a signal
  • 16: SIGUSR1 – User defined signal 1, with SIGUSR2 as user defined signal 2
  • 17: SIGTERM – Software termination of a signal
  • 18: SIGCHLD – Child status change
  • 19: SIGPWR – Send the signal when the system encounters a power failure
  • 20: SIGWINCH – Send the signal to a process when the window changes
  • 21: SIGURG – Ignore signal, high bandwidth data
  • 22: SIGIO – Terminate pollable event
  • 23: SIGSTOP – Stop executing (cannot be ignored or caught by an exception)
  • 24: SIGTSTP – Terminate a stop signal.
  • 25: SIGCONT – If stopped, continue executing a process
  • 26: SIGTTIN – Background process is attempting to read
  • 27: SIGTTOU – Background process is attempting to write
  • 28: SIGVTALTM – Expired virtual timer
  • 29: SIGPROF – Terminate Profiling timer
  • 30: SIGXCPU – Past the CPU time limit, terminate with a core dump
  • 31: SIGXFSZ – Past the file size limit, terminate with a core dump
  • 32: SIGWAITING – Suspend execution of the process until a defined signal is sent
  • 33: SIGLWP – Send when the implementing threading requires a signal
  • 34: SIGFREEZE – Deprecated
  • 35: SIGTHAW – Deprecated
  • 36: SIGCANCEL – Deprecated
  • 37: SIGLOST – Send the signal when encountering a lost file lock

To put these in practice, let’s use the kill command from bash, with the -s option followed by SIGTERM and then the pid number:

sudo kill -s SIGTERM 20341

July 5th, 2015

Posted In: Mac OS X, Mac Security

Tags: , , , , , ,

When you accidentally paste a code block in the wrong place…

May 13th, 2015

Posted In: Product Management, Programming

Tags: , ,

There’s another new conference in town! Well, not my town, but Vancouver. MacDev Ops is a hot topic. One that will only increase in the coming years. Thanks to Mat X and Brian Warsing for bringing about a brilliant conference.

Screen Shot 2015-03-23 at 10.43.50 PM

The conference will be held on June 19, 2015 and is an easy $99 if you sign up soon. Also, submit a talk if DevOps is your thing. They’re looking to bring the following topics to the table:

  • Puppet, Chef and other automation from Desktop to Cloud and back
  • Software deployment with Munki and AutoPkg: the app ecosystem surrounding it
  • Cool tools: demo of awesome Mac Admin projects from GitHub
  • DevOps: How to adopt Automation and Best practices in IT operations
  • Dev skills: workshops on Ruby, Git, Python, Javascript for Mac Admins
  • MDM: Profiles and Mac configuration management in the cloud

This is sure to be a good one. Check it out here!

March 23rd, 2015

Posted In: Mac OS X, Programming, Unix

Tags: , , , , , , , , , ,

Merry Christmas and to all a good night!

<title>Merry Christmas</title>
<script type="text/javascript">
function MerryChristmas()
   alert ("Merry Christmas!");
<a href="javascript:MerryChristmas()">MerryChristmas</a>

December 24th, 2014

Posted In: Mac OS X, Mac OS X Server, Mac Security

Tags: , , , ,

Qlogic fibre channel switches are about the most common I see in Xsan environments. A common frustration when managing a Qlogic switch is that the Java runtime used to manage the switch is blocked from most OS X systems by default. But it’s pretty easy to get into them with a couple of minor adjustments.

To get started, first download and install the latest Java from here. Once installed, open System Preferences on your Mac and then open the Java Preferences. Here, click on the Security tab.

Screen Shot 2014-03-17 at 10.43.11 AM

Click Edit Site List… In the pop-up, click Add and enter http:// followed by the name or IP address of your switch.

Screen Shot 2014-03-17 at 10.42.45 AM

Click on OK to commit your changes. Then access the switch address from Firefox (what I use for these) or whatever browser you prefer. Because the switch has a self-signed certificate, you’ll be prompted with a  security warning. Here, click the checkbox for “I accept the risk and want to run this application” and then click on the Run button.

Screen Shot 2014-03-17 at 10.40.21 AM

You’ll then be prompted by another Security Warning dialog. This one is indicating that the Java applet is potentially unsafe. Because we somewhat trust Qlogic, click Don’t Block. You’ll have to click this one every time you access the switch.

Screen Shot 2014-03-17 at 10.43.48 AM

The switch interface then opens and you can manage your switch as needed.

Screen Shot 2014-03-17 at 10.45.20 AM


March 24th, 2014

Posted In: Xsan

Tags: , , , , , , ,

I am releasing the Xsan Monitor that I’ve mentioned as alpha code.  There are still some updates I may do but for now I’m putting it out there for those who feel this is the kind of thing they can take use of.  Basically, it’s a Dashboard Widget that can run on an Xsan client or metadata controller.  When running it will display the CPU and RAM statistics of the Xsan processes.  If it’s the kind of thing you could use then please feel free to give it a test drive and let me know what you think at or  

Xsan Monitor is available on the Apps page of

February 2nd, 2009

Posted In: Xsan

Tags: , , , , , , ,

February 9th, 2005

Posted In: VMware

Tags: , , ,