るるぷらす

るるぷらす、だおー

OS X Server を導入して App Store ダウンロードとソフトウェアアップデートをキャッシュしよう

f:id:egyo2nd:20140409145425p:plain

ご家庭内に複数の iOS デバイスや Mac があるなら OS X Server を利用すると大変便利です。最近の OS X Server には App Store (Mac App Store 含む) のダウンロードをキャッシュする機能と、ソフトウェアアップデートを事前にダウンロードしてキャッシュする機能が搭載されています。

これらの機能を有効にすれば、ご家庭内のデバイスが OS X Server と同じネットワークにいるだけでキャッシュ機能を利用することができます。大きなファイルの場合でも、待たされることなくインストールが始まるのでいい感じ。

早速、インストールして有効にしてみましょう。

OS X Server

OS X Server

  • Apple
  • ユーティリティ
  • ¥2,000

サービス > キャッシュ を有効にすると、ネットワーク内で App Store からダウンロードしたことのあるアプリがキャッシュされます。最初のダウンロードは時間がかかりますが、再インストールとか、2つめのデバイスにインストールするときは Server のキャッシュからインストールされるので時間が短縮されます。

f:id:egyo2nd:20140409145423p:plain

キャッシュでは、保存先を編集...から変更することができますので、空き容量に余裕があるボリュームを選ぶことができます。選択したボリュームの Library > Server > Caching > Data にキャッシュが保存されます。

詳細 > ソフトウェア・アップデートを有効にすると、現在アップルが提供しているソフトウェアアップデートのすべてがダウンロードされてキャッシュされます。アップルが新しくアップデートを提供すると自動的にダウンロードを始めます。初めてインストールするときも Server のキャッシュからインストールされるので時間が短縮されます。

f:id:egyo2nd:20140409145424p:plain

しかしながら、ソフトウェア・アップデートでは保存先を指定することができず、システムドライブにキャッシュしてしまいます。かなりの量があるので空き容量が少ないシステムドライブの場合はすぐにいっぱいになってしまいます。そこで、lnコマンドを使って別のボリュームに移動させてしまいましょう。

1. Server から ソフトウェア・アップデート を切って無効にする。
2. ターミナルから次のコマンドを入力

% sudo su
% ditto -v /Library/Server/Software¥ Update/Data/html/content/downloads /Volumes/Local¥ HD/Library/Server/downloads
% mv /Library/Server/Software¥ Update/Data/html/content/downloads /Library/Server/Software¥ Update/Data/html/content/downloads1
% ln -s /Volumes/Local¥ HD/Library/Server/downloads /Library/Server/Software¥ Update/Data/html/content

3. Server から ソフトウェア・アップデート を有効にする。

しばらくして運用して問題なければオリジナルを削除します。

% rm -rf /Library/Server/Software¥ Update/Data/html/content/downloads1

ボリューム名とかは適宜自身の環境に置き換えてください。また、rmコマンドは細心の注意で実行してください。こちらでは責任は負いません。

これで App Store ダウンロードとソフトウェアアップデートがキャッシュされるようになりました。