Tips:ログアウトしていてもTime Machineでバックアップを取る方法

海上忍
2010-07-14 15:11:05
  • このエントリーをはてなブックマークに追加

 Mac OS Xにもはや不可欠と思う機能のひとつに、「Time Machine」がある。ご存知、Leopard(v10.5)のとき導入されたバックアップ&リカバリ機能だ。過去のファイルを復元するUI(Spotlightで検索できる)もよくできているが、ハードリンクというUNIX伝統の方法で保存容量を節約するしくみにこそ、感じ入る部分があるような気がする。

 そのTime Machine、外付けHDDを接続し機能を有効にしておくだけでOKというイージーさを備えているが、どうにも気に入らない仕様がある。Time Machineの機能を有効にしているユーザーがログアウトしているときには、バックアップ先の外部ディスクがアンマウントされた状態となるため、バックアップを取ることができないのだ。

 しかしよく考えると、この問題はTime Machineではなく、OS Xのディスクマウント処理に問題があるといえる。ユーザーがログアウトするとマウントが解除されてしまうため、バックアップ先がなく処理を継続できないのだ。ユーザーがログインしていなければ作動しない、というTime Machineの仕様はここに原因がある。

 この問題を解決するには、以下のコマンドを実行し、ユーザーがログアウトしている状態でもオートマウント機構が作動するよう設定する。これで、ログアウトした状態でもTime Machineによるバックアップが可能となる。

$ sudo defaults write /Library/Preferences/SystemConfiguration/autodiskmount AutomountDisksWithoutUserLogin -bool yes

※無効にするときは、次のコマンドを実行する

$ sudo defaults delete /Library/Preferences/SystemConfiguration/autodiskmount AutomountDisksWithoutUserLogin

 ログインした状態が必須条件にならないのであれば、cronによる自動化処理を検討してもよさそう。Time Machineでバックアップを実行するプログラム本体は、以下のパスとなるので、適当な曜日/時間に実行されるようエントリを追加しておけばいいだろう。なお、Leopard以降のシステムでは、cronはlaunchdによって管理されるようになり、設定ファイルも/usr/lib/cron/tabs以下に保存されるよう変更された。エントリを追加する場合も、「crontab -e」を利用すること。

/System/Library/CoreServices/backupd.bundle/Contents/Resources/backupd-helper
  • 新着記事
  • 特集
  • ブログ