Another Netgear device dies… My GS605 Gigabit Switch

I’m paranoid about backups (in case you hadn’t noticed)! I have a LaCie d2 Quadra attached to my Mac Pro via firewire 800 for daily backups. Then I do weekly backups to a D-Link DNS-323 NAS box, monthly backups to a Synology DS210j and ad hoc backups to a Synology DS108j across my home network. Oh and let’s not forget my photos stored in Flickr and other stuff stored in DropBox

Netgear_GS605

Netgear lasted just 10 months...

Now since I started backing up to NAS devices about ten months ago, I decided to go with gigabit for my home network. So the Mac is connected to an Airport Extreme base station and from there a Cat 6 cable runs to a Netgear GS605 5 port gigabit switch in my loft where the three NAS devices are. So far so good and everything was working well, until ten months later the Netgear switch decided it wasn’t going to play gigabit speeds. Despite the lights still showing green (to indicate a gigabit connection), my network transfer rates dropped to pitifully slow speeds. I tried everything I could to persuade the GS605 to behave but it was having none of it. What was also interesting was that removing the switch altogether and connecting the devices directly using the same cabling, everything was normal. There was no doubt about it – the switch was slowing my network speeds to less than a tenth of what they were before. So after mucking around trying everything for a whole afternoon I decided to call Netgear.

Oh dear. Contacting Netgear support very quickly became an exercise in frustration, so I decided that it would be quicker, cheaper and much less

TL-SG1005D

Same features, half the price.

stressful to replace the switch with something else. I checked out Amazon UK and plumped for a TP-Link TL-SG1005D for just £13.67 with free delivery – less than half the cost of the Netgear offering. A couple of days later it arrived and was installed within ten minutes and everything is back to normal. Like the Netgear GS605 the TP-Link TL-SG1005D is a 5 port non-blocking gigabit switch. Like the Netgear it’s a small desktop/home device. Like the Netgear it has a power light plus a light for each port that glows orange for a 10/100 connection, green for a gigabit connection and which flickers to indicate traffic. Unlike the Netgear, the TP-Link has a sensibly small transformer built into the plug, runs very cool indeed and costs under £15.

Aside from this little exercise probably saving me some money, effort and a fair amount of stress, it has reminded me that in some cases there’s little point in paying a premium for the big name brands when the budget ones will work just as well.

Uninstalling apps – more secrets

CleanAppI’ve written a couple of posts before about uninstalling apps from a Mac, particularly for those who subscribe to the school of thinking that dragging the app to the trash can is all it takes. Now I’ll say up front that in a lot of cases that may be sufficient and work perfectly well for a lot of apps, however not all apps are equal and some will inject stuff into your Mac in places you’d never look. This ‘debris’ gets left behind with the trash can method of uninstalling, and it can even catch out those who go to greater lengths to keep things tidy. Personally I get all fidgety thinking about what might be left behind – to me it’s just like painting over the top of wallpaper…. and then papering over the top of that. Yuck!

Now I’ve tried various uninstallers in the past and I eventually plumped for CleanApp for a number of reasons. For starters it has the ability to log what an app is doing as it installs and runs and can then made a pretty good guess as to what needs to be removed when uninstalling it. In addition to this, it will (if you let it) record what files you allow it to delete and then store those results centrally for the benefit of  others who may want to uninstall the same app. There’s a lot more I could go into about what CleanApp can do, but that would have to be a separate post.

Anyway, I’ve been pretty confident that CleanApp will carefully remove most if not all traces of your average app. But… and there’s always a but… no uninstaller is perfect and stuff can slip through the cracks, and if you want to get all OCD about what’s on your Mac then here’s two things you might want to look out for.

First up, Agents and Daemons. May sound like a Dan Brown novel but it actually refers to processes that are triggered to run on your Mac that you may not even be aware of. Case in point – I installed AppFresh the other day as I figured it would be nice to have something automatically check if my various apps were up to date. Ok, for one reason or another me and AppFresh didn’t get along so after a few days I let AppCleaner loose on it and thought no more about it. However, what I didn’t realise was that installing AppFresh had created an agent called de.metaquark.appfresh that would run in the background at certain intervals. That in itself is fine and it’s part of the way AppFresh works – checking for new versions of your software in the background. The problem was that when AppCleaner removed the AppFresh application, this agent was left behind. How did I discover this? Well I was actually using Lingon to track down Google agents or daemons that were running on my Mac (and yes there are a couple!) and I happened across the AppFresh agent by chance.

Ok so having an agent that runs where the app that it runs has been uninstalled isn’t necessarily a problem. Probably all that will happen is that you’ll get entries in the console saying it couldn’t be found. Not the end of the world… unless you’re OCD about your console too! The next challenge is obviously how to remove the agent for an uninstalled app (assuming you’ve decided it’s safe to do so – which it typically is). Lingon will let you create new agents but it won’t let you delete them – you need to use Finder to locate you wayward agent. In the case of AppFresh it’s listed under ‘My Agents’ in Lingon meaning it’s an agent that’s triggered when I log in to my Mac. As such, the agent consists of a file (with the same name as the agent of course) that’s located in your <username>\Library\LaunchAgents folder. Off I went to that folder and sure enough, there’s a file called de.metaquark.appfresh.plist sitting there, ready to be removed. Now what I would suggest at this stage is not to delete the offending .plist file but rather to move it to a temporary folder somewhere. That way if you hit any problems when you next logon then you can always get the file back easily. Hopefully though you’ll be fine.

So there you go, that’s just another little bit of debris that can get left behind when uninstalling apps. Obviously it’s up to you as to whether or not you want to track these things down and remove them, particularly if your Mac is working just fine. Even so, I find it quite interesting using something like Lingon just so that I’m aware what 3rd paty processes are running, or have been set to run on my Mac. While digging around I also found a daemon that relates to SugarSync which I uninstalled a few months ago (in favour of DropBox).

And did I manage to find those Google agents that I was looking for? Well yes… in two places

  • Users Agents (launched when anyone logs in)
    • com.google.keystone.root.agent
  • Users Daemons (launched at system startup)
    • com.google.keystone.daemon

Ok I won’t go into the rights and wrongs of agents being run even when users who haven’t installed the software are logged on, but there they are in all their glory. Will I be removing them? Well the only Google software I have on my Mac is the Chrome browser which I don’t use that often. If I uninstall Chrome then I’ll certainly remove it’s secret partner.

The second thing I was going to mention, and this is getting really picky here… is Little Snitch. I love Little Snitch which is probably more down to the control freak in me than anything else! Anyway, It’s worth remembering that if you’re a Little Snitch user and you’ve granted (or denied) network access to an app, then when you uninstall that app there may be some tidying up to do in Little Snitch. Again this isn’t strictly necessary it’s just a way to keep things neat (there’s that OCD again). Little Snitch is very helpful in that if it can’t find an app that you have set up a rule for, then it will display the app in red in it’s configuration window. All you have to do is to delete the rule for the uninstalled app. Job done.

Now, can anyone tell me how I can transfer this compulsion for neatness on my Mac to the state of my kitchen?!

The Snow Leopard Pixelated (Fuzzy) Icon Bug

In the interests of wasting more time than is healthy on my Mac, I have for some time now, been adding custom icons to many of my folders. Where it is most prevalent is in my ‘install’ folder. While I religiously back up my Mac in various ways every day, I have a folder called ‘Software Install’ in which there is a subfolder for every application, preference pane, or whatever that I have bought and/or downloaded and use on my Mac. In each application’s folder I have:

  • The current (latest) version of the app as downloaded from MacUpdate or the authors website.
  • The previous version, just in case there’s a problem and I need to revert to it.
  • An encrypted text file containing my license details for purchased software (which I also store in 1Password).
  • A ‘webloc’ document linking to the author’s site.

The theory is that if I ever need to re-install an app, or I want to rebuild my Mac or even build a new Mac, then I have all I need to hand in order to quickly do whatever I need.

So far so good, but what I also like to do in my Software Install folder is to be able to easily see if an app is paid for or ‘free’, if it’s a beta version and if the software is actually on CD and I just have downloads of the update files. To do this I use custom icons and, even though I say so myself, I think it looks good and makes things pretty clear…

Install Folders

Green = 'free', Blue = paid for, etc...

…that is, until the icon display bug in Snow Leopard rears it’s ugly head! You see there’s a bug in Snow Leopard whereby when it goes to display your custom icon it uses a lower resolution version of the icon that ends up making it look ‘fuzzy’. What’s more, when the problem gets really bad, it doesn’t display an icon at all! Now if you’re here looking for a permanent fix then I’m afraid you’re out of luck. This bug has existed in Snow Leopard for at least a year and there’s no indication from Apple that they’re fixing the problem or even acknowledge that it exists. What’s more, the problem doesn’t just affect custom icons you’ve created or changed yourself, it can affect Apple’s own apps if they have a unique icon.

Fuzzy Icons

Do not adjust your eyesight!

So what do we know about the problem? Well aside from the fact that it’s been around for a fair old while – it seems to relate to the way SnowLeopard handles information about what icon to display for a given object. System objects of a certain type, e.g. the default blue folder icon you get with Snow Leopard, seem to be unaffected. That suggests that icon data isn’t stored with each occurrence of those particular objects, rather there’s a flag somewhere that says “this object is a folder and it doesn’t have a custom icon, so use the default system one”. So no matter how many custom icons you’re using, the default system ones (like the blue folder) always appear correctly.

Next, there seems to be a threshold, i.e. once you pass a certain number of custom icons on your Mac, then the problem manifests itself. This could suggest that these custom icons are being cached somewhere (in a file?) and that there’s a finite amount of space available to this ‘custom icon cache’, or the process that reads it. Once you exceed that limit, OS X starts scaling down the custom icons (to lower resolutions) to conserve space, and if it can’t do that, well then certain custom icons just don’t get showed at all.

Finally, this isn’t a problem that only manifests itself in Finder. I use CocoaTech’s Path Finder as a Finder replacement and it happens there too. I’ve also seen it happening in ForkLift, so it’s the underlying system that these apps (and Finder) are talking to that has the problem.

Ok, now that we’ve an idea why it might be happening, what can you do about it? Well not a lot unfortunately. There’s no permanent fix so far as I can tell, just workarounds or stop using custom icons. As far as the workarounds go, well the idea is to try and force OS X to rebuild its caches and you do that either by rebooting, or by using a utility like Onyx, Ice Clean, MacCleanse etc to manually purge the a cache without a reboot. And which cache is it you need to clear down? Well that doesn’t seem to be clear at the moment either, but User caches look like a good bet (I’ll know more once I’ve done some more research). Oh and if you do decide to go down the route of clearing caches, be aware that Snow Leopard uses caches to speed things up so you may notice that the next time you reboot after clearing a cache, your Mac takes longer to start and the system may seem a bit sluggish for a while as caches are rebuilt.

There’s also a theory that deleting the hidden .Ds_Store file in a folder will help, or refreshing the Icon Previews by switching them off in Finder (or Path Finder) and then switching them back on again.

At best the above tactics may relieve the situation temporarily – that’s certainly my experience and what I’ve seen trawling the various support forums. The (more permanent) alternative is to stop using custom icons wherever possible and revert to the default ones. Not great if like me you like to customize your system to make it a little more informative.

So to wrap up, I’m sorry I can’t offer more positive news. On the other hand I can always hope that an Apple employee stumbles across this page and is someone with the power to do something about the problem. (Ok it’s arrogant of me to think an Apple employee might visit my little corner of the webiverse but you never know). I’d certainly like to think the problem will be fixed in Lion when that hits the shelves, if only because it will stop my Windows-using friends (yes I do have one or two) from looking smug when they say “Hey, what’s up with your icons, I thought Macs were supposed to just work?”…..

iOS 4.2.1 Airprint Frustration

Strangely enough I didn’t pay much attention to the release of iOS 4.2.1 even though I have a WiFi iPad, an iPhone 4, my old iPhone 3G and an Apple TV (2nd gen). Sure I was aware of the basics like improved speed on the iPhone 3G (I’ve yet to notice it), folders on the iPad, playing video from the iPad on your Apple TV, ‘multitasking’ and of course AirPrint.

So I decided to check out AirPrint and had a quick look at the Apple web site…

“AirPrint makes it simple to print email, photos, web pages, and documents right from your iPhone, iPad, or iPod touch. A few taps is all it takes to go from viewing it onscreen to holding a printed copy. There’s no software to download, no drivers to install, and no cables to connect.”

Well that looks straightforward enough. I guess so long as my printer is switched on and visible on the network (it’s shared by my Mac Pro) then I’ll be good to go. I fired up my iPad, loaded Pages, selected Print and hey presto…. ‘No Printers Found’. What do you mean no printers found? I can see it. The little green light is on. In my System Preferences on the Mac it definitely says it’s shared. What’s going on? Time to Google the answer and discover the truth behind Apple’s rather over-simplified statement. That’s right, seems there’s a key phrase missing from Apple’s web page, so I have ‘amended’ the AirPrint feature point on Apple’s iOS web page for you. Hope it’s a little clearer now…

AirPrint Clarified

There, that's better...

Obviously my Canon ip4000 doesn’t qualify, and given that it prints great photos, letters, etc., I have no intention of replacing it. Maybe there are more AirPrint-enabled printers on the way. Perhaps Apple will push an update in the future that ‘enables’ a greater range of existing printers to be used, who knows. What I do know is that their glib statement about just ‘click & go’ is somewhat misleading. Judging by the large number of queries from people who have been asking why AirPrint doesn’t work for them, it seems like a lot of people were caught out by this. Now I’m an IT person of sorts and I should know better (and do my research more thoroughly), but you can’t expect the average Joe to read that statement and then go off hunting for clarification – they just want to print.

Rumour has it that broader printer support was going to be included but that it got pulled at the last minute. Still, if Apple is able to co-ordinate the release of iOS 4.2.1 worldwide, then you’d think they could adjust a little bit of text in a web page just to make things clear? Well they do… IF you go to the iPad page, click on the AirPrint link, then scroll to the bottom of the page. That’s marketing at it’s best – big up the features in your headline and then hide the gotchas away – behind a door marked ‘Beware of the tiger’!

PS – I am aware that there is a ‘fix’ for this problem that involves downloading three files to your Mac and overwriting a couple of system files, but I’ll wait for the official fix – if it happens.

AVG Link Scanner removal problem

I have at least two failings… that I know of! First is that I like trying new software on the Mac. Second is that I’m a little bit OCD about everything on the Mac working as it should. Actually those two shortcomings of mine probably don’t sit happily together because trying out software inevitably means you end up uninstalling stuff a lot of the time and that’s where problems can easily start under OS X.

Ok I don’t know what possessed me (and you can reprimand me in the comments below for being such a wuss) but I decided to try out AVG Link Scanner for the Mac, just to see if it was any good. Ok I know that viruses for the Mac are a rare item, but the threat from malicious web sites is a bit more real and I figured… well a little bit of extra protection couldn’t hurt surely? So I installed AVG Link Scanner thinking it would happily warn me if ever I accidentally clicked on a link that would take me to somewhere that would steal my Mac’s soul! After a few weeks trying it out, I decided that it wasn’t for me and set about removing it. At this point I would normally turn to my trusty CleanApp, but seeing as AVG Link Scanner comes with an uninstaller I decided to use that instead. I always prefer to use the developers own uninstall routine if there’s one available as I figure they will know all the ins and outs of what needs to be removed. So I ran it, gave it the password it asked for and it happily told me that it had uninstalled the product successfully. End of story… or so I thought.

Next time I had occasion o reboot my Mac (to get rid of a stubborn “Firefox is already open, please close Firefox” problem, when Firefox wasn’t even running), I spotted that the AVG Link Scanner cleanup hadn’t done it’s job. There sitting in my console messages were four lines that read:

18/11/2010 06:12:34    com.apple.launchctl.Background[275]    launchctl: Couldn’t stat(“/Library/LaunchAgents/com.avg.LinkScannerAgent.plist”): No such file or directory

18/11/2010 06:12:34    com.apple.launchctl.Background[275]    launchctl: Couldn’t stat(“/Library/LaunchAgents/com.avg.LoaderAgent.plist”): No such file or directory

18/11/2010 06:12:34    com.apple.launchctl.Aqua[276]    launchctl: Couldn’t stat(“/Library/LaunchAgents/com.avg.LinkScannerAgent.plist”): No such file or directory

18/11/2010 06:12:34    com.apple.launchctl.Aqua[276]    launchctl: Couldn’t stat(“/Library/LaunchAgents/com.avg.LoaderAgent.plist”): No such file or directory

Obviously on bootup my Mac was attempting to launch components of AVG Link Scanner that were no longer present, so why hadn’t the uninstall routine cleaned up properly and prevented this from happening? First thing was to launch Lingon and check that there were no launchd entries anywhere that might be triggering AVG. Kinda unrelated in a way, but I felt it best to check. Everything looked fine, there was nothing relating to AVG in the launchd entries anywhere. Next it was off to check my ~\Library\LaunchAgents folder just to check nothing was amiss – all looked just fine, there were no AVG plist files as I’d expected. Ok, so now I figure the problem is that launchctl has a list somewhere of the agents it thinks it needs to start on bootup, and that list hasn’t been updated to say that AVG has been uninstalled. But where to find that list, and when (if) I do – how to edit it to remove the duff entries for AVG Link Scanner?

Well typing the error messages above and/or various keywords into Google proved a bit fruitless. Most of the hits related to cases where the thing that launchctl was trying to load did actually exist, whereas in my case they don’t.

Now this is where I have to disappoint my readers (reader?) because as yet I haven’t found the solution. Perhaps I’ll give Apple a call today and see if they can shed some light on it but I suspect a question like “Where does launchctl find it’s list of what to load and how can I edit it?!” will be met with either a deathly silence or something along the lines of “Apple does not support this sort of action”. If that’s the case then I’ll probably email AVG and see if they can’t shed some light on it – in fact I’ll do that now anyway. Sure I know it’s not ‘hurting’ my Mac because it still boots just fine and the above messages are really just a warning that something’s out of line, but I’d like to get to the bottom of it all the same and when I do I shall add the results below.

What it does go to show though is that uninstalling software from your Mac isn’t always as straight forward as it seems, even if the app comes with it’s own uninstaller!