Friday, August 12, 2011

Shrinking a pre-allocated Mac VMWare Fusion virtual machine image

My "pre-allocated" VMWare image was taking up 120 GB on my drive for about 40GB of data. I found many references on how to shrink these images (.vmdsk), but they were largely obsolete and misleading. It takes a while, and the steps are weird, but it's fully supported by VMWare 3.

At a high level, here are the steps. Alas, I'm short of time so no details.

  1. Close down the guest OS.
  2. Using VMWare settings for 'hard drive' you can change the image from pre-allocated to the default. This takes hours but it works.
  3. Open the guest OS and run XP defrag.
  4. In the guest OS update VMWare tools.
  5. In the guest OS Run VMWare tools "shrink". Takes hours.
  6. In the guest OS Defrag again as a nice-to-do.
  7. Shut down and restart to make it all nice and clean.

My image now consumes about 45 GB of drive space. It's not pre-allocated, so it will get host OS fragmented as it grows but I can live with that.

Wednesday, August 10, 2011

Strangest sync error ever - Google Calendar

This is very strange.

I use Google Calendar Sync to sync an Outlook/Exchange calendar to Google Calendar.

On that machine I authenticate with two Google accounts, one has two factor authentication.

It looks like Google Calendar Sync is posting transactions to both accounts even though it has only one account's password.

At least, that's the best explanation I have so far.

Again - one of the weirdest things I've seen in a while, even allowing that sync is fraught with weird errors.

Tuesday, August 09, 2011

Steve Jobs hates me: Viewing Mac OS X Lion Parental Control logs

OS X Lion is not all bad. [1]

Yes, it's a memory hog (64 bit hurts). Yes iCal and Address Book drive strong geeks to drink. Yes, it's insane that it can auto-quit background apps (really, that's nuts).

On the other hand, 10.7.0 is less buggy than 10.6.0 or 10.5.0. That's progress. I might even upgrade my main machine after version 10.7.3 instead of waiting for 10.7.4.

Better yet, Mission Control and Full Screen are very nice on an 11" MacBook. Well done Apple.

Indeed, Mission Control is so good I dared to hope that Apple had fixed one of the most ridiculous bits of OS X -- the non-resizeable Parental Control log file window (See: Viewing Mac OS X Parental Control logs).

In 10.5 and 10.6 this screen has a control for a resizeable window, but it would only extend vertically. Most of the logged URLs were unreadable.

So what happened in 10.7?

You are guessing nothing. You would be wrong. The resize control was fixed. It now correctly indicates that the window can only be sized vertically.

Think about that.

Apple recognized there was a bug. They put some (small) amount of resources into fixing the bug. Instead of making the window resizeable however, the engineer fixed the control.

That can't be incompetence. That has to be malice.

There's only one possible explanation.

It's personal.

Steve Jobs hates me.

[1] The best review isn't the celebrated, and quite good, Ars Technical Review. It's Robert Mohn's Macintouch review. If you are only going to read one, read that one.

Sunday, August 07, 2011

Blogger search: no longer complete

For years Blogger's search of past posts worked well. Lately I've found it misses strings in some older posts, even strings that appear in post titles. So there's some unannounced limit been placed on search, possibly for performance reasons.

I hope Google will fix this, though it's a bad sign that they didn't bother to announce it. In the meantime I'm looking into what I can do with Blogger's export to "Atom Export Format". On first pass, it's not too promising. Gordon's Tech produced a 14MB XML file, including comments but excluding images (Text Wrangler opened it without blinking).

What I want is an HTML archive I can view locally and let Spotlight index. The sort of repository I used to create by running a robot against blogger.com. Maybe I need to try that again.

 

 

Saturday, August 06, 2011

What do do with an old iMac that shuts down unexpectedly?

Our 6yo G5 rev B iMac is shutting down unexpectedly. It's mostly likely the power supply, which is sold for about $150 with shipping. (This was an exotic Apple model -- it was designed for easy repair.)

It's an old machine with a partially delaminating monitor. So it probably only has a couple of years left in it anyway. That argues for replacing it with a mini and a monitor for about $800.

On the other hand, the kids use it when their MacBook is busy and it doubles as a movie theater and media server. It can run Classic, so it's valuable to people and businesses running legacy software; it still has a resale value of about $450. Throwing it out will cost money, plus that kind of waste hurts my soul.

Yet again, do I know the sudden shutdowns are a PSU? Could be something else. The costs of investigation are high ... but not as high as the pain of buying and configuring a new machine.

Decisions ...

I'm probably going to do a hardware test (if it will run long enough), reset the SMC/PMU and physically inspect the capacitors and mb. If it does well there I'll order the PSU.

Update: Capacitors look good, but it shutdown during the hardware test. I'm 90% sure it's the power supply, there was a brief recall five years ago but it was fine then. It's long past the time even a generous vendor would replace a PSU, so I ordered a "new" one from iFixit. The quotes because "new" in this context means Apple sourced -- I very much doubt anyone is making truly new G5 iMac PSUs. iFixit was $15 more than the lowest price, but they have by far the best reputation of the vendors I found. I will also be using their install directions, so I like to encourage them.

Update 8/10/11: The replacement came from iFixIt in a couple of days. It was very well packed. iFixIt includes a mailer to return the old supply so it can be "recycled". I think that means returned to Apple to be refurbished. Please do that, there can't be too many of these in circulation.

As usual, installation was trickier than the iFixIt  video suggests. I suggest look at user notes on all the G5 supplies they sell to get more tips. Here's what I wrote:

1. It is very hard to disconnect the optical sensor cable from the motherboard. There's no hidden catch, you just have to insert your spunger/thin screwdriver blade between the fittings and gently twist. I used a surgical clamp to also pull on the cable -- that did it. (The cable is being replaced, so you don't need to worry about it).
2. The top right screw is hard to remove. I had to partly remove it, then lever the power supply up as in the video while continuing to loosen it.
3. I used thin wide screwdriver blades to disconnect the power supply connect, my spudger wasn't rigid enough.
4. The supply has clearly been used before. In the context of something this old "new" means Apple refurbished. That's fine.
5. Beware the optical sensor, it's glued to the power supply. Look for it. When you insert the new supply place it first.

Even though my supply lasted a reasonable (but not great) amount of time, I've been annoyed at Apple for the high failure rate on the G5 iMacs. Going through the removal process though, there's nothing "cheap" about this bizarre and exotic "power supply" with its attached optical sensor. Apple must have been very unhappy with the manufacturer; I bet there's an interesting story buried in this supplies high failure rate.

iFixit included a $5 off coupon code. I'll never remember it, so feel free to try it: 5611FIXIT.

Lastly, the repair does seem to have worked. With the old supply machine shutdown less than two minutes into the hardware test. This time it completed a 1.5 hour hardware test.

Thursday, August 04, 2011

Oracle ODBC access with 64 bit Windows 7

I know it's a dying technology, but I still get a lot of value out of Microsoft Access manipulation of data stored in Oracle tables. I have a Windows 2003 server VM that runs Access 2003 and has 32 bit driver access to our corporate Oracle tables.

We're moving to Windows 7 (finally, and boy is Win 7 ugly), so in addition to my ancient VM I looked into using Access 2007 with those tables. The first thing I discovered was the 64bit Oracle 10.x installer didn't install the expected Oracle ODBC drivers. I also noticed that Windows no longer includes Microsoft's ODBC driver ...
Data Access Technologies Road Map

... Oracle ODBC and Oracle OLE DB: The Microsoft Oracle ODBC Driver (Oracle ODBC) and Microsoft OLE DB Provider for Oracle (Oracle OLE DB) provide access to Oracle database servers. They are built by using Oracle Call Interface (OCI) version 7 and provide full support for Oracle 7. Also, it uses Oracle 7 emulation to provide limited support for Oracle 8 databases. Oracle no longer supports applications that use OCI version 7 calls. These technologies are deprecated. If you are using Oracle data sources, you should migrate to Oracle-supplied driver and provider....
I spent a few minutes poking around the net, and it looks like there's no easy way to install Oracle's drivers into 64bit Windows. Indeed, it's not clear they exist. I'll do a bit more research with some more focused searches and post an update here.

Progress, as is usual, is a mixed bag. Access was an ugly, awkward Frankenstein application, but there's nothing like it for mixing and matching a wide range of disparate data sources. The deeply nested and reusable query modules could be horrendously slow -- but for what I do the performance was often adequate.

I'll miss Access.

Update: Superuser.com tells me that there exists a 64bit Oracle 11g driver. However, the user's unspecified version of Access is 32bit and it can't use the 64 bit driver. We're on Oracle 10g.

Wednesday, August 03, 2011

Wet iPhone: prevention and treatment

The iPhone is too precious. The fragility is not the big problem; any well made case seems to make an iPhone as durable as most any other phone. It's the water resistance. Or rather, the lack of resistance. When it comes to water, the iPhone makes Barack Obama look a tough negotiator.

It doesn't have to be this way. There's not much good to say about the obsolete Blackberry, but it's pretty good at surviving a swim. Maybe Apple will make some iPhone 5 or, more likely, iPhone 6 improvements. For example, they could go to a different connector, or get rid of the water-vulnerable home button.

In the meantime, every iPhone user needs to know the water drill. Go right now and read the Apple Core's overview. I've been through the rice version of this drill several times (family of five + 1 dog = 5 iPhones with 3 SIM cards = water practice). The key steps are:

  1. Wipe (shirt can work), remove case, wipe/shake water off.
  2. Power down the phone. Don't check to see if there are problems.
  3. Dry thoroughly. (I avoid compressed air, might push water into case).
  4. Place in a sealed container or baggie of rice (brown is best) or, if you have some stockpiled, surround with DampRid pouches (Amazon sells 'em).
  5. Leave in a hot dry environment for 24 hours. Some experiment with car in sunlight -- I worry a bit about too much heat. I like using radiant heat from an incandescent bulb.

Memorize and be ready. Remember, a new iPhone 4 is through;">$600-$700 $250 or so. You don't get the subsidized price unless your contract is up, and then you get a new contract a non-warranty iPhone repair will cost about $270 or so. [1]

That's treatment. Prevention is better. Most iPhone cases don't seal off vulnerable areas; I'm considering the Otterbox Commuter because of the port plugs. If you're boating, or even biking/walking in a downpour, you want a waterproof pouch like the Seattle Sports Dry Doc Digi Case. I bought one for my bike bag, but after my the middle kid's phone did yet another night in a rice bed I made it his phone case:

He can use the phone through the case in most locations, including anywhere outdoors. In his bedroom and in the water-free living room he uses the naked phone. He's happy with this arrangement, and I'm buying another waterproof case for my own phone and (another post) my MacBook Air.

[1] Correction! Martin reminded me in comments. I was thinking replacement, but in this case the phone is not lost. Apple will do refurb swap for about $270. I don't know, however, if this implies a contract extension.