2009年12月30日水曜日

AppleのTime Machineはユーザがログインしていないと動かない

LinuxからOS Xに移行してもう2年になる。OS Xの機能を使い倒していないので、まだApple初心者気分は抜けないのだが、たぶん一番よくお世話になっている機能はTime Machineである。簡単に書くと、Time Machineは一時間に一回、外付けディスクにファイルのバックアップを取ってくれるものだ。ディスクの破損にも対応できるし、うっかり改変・消去してしまったファイルの復元にも使える。なによりも、OS標準の機能なのがうれしい。

ところがこのTime Machine、不可解な設計になっていて、ユーザがログインしていないとバックアップが取れないのである。バックアップが起こった直後にファイルを編集し、そのままログアウトして寝てしまうと翌朝ログインするまでバックアップが取れないことになる。

ユーザがログインしていなくてもバックアップを毎時間取る

Mac OS X Hintsにその解説があった。

それによると、

  • Time Machineはユーザがログインしていなくても一時間に一度バックアップを取るようになっている
  • OSはユーザがログアウトするとディスクのマウントを外してしまう

のだそうだ。つまりユーザがログインしていないときにもTime Machineはバックアップを取ろうとするのだが、バックアップ先がない状態になってしまっている。

対策としてはターミナルで

% sudo defaults write /Library/Preferences/SystemConfiguration/autodiskmount AutomountDisksWithoutUserLogin -bool true

とする。OSの再起動をして設定を有効にする。

これでコンピュータをスリープしないようにしておけば、24時間毎時バックアップが取れる。幸せです。