Linux server integration with Apple OSX (client)

September 26th, 2010

Last weekend I finally got round to trying an AFP server on Linux and, aside from a few minor issues, things went well.

First of all, I’d like to say credit (and kudos) where it’s due – I used Matthias Kretschmann’s documentation of his experience as a guide for this work. It is great and easy-to-follow documentation (with pictures), so my additions serve to provide updated information as of 2010 and a couple of other scenarios.

My brother has a linux machine that he uses as a CIFS fileserver (for Windows & Mac/OSX) and a destination for Time Machine backups from his Apple Mac, amongst other things. He prefers to use a GUI to manage the machine.

The best available Linux solutions for these seem to be:

  • Samba (well – that’s already running)
  • Netatalk (for AFP filesharing – Time Machine backups are apparently more stable on Apple protocols)
  • x11vnc (VNC access to the X console)
  • Avahi (for Zeroconf/Bonjour)

A VNC server was chosen to view the X console because one is built into OSX (10.5 Leopard and after), so no additional software is required. If you wanted to do something similar from a Windows computer you could use an RDP server on the Linux machine (but I have not tried this).

The first step was upgrading the machine to Ubuntu Linux 10.4 – the latest LTS (long-term stable) release. The big benefit of this Ubuntu version over others is that the binary version of Netatalk in the repositories works with OSX.

Previous versions of Netatalk needed to be compiled with OpenSSL which had an incompatible licence (meaning that binaies of Netatalk could not be shipped with SSL support). This used to mean that if you needed to support OSX clients then you needed to recompile Netatalk .. which made non-SSL-capable binaries fairly pointless. This version uses GnuTLS libraries which allow SSL-capable binaries to be shipped legally. This saves a chunk of pain!

Additionally, Ubuntu 10.4 contains VNC server that works with the X console (display :0) without a user needing to be logged in – something that the old Xvnc Xserver used to be able to do on older versions of XF86/X11 (which didn’t work with the Xservers in the previous LTS release).

Finally, Avahi brings the AFP and VNC services to Apple mac (OSX) clients in an easy way, using Zeroconf/Bonjour.

The other oddity to be aware of is around server naming. Most services use the server’s hostname when advertising the services/protocols. This is normally fine. However, it seems that the OSX client (Finder) won’t allow a CIFS server (Samba on Linux) and an AFP server (Netatalk on Linux + Avahi for server advertisement) to be displayed – the CIFS server is not displayed.

The work-around I decided to use was to append “-afp” to the AFP servername. An alternative may have been to add a config to Avahi for the SMB server, but I didn’t try this (partly because the only visible difference between the two would then have been the icon).

Enough of the waffle – lets get down to it.

The following were the changes I needed to make to the default configs for Netatalk:


/data/timemachine/machines/     “Timemachine-backups” options:tm,upriv,usedots

Please read the Netatalk documentation for a description of the options, but “tm” makes the share time-machine compatible, “upriv” makes it use AFP3 (for additional features?), and “usedots” ensures that any dot-files (filenames or directory names that begin with a . and are deemed ‘hidden files’ in unix) keep their name rather than the “.” being percent-escaped.

The only change from the default for the afpd config file is so that the afp service has a different hostname. I’ve left the default (normally commented out in the config file, as shown here) in to demonstrate that it’s only the servername that is changed:


# default:
# – -transall -uamlist, -nosavepassword
server01-afp -transall -uamlist, -nosavepassword

You also need to ensure that the CNID_METAD service is started along with the AFP service. You need to change that service from “no” to “yes”, and that’s the only change required in the startup config:



If you want to use any of the other services provided by Netatalk (such as Apple printing using PAPD, Appletalk using ATALKD, etc) then please see the Netatalk documentation for further details.

The AFP server can now be accessed, but to make it more user-friendly you should try to get it to show up in OSX’s Finder; this requires Zeroconf, as provided by Avahi.

Avahi required very little to provide visibility of the AFP service – just adding the following description file (note the “name” part has “-afp” appended to the hostname, so the service is advertised as server01-afp. If this isn’t wanted, just remove the -afp in the service name):


<?xml version=”1.0″ standalone=’no’?><!–*-nxml-*–>
<!DOCTYPE service-group SYSTEM “avahi-service.dtd”>
<name replace-wildcards=”yes”>%h-afp</name>

No restart is needed – Avahi (as configured in Ubuntu 10.4) picks this up immediately and advertises it.

You should now be able to connect to the AFP server through the OSX client Finder.

Finally I needed a VNC server that would allow someone to connect to the X server after bootup (before anyone has logged into it). x11vnc seems to be the best solution for this. It also has SSL support and the ability to authenticate with unix passwords (which I didn’t use in this initial test), and avahi support for zeroconf (which I did).

All that was required was to have the x11vnc server start when gdm starts. The x11vnc documentation covered this fairly concisely, and here is an example:

/etc/gdm/Init/Default (at the bottom before exit 0)

#x11vnc -o /var/log/x11vnc.log -unixpw -forever -bg
x11vnc -rfbauth /etc/x11vnc/x11vnc-passwd -o /var/log/x11vnc.log -forever -bg -avahi

You also need to create a VNC password for the above to work; that was done by:

x11vnc -storepasswd /etc/x11vnc/x11vnc-passwd

Given the time I would try to use SSL and probably unix password, as this would mean encrypted details and users just needing to know their login credentials which can be changed (rather than a more static shared password). Whether this is an option would depend on the “Screen Sharing” VNC client capability in OSX though. This is probably something for an update (or follow-up).

Problems with Time Machine network backups on OSX

February 7th, 2009


Time Machine was a major new feature of Apple’s OSX 10.5 (Leopard) – an easy-to-use backup system that anyone can use. This is great – something so simple that ‘your grandmother could use’, with a simple interface that makes it easy to restore data.

In addition to being able to backup to a local disk (connected by USB or firewire), you can backup over the network. Apple sell the Time Capsule NAS (network attached storage) primarily for network backups using Time Machine. Backups to local disk are simple file-based backups, whereas backups to a network drive utilise sparse-bundle images (another new feature in Leopard).


I assume there is a way to backup to OSX servers (such as the Xserve), but there are numerous articles describing hacks for how to configure backups to an SMB (or NFS or AFP) fileshare.

Being a big proponent of open-source solutions, I looked around for a solution using Linux, Samba and/or Netatalk, preferably one that doesn’t require any special setup on the client machine; I managed to find one that makes the fileserver look like Apple hardware – something that I intend to try at some point!

First, though, I wanted to get a few Time Machine backups under my belt, so I started with the aforementioned hacks – backing up to a Samba fileshare (on Linux).

My Linux fileserver has mirrored disks and LVM, so it’s easy to create a new logical-volumes (similar to slices/partitions in other configurations), so I created a new LV for the backup and then configured samba:

   comment = osx backups
   path = /BACKUPS/timemachine/machines
   public = no
   writable = yes

The root of the fileshare should contain a file called ““, and the root of the fileshare needs to be writeable by the remote users (Time Machine creates a file there before it starts the backup).

On the OSX machine (Mac) you need to enter the following command into a Terminal window to allow backups to normal fileshares:

defaults write TMShowUnsupportedNetworkVolumes 1

You then need to create a sparse-bundle disk image for Time Machine to backup to. This has a particular name based on the machine name and main (ethernet) NIC. Assuming the computer’s name is MBP and the hardware address of the NIC is 00:01:23:45:67:89 then the following command should create a 300GB sparse-bundle image:

hdiutil create -size 300g -fs HFS+J -volname “Time Machine” MBP_000123456789.sparsebundle

This command should be run on the local OSX machine and copied (eg using ‘rsync -avE‘ or ‘cp -r‘) to the fileshare [1]; it cannot be run to create the file directly on the fileshare, apparently.

At this point you should be able to configure Time Machine, select the fileshare you wish to use (I found that the fileshare had to be mounted by logging into it in the Finder), give a username and password and then it should be ready to start the backup.

A full backup of my 250GB disk (of which about 220GB gets backed up) took around 3 hours the first time, with a gig-e connected ethernet cable. For me, in the first 10-20 minutes Time Machine did not utilise much bandwidth.

[1] If, like me, you used rsync to copy the file but forgot the -E flag, then the resource-fork will not have been copied. (On a Linux box (ext3 fs) this resource-fork gets created as the file ._MBP_000123456789.sparsebundle in the above example.) If the resource-fork is not on the remote filesystem then the “sparsebundle” image will look like a directory rather than a disk image. From my limited use, this doesn’t appear to have made any difference to the workings of Time Machine (backups worked OK, a partial restore worked OK); the only downside was that, if using Finder to browse the fileshare, you cannot mount the sparsebundle image by double-clicking (but hdiutil, and Time Machine, mount it fine). I was able to correct this problem by copying across the blank image again (from OSX to the fileshare), to a temporary subdirectory on the fileshare this time to avoid overwriting the backup data, and moving the resource-fork file back to the time-machine directory (so that the populated sparsebundle image and the resource-fork file are in the same directory). This made the populated sparsebundle then show up as a disk image under Finder. The temporary subdirectory and contents can then be removed.



Having had numerous failures whilst trying to backup with Time Machine, I decided to see if I could fix it rather than just delete and start again.

I took a look for a someone who had found and resolved the problem. Whilst there are loads of people who report failures (the forums are alight with them), I only found one that managed to recover the backup image. The instructions were the normal disk-recovery type things:

  1. attach the disk image (which checks and may fix some issues)
    • sudo hdiutil attach -nomount -readwrite /path/to/sparseimage
  2. verify/repair disk
    • in disk utility, select the (unmounted) backup volume, select the First Aid tab, and click on Repair Disk
  3. check the filesystem
    • sudo fsck_hfs /dev/disk-slice-name (eg disk1s2)

Unfortunately, stage 2 failed for me with “Invalid sibling link” whilst “Checking Catalog file.” As the Catalog was the problem, I ran with the -r fsck_hfs flag (check the man page) to rebuild the catalog, but this failed, saying “The volume Time Machine could not be repaired.

Hopefully the above will be useful to someone (including me, if I need to re-visit) – especially if you are used to unix but not necessarily ‘the depths of OSX’.

Time Machine on new backup device/file

Sometimes the backups don’t work properly and you have to delete the Time machine backup (eg sparse file) and start again.

I had got Time Machine working fine, backing up every hour, and then I needed to move some large files about temporarily. Rather than TM making huge backups for minimal benefit I turned off TM for a couple of days. When I turned it back on it sat ‘Preparing the backup’ for 15 hours or more (confirmed several times) – it just didn’t work. As a result the only thing I could think of doing was delete the disk image (sparsebundle), create a new one of the same name (as per the above instructions), and start again … losing all previous backups.

Following this, TM failed every time. Checking the logs (Applications -> Utilities -> Console)

06/03/2009 11:52:19 /System/Library/CoreServices/backupd[11312] Backup requested due to disk attach
06/03/2009 11:52:19 /System/Library/CoreServices/backupd[11312] Starting standard backup
06/03/2009 11:52:19 /System/Library/CoreServices/backupd[11312] Network mountpoint /Volumes/timemachine not owned by backupd... remounting
06/03/2009 11:52:20 /System/Library/CoreServices/backupd[11312] Network volume mounted at: /Volumes/timemachine-1
06/03/2009 11:52:20 /System/Library/CoreServices/backupd[11312] Volume at path /Volumes/timemachine-1 does not appear to be the correct backup volume for this computer.  (Cookies do not match)
06/03/2009 11:52:25 /System/Library/CoreServices/backupd[11312] Backup failed with error: 18
06/03/2009 11:52:25 /System/Library/CoreServices/backupd[11312] Ejected Time Machine network volume.

The relevant (and problematic) part is “(Cookies do not match)“. This appears to be along the lines of the fact that a cookie is kept on the TM machine (that is being backed up), and in the disk image (for the backup), and they are not in sync. To fix this you need to go into Time Machine, select the disk to use, and select “none“. Then select the relevant disk/share. This appears to reset the cookie (or whatever) and allow you to run Time Machine backups again.


There are numerous similar articles around the Internet, including one article mentioning problems with sparse files  I considered a bit obvious. Sparse images/bundles only take up the amount of disk space of the files contained in them (so if you create a 100GB sparse-image and put in 10GB of files, the sparse-image will only use up 10GB of disk space. The good point about this is that you can use the remainder of the disk space for other things … for the time being. Of course, if you do not keep an eye on available space then you could have problems! The aforementioned article describes a problem that Time Machine had with people who used this ’spare disk space’ on the server, causing (backup) data loss. Fortunately it sounds like this bug has been fixed, but it is something to bear in mind!


As with all these kind of hacks, the author is not responsible for any loss of data or problems when following the instructions. That said, I would like to hear if you had problems, you can think of a better way to do this, or any other constructive feedback.

Update – 2009-07-08

By way of an update, after Konstantin’s comment, things have been working stably for me over the past few months.

Soon after writing this blog posting I noticed an error I had in my smb.conf file. I had “locking = no” on the share, for some reason (probably due to copying config from another share and not properly checking the options). I removed the line in smb.conf, created a new sparse-bundle image, and errors happened less frequently (although they still did happen for a bit).

For information, I am currently running OSX 10.5.7 (I was running 10.5.6 when it wasn’t working, and during the time it has been working), and Samba 3.0.25b (quite old, really). Samba has not been updated either, so I’m at a bit of a loss as to why things “suddenly” became stable.

iPhone – one month on

November 21st, 2008

One month of fairly light use has highlighted a few additional findings with iPhone and its v2.1 OS.


  • ipod bookmarks (where you stop watching movie) get sync’d to iTunes (so you can start watching on iPhone and continue on the computer
  • Safari web browser can have multiple windows/tabs.


  • Telephone call log shows time of call, but not length of call
  • Calendar alarm times are restrictive (5, 15, 30 mins, 1 or 2 hours, 1 or 2 days) rather than any number of minutes/hours/days (like on Palm Treo).
  • Editing a calendar item, you cannot change which calendar to assign to (must delete and re-add)
  • Safari crashes repeatedly
  • Safari can have no more than 8 windows/tabs
  • iTunes app store is a nightmare to wade through (on iPhone)

There are rumours that v2.2 should be out very soon, so I’m hoping that a lot (some?) of the niggles and problems mentioned last time (and this time) get remedied!

iPhone – initial use and thoughts

October 25th, 2008

It’s now a week on and my iPhone has had some use (not much). It has highlighted a few useability points that the Treo is much better at.

Useability issues for the iPhone:

  • iPhone lock is only 4 digits (Treo is a password of whatever length)
  • in SMS app, there’s no character/message counter (so you can see how many SMS messages you will send, and how close you are to starting a new one) – the first ‘phone I’ve seen without one!
  • in SMS app you can only delete a whole SMS ‘chat’ (not individual messages) – annoying, but the same as Treo.
  • in the call log you can’t delete an individual entry (useful if you keep track of calls, but made a typo when making the call)
  • there is no cut/copy/paste (eg to copy text or a ‘phone number from an SMS into another file, or to mass-delete text).
  • the Contacts search only matches from the start on forename, surname, or company name.
  • there is no ‘global search’ (this is of most use for Contacts, where you may specify a particular type, eg taxi, to find ‘phone numbers quickly, but also useful in password-database apps, etc); there is one on Treo (which can search and present data from all apps concurrently.
  • there are no little menus or ‘help’ areas for the apps, which can mean you don’t understand what you’re being asked to fill in (perhaps the fault of the app).
  • email – inability to select/exclude IMAP folders.
  • unable to ‘background’ applications that could really do with that feature (eg VoIP/IM)
  • no sync-ing of notes to an OSX app (although Missing Sync for iPhone will provide a front-end on OSX)
  • no easy on-screen controls once apps are backgrounded (for those that can be, eg ipod music player) – just an icon showing music playing. (You can press the button on the headphones microphone to pause/play, if you have it plugged in, or you must switch back to the ipod app).
  • inability to download music/video from the Internet to play later (except through syncing or iTunes store)
  • podcasts, etc, need to be sync’d through iTunes (rather than downloaded directly over the network) – at least for podcasts not offered through iTunes shop.
  • [if you're expecting to be able to use VoIP apps over 3G then you'll be disappointed, but shouldn't be too surprised, as mobile companies want call revenue!]

Positive useability points for the iPhone (over my Treo 600) are:

  •  you can set 2 appointment alarms (saves having to modify the alarm time when the first one goes off)
  • if you make a call and someone calls you, you can drop the current call and answer the new call (my Treo couldn’t do this, annoyingly).

Even though I’ve not used it much, the browser and related apps seem to crash fairly frequently – when I’ve been browsing apps in the Appstore (look at description and then go back) it has gone back to the beginning of the list. This is annoying when you get 2/3 down a list of 650 and have to scroll and search a lot to find where you got to. It’s disappointing that this happens with an Apple application on an Apple site.

Additionally, I’m one of those people who leaves the protective film on devices to save the screen. I’ve become more realistic over how effective these films are that come with the device – of course they tend to curl and peel fairly quickly, but some can last a while if you’re careful (as my Cowon A3 player can attest). I decided to order an invisibleSHIELD for the iPhone 3G when I bought it in the hope that the original protection would last the ~2 weeks until the invisibleSHIELD arrived. After 2 days the film covering the back is collecting dust/grit and flapping about and the film on the front is curling .. perhaps it’ll last a week if I’m careful!

For my password app I’m waiting (and hoping) that ikeepass will get released soon!

All in all I’m rather disappointed with the current functionality (and restrictions) on the iPhone. It feels as if a lot of the functionality has been missed out to keep the UI more simple, which is fair enough in some cases, but in a week of use I have already found numerous tasks which cannot actually be carried out (or are very difficult) on the iPhone as opposed to a 4 year old Treo smartphone.

The iPhone (and the Blackberry before it) ushers in a time where mobile ‘phones are used to access the Internet/email. However, the iPhone rather limits the huge benefits this could bring by severely restricting downloads and lack of multitasking – 2 things that are deliberately hampered by Apple (as opposed to the OS being unable to multitask, as was the case for PalmOS on the Treo).

I only hope that Apple will realise the benefits of allowing customers this functionality (rather than them either having to hack the iPhone, or choose and alternative smartphone) – they are definitely the market leaders for design .. let’s hope they now provide the required functionality in an up-coming OS release!

Initial thoughts – Treo to iPhone

October 18th, 2008

My main mobile ‘phone for the past 4 years has been a UK Palm-OS based Treo 600 (I say this because the US version of the Treo 600 is akin to the Treo 650 in the UK). The Treo has been expiring for a while so I needed to find a replacement fairly quickly;  I finally decided that I would go with the iPhone as it contains some pretty innovative technology.

For me, the good points of the Treo are:

  • usable mobile apps (not pointer-guided)
  • good keypad (for fast ‘typing’)
  • good battery life
  • can sync via infra-red (so you don’t need a cable)

The bad points of the Treo are:

  • a race-condition which can cause data-loss in certain circumstances.
  • no multitasking (eg messenger-type apps were almost unusable).

My main concerns with the iPhone were:

  • basic usability (including typing on the soft keypad)
  • migrating data
  • Apple’s restrictive control over the device and applications allowed on it.
  • restrictions on what audio/video formats can be used.
  • battery life

The iPhone utilises the touch-screen as a soft keypad; whilst it’s difficult to press the letters you’re aiming at, the word matching overcomes most of the typos I’m initially making.

If you ask for a demonstration of the iPhone you’ll be shown the effects of the built-in accelerometer (eg portrait/landscape view depending on how you hold the iPhone) and also multi-touch effects such as zoom in/out in the web browser – both pretty impressive (with regards to the utilisation an availability of the technology in such a device).

The iPhone uses iTunes to sync and, on an Apple Mac, it syncs to iCal, Address Book, etc, so whatever sync’ing software you use for your old ‘phone needs to sync to those apps (or you need to import the data into those apps).

My brother tried to sync his Treo to his Apple Mac found all sorts of problems, both himself and mentioned in forums. He recommended the Missing Sync applications. I took a look at them and noticed that Missing Sync for iPhone includes a migration assistant and, in addition, also backs up SMSes, call logs, and notes (which iTunes doesn’t do).

Assuming you don’t jail-break your iPhone, the only way to install applications are if they have been sanctioned by Apple and made available on the iTunes app store. The positive side of this is that Apple should be vetting applications before allowing them; the negative side is that, if Apple don’t want people to have particular functionality on the iPhone then they will not allow the application on the store (whether it’s malicious or not). Fortunately the number of applications available (both pay-for and free) on the iTunes app-store is increasing significantly, and hopefully this will continue.

I have been hearing that the iPhone needs to be recharged every day but I suspect that depends to a large extent on how much and how you use it. Obviously enabling all features (such as wifi, 3G, bluetooth, polling email) will drain the battery, along with the colour screen.

Treo mobile ‘phone replacement

October 18th, 2008

After my Palm III handheld, that I’d had for many years, died I replaced it (and my mobile at the time) with a PalmOne Treo 600.

Initially I used my Palm III for calendar, contacts, memopad, passwords (through a free little application called ‘strip‘) primarily, but also used Avantgo for reading some web news, and occasionally Mappy. All the data I entered was done so into the Palm III (rather than through ‘Palm Desktop’) as I had it with me when I needed to add the information.

Moving to the Treo I gave up using Avantgo due to a combination of me not syncing the device as often as I should (data not being added through the PC, so no need to sync to see it on the Treo) and Linux being my primary OS (no Avantgo app, or any other app that provides new data to my Treo).

Combining my handheld and mobile proved to be of mixed benefit – it meant I carried around a single device instead of two, which was good; however it meant that the ‘phone was quite chunky, and it also proved annoying if I needed to look something up when I was on the ‘phone (eg a password, ‘phone number, or check my calendar for availability).

The web browser on the Treo was pretty basic but functional if required; the email program’s lack of IMAP support (POP3 only) meant I didn’t use that.

The biggest niggle I have/had with the Treo (and it is big under the circumstances) is that there is a race-condition that means you may have to hard-reset the device and lose data. The pre-requisite is that I lock the Treo with a password. When I missed a call and someone left a message, a screen comes up on top saying “XX called a left a voicemail” with  a “listen” and a “cancel” button. Sometimes ifI press the “listen” button the Treo reboots and forgets I’ve pressed the button. Thus, the Treo boots to the lock screen, and then the “you have voicemail” application runs after and pops up. The problem is that the screen doesn’t redraw properly so you end up with a blank screen where I can type my password, but no button to click “OK” to let me in. I can’t backup the device when it’s locked and the only way to get back in is to do a hard reset! Bye bye any data since I last sync’d!

Two years ago I was looking for an up-to-date replacement and ended up getting the Nokia E70 as it was able to do VoIP. Running a Series60 OS (Psion’s handheld OS, before Nokia bought the remnants company) I thought it should be quite good. Unfortunately the VoIP application was severely limited (no use to me) and the pain of exporting/importing/fixing data from Palm to Series60 meant that I never used the E70, and the Treo lived to fight another day (or couple of years, as it turned out).

Fast-forwarding to today, I was looking for what I had hoped of the E70 and a bit more – email, web access (finding out if the London transport system is working, etc), a map application (preferably with GPS) to avoid getting lost, secure terminal (ssh), and a camera would be nice (for emergencies) .. and a suitable mobile talk-plan. I’ve become wary of getting a ‘phone off-contract (Orange were happy to  pay towards the new handset if I signed a new contract, but would not support or insure it which they would do otherwise) – I’m not that desperate to get a particular ‘phone!

I shortlisted to two smartphones – the Apple iPhone 3G on O2 (hardly a surprise) and the Nokia E71 on Orange (my current mobile operator). It would have been great to actually try these ‘phones out to check real-world functionality and useability, but that is reserved for the realm of the reviewer; in liu of this you have to make do with reviews (that tend to cover the basics) or ask friends.

For the iPhone 3G I asked friends who had them and they all raved about it. For the Nokia E71 the most in-depth review I could find was from allaboutsymbian which proved to be very good but left me wanting to try the ‘phone for myself.

In the end, and despite an excellent offer from Orange (who I’ve been with for 12 years or so), I tentatively purchased an iPhone 3G and talk-plan, hoping that the iphone would live up to the hype and the O2 service would be as good or better than Orange.

Let’s hope I made the right decision!

(We)blog starter

October 18th, 2008

From back when (we)blogs started I had considered writing one. That thought didn’t last too long when I saw what rubbish most people wrote, and considered what pearls of wisdom I had to offer the Internet community (in short, not much). I consider blogs to be like a diary – documentation about point-in-time thoughts or actions rather than being for procedures, reviews, etc.

From time to time I have reconsidered and come away with the same answer as above, even when my brother asked me to set up a blog on his website. I’ve generally preferred to document stuff on a wiki, as that seems a more logical way to organise and provide my information for people.

Sometimes, however, there have been times when I’ve considered the best software or hardware to use for something (eg what mobile ‘phone to get), or noted down a procedure thinking it was a one-off .. and then, months or more later I’ve wondered why I made that particular decision.

This is the reason I am starting this blog .. for me as a personal reference. If others gain use from it (aside from abusers) then fine.

Let’s see where this takes me …