ZEVO ZFS over Thunderbolt on a Mac

After years of threatening, I finally set up a ZFS pool in a Mac OS X (10.8.5) environment. Today, I downloaded ZEVO Community Edition, which is (self)-described as "a momentous, much needed and long-overdue improvement over Apple’s status quo file system (HFS+) that was designed in the mid 1980s — before the Internet existed!" I totally agree. HFS+ is a turd, allowing "bit-rot" to silently corrupt your data over time. I am a working photographer with many terabytes of data that I need to store securely. Although I keep many copies of the data (and versioned copies of important stuff), I have, on occasion, gone back to old pictures only to find them to be corrupted. This scares me. Luckily, ZFS is a file system that has been designed not to allow silent corruption. If you want to know more about ZFS, read its Wikipedia entry.

I've been warned that ZEVO may not be supported in the future, and that their version of ZFS for the Mac has the following limitations:

  • No GUI
  • No Deduplication
  • Limited storage capacity (16 TB)
  • Other natural limitations ("resource diet," they say)

Still, people seem to be successfully using ZEVO on a daily basis, and I'm told it's very stable, so here I am.

I'm not really a unix person, and I hate configuring storage via the command line. But ZEVO and ZFS is really brain-dead simple. Anyone can get a ZFS volume up and running by following instructions carefully.

Here's what I did:

  • I bought an Areca ARC-8050 Thunderbolt RAID 8-Bay. I am pleasantly surprised by how quiet this box is. When you first power it on, it sounds like a jet, but it's apparently just doing a fan test. The fan is adaptive and typically runs quietly. I can hear the box, but it's not annoyingly loud.

  • I filled the box with 8 x 4TB Western Digital Red SATA NAS hard drives.

  • I revived an old-ish Mac Mini and upgraded it to 16GB of RAM and an inexpensive SSD. This is the Mac I am going to use with the Areca box because my Mac Pro doesn't have Thunderbolt. When the new Mac Pro comes out, I'll move the connection over, assuming that OS X Mavericks doesn't do something stupid like disallow such things.

  • I registered at the ZEVO website, downloaded ZEVO Community Edition, and installed it.

  • I downloaded the latest firmware for the ARC-8050, unzipped it, and applied the firmware updates using the web interface for the Areca. The firmware update comes with 3 .bin files for the ARC1882 (which is correct), and you have to apply all of them. There is no feedback from the web GUI after you hit "Submit" until the update completes (or fails!). Scared, yet? I was, when I got here. The documentation is poor.

  • I went to Physical Drives->Create Pass-Through Disk in the Areca configuration interface and created a pass-through disk for each of the 8 drives. Creating a pass-through disk allows Mac OS X to see the drive, but doesn't allow you to use the disk in a RAID set. This is fine because we are going to use ZFS to manage the RAID instead of the Areca's RAID controller.

  • I initialized and partitioned each disk as GUID and formatted as Mac Extended (Journaled). I don't think it matters what you format as, but ZEVO definitely wants you to initialize and partition the drives.

  • At this point, running "zpool showdisks" returned:

/dev/disk1    3.64TiB  SAS           WDC WD40EFRX-68WT0N0 Media  
/dev/disk2    3.64TiB  SAS           WDC WD40EFRX-68WT0N0 Media  
/dev/disk3    3.64TiB  SAS           WDC WD40EFRX-68WT0N0 Media  
/dev/disk4    3.64TiB  SAS           WDC WD40EFRX-68WT0N0 Media  
/dev/disk5    3.64TiB  SAS           WDC WD40EFRX-68WT0N0 Media  
/dev/disk6    3.64TiB  SAS           WDC WD40EFRX-68WT0N0 Media  
/dev/disk7    3.64TiB  SAS           WDC WD40EFRX-68WT0N0 Media  
/dev/disk8    3.64TiB  SAS           WDC WD40EFRX-68WT0N0 Media
  • I created a RAID-Z2 (2-drive fault tolerance) by running:
sudo zpool create -f -o ashift=12 copepodzfs raidz2 /dev/disk1 /dev/disk2 /dev/disk3 /dev/disk4 /dev/disk5 /dev/disk6 /dev/disk7 /dev/disk8

I used "-o ashift=12" because pretty much every consumer drive is an "Advanced Format (AF) Drive," which means that it has large, 4K sectors, but fools computers into thinking that it uses the old, 512-byte logical sector. ZFS can be told to align with a 4K sector size by giving it an ashift of 12. This results in better performance.

I used "-O casesensitivity=insensitive" after being given advice by Graham Perrin. Some applications in Mac OS X do not do well with case sensitivity, which is the default setting in ZEVO. You cannot change this after the fact, so you should decide during pool creation time.

You can verify that your drive is telling the OS that is uses 512-byte block sizes by running "diskutil info /dev/disk1" (assuming one of your drives is "/dev/disk1") and looking for "Device Block Size." Mine says, "Device Block Size: 512 Bytes"

Creating the RAID-Z2 was instantaneous. ZFS is amazing.

  • I checked my ZFS pool status by running "zpool status copepodzfs" (my pool is called "copepodzfs"):
pool: copepodzfs  
state: ONLINE  
scan: none requested  
NAME                                           STATE     READ WRITE CKSUM  
copepodzfs                                     ONLINE       0     0     0  
raidz2-0                                     ONLINE       0     0     0  
GPTE_BB07001A-8B58-4C54-AF77-D71CEE3BE391  ONLINE       0     0     0  at disk1s2  
GPTE_FF882147-9E69-4CD2-AD64-EE216275F239  ONLINE       0     0     0  at disk2s2  
GPTE_BE799326-E888-4EDE-9CFD-4D604FB728C5  ONLINE       0     0     0  at disk3s2  
GPTE_22475434-3E60-491A-BD9D-8BE9EDF3239D  ONLINE       0     0     0  at disk4s2  
GPTE_957351BC-43EC-4F2F-9120-1791090539EF  ONLINE       0     0     0  at disk5s2  
GPTE_03AB5A7A-BD0A-4EF1-8613-FAB64EFBBFE4  ONLINE       0     0     0  at disk6s2  
GPTE_EAD32B39-2FEA-4B62-BD7C-E0FA115706C5  ONLINE       0     0     0  at disk7s2  
GPTE_E66C7105-DF1B-4B4A-9C72-CB74E722C1B9  ONLINE       0     0     0  at disk8s2  

errors: No known data errors
  • I claimed ownership of the new volume using "sudo chown echeng:staff /Volumes/copepodzfs".

Here's the volume (below). One thing that is strange (but consistent with what others have seen) is that it is reporting 22.4TB even though ZEVO Community Edition has a 16TB cap.


Speed Tests

Local speed test on the Mac Mini, using Blackmagic Disk Speed Test. This thing is FAST! It's a little freaky that writes are faster than reads.

blackmagic speed test-local
blackmagic speed test-local

Speed mounted over SMB / gigabit ethernet:

blackmagic speed test-nas
blackmagic speed test-nas

Note that this is 100% Mac Mini-limited, since running the same speed test to the Mac Mini's internal SSD yields similar results:

blackmagic speed test-nas to macmini ssd
blackmagic speed test-nas to macmini ssd

I get 100MB/s over my wired network when talking to a Synology DS1812+ NAS box, so the network is capable of running at full speed. Hopefully, accessing the device over the network is temporary. If the new Mac Pro and OS X 10.9 works with ZEVO, I'll be connected directly. Fast, redundant, corruption-immune and rebuild-friendly? If this works, I'll be super happy!

Setting your PATH in Mac OS X 10.8 Mountain Lion

In older versions of Mac OS X, you could set your PATH variable in terminal by adding to your .profile in your home directory. Recently, a bunch of my scripts started to fail because I use a lot of tools that are located in /opt/local/bin and /opt/local/sbin, and those paths were no longer in my PATH environment variable. As of the latest updates to OS X 10.8.3 (Build 12D78), Terminal.app no longer seems to parse .profile when it starts up. What works, now, is to edit "/etc/paths".


I just tested it, and it works.

The right way to share a file or bunch of files using Dropbox

Let's say you want to share some assets you have on Dropbox with a friend. Easy, right? You just "Share This Folder" to your friend's email address.

"Share Link" and "Share This Folder" are very different
"Share Link" and "Share This Folder" are very different

If your goal is to get the file(s) to your friend—and not collaborate on a project together—"Share This Folder" is probably not be the best way to do it. Consider the steps your friend must take, once you share the folder:

  1. from the email notification, click on the share link and login to Dropbox using the web
  2. make sure that the recipient email address is actually the correct Dropbox account (for me, it often is not, since I have multiple email addresses)
  3. sign in, and possibly, authenticate using 2-step authentication using iPhone app
  4. click to see outstanding sharing requests
  5. accept the share (at this point, every machine current logged into that account will start downloading the file(s))
  6. get the file(s) by explicitly downloading them or by waiting for the current computer's Dropbox instance to finish the download
  7. leave the shared folder

Also, as the sharer, you are subject to a large side effect from your folder share: the recipient can change the folder contents, including adding to, changing, and deleting its contents. Are you trying to collaborate with the recipient, or are you just trying to get them a file? Do you trust the recipient not to alter the contents of your shared folder?

If you're trying to get them a file or folder, you can easily grab a Dropbox share link via the web interface, or via Finder's shortcut right/control-click Dropbox menu. Use "Share Link" instead of "Share This Folder" to get a link that allows access to the file(s). Copy the link and send it to the recipient, or use Dropbox's built-in "Share Link" feature from the web.

Dropbox's web interface for "Share link"
Dropbox's web interface for "Share link"
From the web, you can copy the link with "Get link," or share it directly from the interface.
From the web, you can copy the link with "Get link," or share it directly from the interface.

From the web, you can copy the link with "Get link," or share it directly from the interface.

By using "Share Link" instead of "Share This Folder", your recipient can just click on a magic link to download the assets. Dropbox will even automatically zip up the contents of the folder for download, if a folder was shared. The risk here, of course, is that anyone with the link can access the file, so be careful about sending the link around.

Once you've shared a link, the link is alive forever. When you're done sharing, you can go back to the Dropbox web interface and remove the links. Dropbox shows a link icon next to every folder or file that has an active, shared link.

Dropbox shows a link icon next to files or folders you've shared links to
Dropbox shows a link icon next to files or folders you've shared links to

To remove the shared link, click on the link icon to navigate to the shared link, click on the gear icon in the upper right, and select "Remove Link."

Remove links when you're done sharing them
Remove links when you're done sharing them

This process is more work for you, but makes it easier for your recipient and doesn't leave you open to someone deleting or altering your content.

Are you not on Dropbox yet? Use this link to sign up and get 500 MB of bonus space for free.

Safari won't save or print PDFs: how to fix

If Safari won't save or print PDFs (but views them without any problems), you probably have an Adobe PDF plug-in installed. In Safari, go to Help->Installed Plug-ins and do a search for "PDF." If you have anything with "PDF" in it other than "WebKit built-in PDF," that is probably the culprit.

On my computer, the problem was "AdobePDFViewerNPAPI.plugin". To remove it, I quit Safari, did a Spotlight search (Command-Option space) for that file name, and then dragged it to the trash. When I restarted Safari, I could print and save PDFs again. You can also manually find the plugins by going to the system "Library" folder (the one at the root of your hard disk, not in your user folder) and looking in the "Internet Plug-Ins" folder.

I'm on OS X 10.8.2, running Safari 6.0.2 (8536.26.17).

Time Machine vs Crashplan and other thoughts on backup

Those of you who follow me on social media know that I complain often about the work required to keep my data securely and reliably backed up. Since 1997, I've been a hardcore [Crashplan](http://crashplan.com) user. I love that it features continuous, versioned backups to multiple destinations, and that it supports multiple platforms. You can backup any Mac, Windows or Linux machine to virtually any destination (folder, second computer, or cloud). I continue to recommend Crashplan over Time Machine for normal users; for a very-small monthy subscription fee, you can back up every machine in your family to an external drive, and to the cloud—a fast, local backup plus a secure offsite backup, all in one solution.

Unfortunately, I am not a typical user. I have about 10 terabytes of data that I need to keep easily accessible and securely backed up. About half of that are static image files, which are stored on a redundant NAS volume and backed up offsite, which leaves the other half—about 5 TB—needing to be actively backed up. To seed 5 TB to a Crashplan destination on my gigabit LAN, it takes between 7-10 days, which yields an average backup speed of 6-8 MB/s. That is really, really slow.[^1] Still, Crashplan mostly just worked, and I have used it in the past to retrieve old versions of files that had somehow become corrupted. The problem was that when Crashplan didn't work, it was often catastrophic. After months of continuous backups of huge datasets, Crashplan inevitably started to do bad things. Typical problems included:

[^1]: Note that seeding 5 TB to the cloud on my ~180 KB/s ADSL2 connection would take nearly a year.

1. Neverending synchronization. Crashplan was left in "Synchronizing..." state for hours or days at a time. 2. Connection problems. Crashplan would stop being able to connect to a destination, even though a machine right next to the problem machine would connect and backup without problems.

Each time, I submitted support tickets that were answered within about 48 hours, and each time, I was left without a working backup. In order to recover from these bad states, I had to start a new backup, leaving me in a vulnerable state during the time necessary to seed a new backup (7-10 days).

After 3-4 instances of this, I have come to the connclusion Crashplan is simply not reliable for large datasets. I think that if I had less than 1 TB of data, I would still happily be using Crashplan, but it stops working way too often when datasets are too large.And so, I recently gave Apple's Time Machine a try again, pointing it at a Synology NAS.

I was surprised by how fast Time Machine seeded its backup, and was pleased that Time Machine didn't simply crash when I launched it, which is what happened the first time I tried it (when the feature was new). The ~5 TB backup took less than 1.5 days, which means that it averaged nearly 40 MB/s—totally respectable for moving almost 5 million files across the network. However, after about a week, Time Machine told me that it wanted to create a new backup "to improve reliability," which is dumbed-down speak for having detected corrupted sparse bundle. This would have left me in a state without a backup again—precisely what I want to avoid. A [Google search](https://www.google.com/search?q=time+machine+synology+start+new+backup) yields many reports of problems using Time Machine to backup to NAS boxes that have built-in Time Machine support.

As a final attempt to make this work, I am now using Time Machine to backup to an iSCSI volume on a Synology NAS. [Synology's wiki](http://forum.synology.com/wiki/index.php/Backup_Mac_data_using_Time_Machine) suggests using iSCSI "if the network connection will be regularly interrupted," and pretty much every modern machine falls into this category, since notebooks are closed and moved, and desktop machines regularly go to sleep or are turned off. So we'll see what happens with Time Machine over iSCSI.

If my most recent effort doesn't work, I'll likely try to decrease the size of the data that needs to be actively backed up by switching photo and video backups to cron'ed, incremental rsync to a NAS volume. I assume that both Crashplan and Time Machine do better when dealing with smaller amounts of data.

I know there is a better way. NAS boxes seem to backup to other NAS boxes very well (e.g., Synology to Synology via rsync), and working with RAW image files off of gigabit is totally fine (I can barely tell that they aren't local). I envision a setup in which my entire working image library is on NAS, backed up to a second local NAS and to a third offsite NAS. All of my video files would be on a Thunderbolt-attached RAID, which would be backed up to NAS using rsync. My boot disk, Applications, general data and project files would be backed up using Time Machine. I think it could work, but I'd have to be strict about compartmentalizing data into source files that never change (RAW image and video files), files that are constantly in flux that need to be continuously backed up (libraries, project files and other working files).

Why did I upgrade to Mac OS X 10.8 Mountain Lion? I don't know.

I'm not sure why I upgraded today to Mac OS X 10.8 Mountain Lion. I have the most complicated Mac Pro setup around, and every time I upgrade to a new OS version when it comes out, I suffer. But I am an early adopter, so it's in my nature to do these sorts of things. It's how I learn, I suppose.

So far, I haven't noticed any striking new features in the new OS. I know there are many new features, but none of them have been really obvious, yet—at least, when using my computer in the normal way I use my computer. I am really looking forward to being able to share my screen via AirPlay, but I don't think my Mac Pro is supported, so I will likely continue using AirParrot to do the same thing. I'm not sure what else will be interesting. I'm not a Safari user, so all web-reading improvements are sort of lost of me. I signed in to Twitter, Vimeo and Flickr, but haven't seen any signs of integration, yet.

The Mail, Contacts & Calendars preference pane is a disaster. I opened it up and it doesn't match any of my Mail account settings—it pulls email addresses instead of actual usernames from mail accounts, and then complains that the passwords are wrong. It isn't obvious what it's doing.

Mail.app is now super slow. It is laggy—I have to wait seconds to do things—and I can't bring it to the foreground with a single click unless I click in the header area when it's in the background. I do have a 28GB mail archive, but Mail.app under Lion was fast, so the new one is definitely worse.

Most apps I've tried continue to work. I've had (only) the following problems, so far:

- Mail.app (performance) - YouSendIt Express (doesn't work) - Sonnet Presto Gigabit Server PCIe (doesn't work—apparently, I have the "old" version, which is 15 months old) - Calendar sync with Google (lots of conflicts, repeatedly) - Notification center (gave me the same notification every few minutes—I disabled it altogether)

The Sonnet Presto Gigabit Server PCIe card not working was a pain, especially because Sonnet tech support told me directly that it would work. This card is my direct iSCSI conduit to my ReadyNAS image archive (via LACP), and it took me awhile to figure out how to re-establish contact with the iSCSI target (which is configured for LACP, as well). I tried link bonding the Mac Pro's 2 ethernet ports, but it wouldn't connect to the ReadyNAS. I eventually solved this (temporarily) by configuring a bond in my switch and connecting the ReadyNAS directly to it (instead of directly to the Mac Pro). This worked, luckily, but going through the switch is definitely slower.

Again, I am not a normal computer user, so I don't know why I still try to do early upgrades. It never just works.

One last note: iCloud document integration will probably be great for folks who exclusively use 1 application to work with 1 document type (e.g., Pages for all word processing), but it will break down very quickly when used with file formats that are commonly used by multiple applications (e.g., save a picture with Photoshop, and then try to view it in Preview). It doesn't seem well thought out, but will probably be fine for the people out there who have no idea where they are saving their files...

If you want a great overview / review of 10.8, I highly recommend reading [the ArsTechnica review](http://arstechnica.com/apple/2012/07/os-x-10-8/), which is excellent.

Automatically syncing Instagram and iPhone photos to your Mac

The recent [Dropbox](https://www.dropbox.com/iphoneapp) update on iOS (version 1.5.1) includes a new feature that automatically uploads all photos and videos taken with your iPhone or iPad to Dropbox. Various camera apps and social network apps like Facebook's Camera app and Google+ have started offering automatic sync to their respective photo albums, but I want my pictures to sync to my computer, not to an online service. Apple's iCloud service also offers Photo Stream sync of your last 1,000 pictures, but this works best if you're an iPhoto or Aperture user. **Dropbox Photos and Video Sync**

When I upgraded to Dropbox 1.5.1, the app stopped responding altogether, so I had to remove it from my iPhone and re-download it. Once I did that, the first-use wizard connected my account and asked me whether I wanted to automatically sync photos and video to Dropbox. If you have gigabytes of media on your iPhone, be sure to tell the app to only sync new media; otherwise, you may find yourself trying to upload a lot of data over Wi-Fi—or worse, over your mobile carrier's data plan.

Once you're set up, you'll find a new folder called "Camera Uploads" in your Dropbox folder. Initial tests worked very well. Bringing the Dropbox app to the foreground will start the sync process, and when I launched the app and left it running in the background, it continued to upload (once I had kicked it off by launching it); to avoid uploading huge amounts of data over your mobile data plan (if you're not on an unlimited data plan), you may want to [keep Dropbox closed](http://bit.ly/N2KmOm).

**Syncing Instagram to DropBox**

I also like to sync my Instagram feed to a folder on my computer. To do this, I use a free web service called [Instadrop](http://instadrop.appspot.com/).

Instadrop connects with your Instagram account and automatically pushes new pictures to a Dropbox folder. It works very well—so well, in fact, that it continued to work even after I forgot how I had set it up originally. If you want to stop syncing, you can revoke access to Instadrop by going to *Dropbox->Your Account->Manage Applications*.

Once you revoke access to Instadrop, the Dropbox sync will stop.

**Dropbox security**

Remember that any app you authorize to talk to Dropbox will have access to every file you have hosted on the service. I don't like this, so I use a second Dropbox account for my mobile apps and share folders to my main Dropbox account. I also use an encrypted sparse bundle within Dropbox to store all of my sensitive information. Since Dropbox and most other cloud-based file storage services are insecure by design, you need to protect your sensitive data yourself.

Adobe Lightroom 4 DNG performance increase test

Earlier this month, Adobe announced that there would be [three upcoming improvements](http://news.cnet.com/8301-30685_3-57371809-264/adobe-offering-new-reasons-to-get-dng-religion/) to the DNG camera raw "standard" that would improve performance. I've not historically converted my RAW files to DNG, but performance improvements would certainly be a big factor in a decision to move to that workflow. I don't know whether any of the announced improvements have actually made it into Adobe Lightroom 4, but I the upgrade from version 3 to 4 last night ($79), converted some files to DNG, and ran tests. Navigation and editing was as sluggish as ever on my 12-core Mac Pro (with plenty of RAM)—I couldn't tell if there were improvements when working with DNGs. Then, I did some exports to 1920-pixel JPG files:

**Test 1: 28 ARW raw files from Sony NEX-5N** ARW->JPG, 2010 Process: **52 seconds** [ARW/DNG]->JPG, 2010 Process: **40 seconds** DNG export **23% faster**

**Test 2: 28 CR2 raw files from Canon 7D** CR2->JPG, 2012 Process: **62 seconds** [CR2/DNG]->JPG, 2012 Process: **43 seconds** DNG export **30.6% faster**

Here's the CPU graph for the export process. You can see the clear improvement in CPU utilization in the DNG export.

CR2->JPG export (green), DNG->JPG export (orange)
*24 virtual cores in 12-core Mac Pro*

It does seem that there are real reasons to convert raw files to Adobe's DNG raw format. If Adobe continues to improve DNG performance, I'll likely move my workflow over to DNG conversion upon import.

I love Lightroom—it is my photo organization and processing app of choice—but in general, Adobe Lightroom 4 feels sluggish, and it took as many as 6 seconds to move between Library and Develop modes (inconsistent, presumably due to caching). No interface move should take 6 seconds on this computer. I hope there is a performance update in the near future that deals with the poor performance.[^1]

[^1]: To be clear, Adobe Lightroom 3 also feels sluggish.

Final Cut Pro X missing media problem

I used Final Cut Pro X, Apple's controversial new "professional" video editing program to cut the trip video during my latest [Wetpixel expedition to Indonesia](http://wetpixel.com/forums/index.php?showtopic=43966). These slideshows have become a tradition for guests and combine video, stills, and music into something people can take home to show their friends and family. Using Final Cut Pro X was, for the most part, fantastic. It is really more like an "iMovie Pro" and includes one-click video stabilization, color balancing, and look filters, which were all features I used extensively. Aside from dealing with small bugs, I was able to produce a 30-minute video fairly easily, without being impeded by any critical issues. However, I am back home, and am now in the process of trying to migrate my slideshow project and event files to my main Mac Pro from my MacBook Pro. This is proving to be impossible. Two [excellent](https://discussions.apple.com/thread/3133085?start=75&tstart=0) [threads](http://www.danmccomb.com/posts/1175/tips-for-reconnecting-offline-media-in-final-cut-pro-x/) provide work-arounds for reconnecting missing media, but upon following the instructions outlined within those threads, this is what happened:

1. After copying events and projects to the Mac Pro, they showed up and opened in FCPx, but all of the media showed up as missing (red thumbnails). 2. Per suggestions, I re-imported all of the media (annoying, since the files are spread out over many folders). The red missing media icons for videos and audio were all restored to color (no longer missing). This seemed like a good sign. 3. Many JPGs in the media list were not successfully re-connected; instead, they were duplicated. I have hundreds of JPGs in the slideshow, which are now all "missing" and therefore, would need to be re-cut into the timeline. 4. Soon after re-import, I noticed an import background task running. Upon closer inspection, I realized that FCPx was in the process of *copying* over all the newly imported media instead of honoring my request to leave the files in their original location (by leaving "Copy files to Final Cut Events folder" unchecked). The source media is hundreds of gigabytes. Duplicating them is not an option. 5. Closing FCPx and re-opening it immediately causes the import process to re-spawn. If I cancel the process, the media simply does not show up in my events.

Put quite simply, there is no way to move a complicated project and its associated event media from one machine to another. The fragility of the media storage system in FCPx is shameful—it's like the product was never tested in the real world.

I will, in this case, essentially lose this project and never be able to edit it again. I suppose I'll archive the events and projects in case FCPx improves its media handling capabilities. One significant side effect: if I upgrade my machine or need to reinstall, I'll effectively lose all of my FCPx projects. Until there is serious improvement in media management, I can't see myself using Final Cut Pro X again.

Use Dropbox in an encrypted sparse bundle (and delayed app load on login)

I've recently moved my local [Dropbox](https://www.dropbox.com/referrals/NTY3ODc2OQ) folder to a folder that lives in an encrypted sparse bundle. I have nearly 50GB of data in Dropbox, and it was starting to take a toll on my startup volume, which is small—a 250GB SSD. I changed the folder from within the Dropbox preferences area, and it moved my files over successfully. This setup only works if the encrypted volume is mounted before Dropbox loads (Dropbox complains, otherwise). In particular, this is an issue if Dropbox loads on startup (and the encrypted volume has not yet mounted). I solved the problem by using an AppleScript that mounts the sparse bundle, waits a few seconds, and launches Dropbox. I added the AppleScript to my Login Items, and it is all working perfectly. You must save the sparse bundle password to your keychain for this to work.

do shell script ("hdiutil mount "/Location/of/sparse/bundle/volumename.sparsebundle"")

set theAppList to {{name:"Dropbox", vis:false}} set theDelay to 5

repeat with currentApp in theAppList tell application (name of currentApp) to launch delay theDelay tell application "System Events" try if background only of process (name of currentApp) is false then set visible of process (name of currentApp) to (vis of currentApp) end if end try end tell end repeat

Note that one can use the same script (without the "hdiutil mount" part) to launch an arbitrary number of applications after a delay. Delayed launch script source: [MacWorld Hints](http://hints.macworld.com/article.php?story=20091108173250445)

**WARNING**: This setup can really screw up applications that sync using Dropbox. Your Dropbox will no longer always be available because it can be unmounted. Do this at your own risk.

Installing a SSD in a MacBook Pro running Mac OS X Lion

I recently added a solid-state drive (SSD) to a 2011 MacBook Pro 15" to use as a new boot / applications drive.[^1] The MacBook Pro came with Mac OS X 10.7 Lion installed, and I installed the new SSD using the same method I've used with every other machine I've owned in the pas:t [^1]: I used a [OWU Data Doubler](http://eshop.macsales.com/item/Other+World+Computing/DDAMBS0GB/) to replace the optical drive.

1. I partitioned the SSD into a single volume with a GIUD partition table, choosing *Mac OS X Extended (Journaled)* as the file system. 2. I used [SuperDuper!](http://www.shirt-pocket.com/SuperDuper/SuperDuperDescription.html) to clone my old drive to the SSD 3. I used *Disk Utility.app* and ran *Repair Disk* on the SSD (In the past, I have had problems booting from newly-cloned SSDs in the past without first repairing).

I rebooted the MacBook Pro, and everything seemed to work perfectly—the Mac booted quickly and was immediately an order of magnitude more responsive (as is normal when using a machine with SSD storage). However, when I went into the Security & Privacy preference pane to enable FileVault (FileVault 2), it gave me an error message:

> *FileVault can't be turned on for the disk XXX. Some disk formats don't support the recovery partition required for encryption.*

It turns out that **FileVault cannot be enabled on drives that do not have the *Recovery HD* partition that is created when Mac OS X Lion is installed.** Because I had cloned the bootable volume to the new hard disk without actually installing Lion first, no *Recovery HD* partition was every created. To solve this problem, I had to first install Lion onto the destination hard disk (the SSD). The installation process creates the necessary *Recovery HD* partition. After installing Lion, I again cloned my old volume onto the new volume (on the SSD) using SuperDuper!.[^2]

[^2]: Alternatively, you can install Lion and then restore a Time Machine backup, which also works.

I have just completed this process, and FileVault is now encrypting my SSD.

**Useful links/information:**

- To download the Mac OS X Lion installer without installing it, run *App Store* and hold the Option key down while you click on the *Purchases* tab, and when you click on "Install Mac OS X Lion". The *Install Mac OS X Lion* app will be downloaded into your *Applications* folder. When you run the installer, it will self-destruct, so be sure to back it up somewhere. [[more info](http://support.apple.com/kb/HT4718)] - To burn your own Mac OS X Lion install DVD or USB drive, [follow the instructions here](http://lifehacker.com/5823096/how-to-burn-your-own-lion-install-dvd-or-flash-drive).

Google+'s photography engagement levels are incredible

On Monday afternoon, I decided to use Google+ to [post the slides of a talk](/journal/2011/09/12/eric-chengs-top-10-underwater-photography-tips/) I had just given at the Monterey Shootout 2011. I really like how pictures and videos are handled by Google+, and using it to present one of my talks (which are typically picture-heavy) seemed to be perfect. On Tuesday, at 3:38PM, an underwater photographer named [Elena Kalis](https://plus.google.com/114536133164105123829/posts) shared my talk with her circles on Google+. At around 7pm, I uploaded 33 underwater pictures to [my Scrapbook](https://plus.google.com/107004843925454095805/posts/656VBUUs74n). At 9:47pm, Vic Gundotra [shared a link to the album](https://plus.google.com/107117483540235115863/posts/Zkb25p2kHi6). At 10:04pm, [Brian Rose did](https://plus.google.com/u/0/113686253941057080055/posts/S53tb67UXc5), as well. Sergey Brin left a few comments shortly after 11pm (Mr. Brin dabbles in underwater photography, himself). Robert Scoble [picked up and shared the album](https://plus.google.com/111091089527727420853/posts/TpNicc8BgSg) at 12:32am.

At 12:56am, just 6 hours after I updated my scrapbook and 9 hours after Elena shared out the link to my talk, 1,430 people have me in their circles. 1,430 happens to be the exact number of [Twitter](https://twitter.com/echeng) followers I have. That's right: it took me 2 days on Google+ to arrive at the same number of followers I attracted on Twitter in 1644 days.[^1] Granted, I use Twitter as a broadcast service and tweet about all sorts of random things, but the reception to my photography over on Google+ has been nothing short of incredible. After spending a couple hours on the site tonight, it is obvious that the reception to ALL FORMS of photography at Google+ is fantastic, and that engagement levels are extremely high.

Methinks I will be spending some time over there. Want [an invite](https://plus.google.com/i/e8Qj9ye8oEM:H3n9d7n4n-M)? [+Eric Cheng](https://plus.google.com/107004843925454095805)

**Side note:** What's amusing is that this post will get picked up automatically by Facebook and Twitter, but not by Google+. I'm really looking forward to a time when Google+ gets integration with HootSuite and other social media aggregators.

[^1]: 41 more people added me in the time it took to write this post.

Validation for posting random stuff

Two years ago, I wrote a post in which I [quoted some Craigslist / Paypal phishing scam emails](/journal/2009/08/19/paypal-is-the-vehicle-for-scams-on-craigslist/). Since then, it has received over 42,000 page views and 35 related comments. I am compelled to post about things that I think will help people (and, frankly, about things that annoy me); I rely on web search for much of my online research, and it feels good participate in the community.

Cache_manager BSODs in Mac OS X Lion Boot Camp / Windows 7

After upgrading to Mac OS X Lion, I booted into Windows 7 / Boot Camp and experienced constant Blue Screens of Death (BSODs). Windows would boot, but I'd only have a minute or two before getting a BSOD citing "cache_manager" as the culprit. The fix was to rename the Apple HFS driver, which can be found at:


After renaming that file and restarting (BSOD helped me to restart quickly!), Windows 7 became usable again. Note that this will prevent Windows from being able to see your Mac OS X file system (not a big deal, for me).

Source of fix: [Apple Support Communities](https://discussions.apple.com/thread/3264318)

Modifier key settings in Mac OS X keyboard preferences don't work if you use a Logitech mouse

I had a kernel panic today (quad-core iMac running Mac OS X 10.6.8), and when my Mac started up again, the Command and Option keys on my keyboard (a Microsoft Ergonomic Keyboard 4000) were reversed. Normally, this wouldn't be a big deal—one just goes to the Keyboard Preference Pane and changes the modifier key settings to swap the two keys. But in this case, no amount of changing the modifier key settings had any effect. This is incredibly frustrating for someone who is nearly 100% keyboard shortcut dependent.

Apple Keyboard Modifier Hell

After over half an hour of trying various things like rebooting, resetting PRAM, trashing assorted .plist and preference files, I finally unplugged the Logitech wireless transmitter that talks to my Logitech Performance MX mouse and set modifier key behavior using an Apple Magic Mouse. It worked, and the settings stuck even after I plugged in the Logitech Unifying Device (the USB transceiver). Strangely, if I go to the modifiers preference now, it shows that it has reverted to default, even though my keyboard suggests otherwise.

If you've discovered this site because you have same problem, unplug your Logitech mouse and make the changes again using an Apple mouse. I hope it works for you!

Epic iPad 2 review at Noodletron

[Sterling Zumbrunn](http://sterlingz.net/) and I are excited to launch [Noodletron](http://noodletron.com), a new technology website dedicated to discussions about technology, digital workflow, social media, and photography.

Our first big article is a [review of Apple's iPad 2](http://noodletron.com/2011/361/), a device that still has people lining up at Apple stores nearly three weeks after its release date. Sterling has tried more iOS apps than anyone else I know, and his thoughts about iPad and iOS are always worth reading.

We could use some help spreading the word about Noodletron and the iPad 2 review! If you like the review, please share it with your friends. :)

Sonic.net says no bandwidth caps

I was happy to receive this email today from Sonic.net (my ADSL provider). I love their service: I'm getting 30Mbps down and 2Mbps up, and their current plan (which I'm going to switch to) offers 40Mbps down for less than $70/month. I don't abuse my bandwidth, but it's good to know that I have no caps. > *With news about AT&T’s announcement last week that they will be imposing usage caps on their ADSL and U-Verse VDSL customers, we have received a lot of inquiries about whether or not this will affect Sonic.net customers, and whether we plan to follow the lead of Comcast and AT&T. We are also being asked why AT&T is imposing caps, and about their $10 per 50GB overage charges.*

> *Here's the bottom line: Sonic.net has no plans to impose usage caps on our customers. For more details and discussion of this topic, please click to read the article on our site, Drilling Through the Caps.*

> *Thank you for very much your ongoing patronage, and for spreading the word about Sonic.net -- uncapped, unlimited, and the best customer service around!*

> *Sincerely, Dane Jasper CEO & Co-Founder [[full story](http://corp.sonic.net/ceo/2011/03/23/drilling-through-the-caps/)]*

Using Eye-Fi to automatically transfer images to DropBox

I have become dependent on [DropBox](http://db.tt/wne3FtQ) as my cloud solution for working files (with versioned backups!), and for cloud syncing support in many of the apps I use. I'm also an [Eye-Fi](http://www.eye.fi/) user, and really like the idea of having a camera that automatically dumps images into a folder in DropBox. I asked Eye-Fi for this feature, but they told me that it's up to DropBox to integrate with Eye-Fi—not the other way around.

Eye-Fi did, however, recommend that I give [Pixelpipe](http://pixelpipe.com/) a try. I successfully configured Pixelpipe so that I could automatically transfer all JPG images on my Eye-Fi card to a folder in DropBox, but I want everything to be transfered, including RAW files and videos.

My current solution is to use Eye-Fi Center on a Mac Mini that is (already) running all the time in a closet at home. That Mac Mini has a temporary DropBox account running on it, and Eye-Fi dumps images into a shared DropBox folder there. Once it arrives on my Mac Mini, DropBox pushes it into the cloud, and images and videos are then accessible on all of my machines and mobile devices.

This method is totally wasteful, but it works! I hope someone comes up with a better solution in the long run.

I'm also looking for an iOS camera replacement that shoots directly to DropBox. At the moment, I use the DropBox app to push individual images, which is inconvenient.