つかぱい.com

どうせなら好きなことを書いていたい

コマンドラインを使ってソフトウェアアップデートをリモート実行する方法を検証してみた

とりあえず記録として自分のブログにも転載しておく

なんでそんなことしようと思ったのか

自分の家でMacを熟知しているのが自分以外いないのでソフトウェアアップデートしてくれとかいうと

「全然わかんないからやって」と言われるのでなるべくコマンドを使って一発更新出来るようにしたいなと思いました。

検証した環境

対象のMac:MacbookAir (mid 2013) OS:MacOS 10.13.3(High Sierra)

やり方

下準備としてMacをローカルネットワークでssh出来るようにRemoteLoginをオンにしておく

自分のターミナルからsshでログインします。

入れるアドレスは、このコンピュータにログインするには”hogehoge"と入力してくださいという欄を入力

OSのアップデートなどはAdministerの権限がないと行けないのでsudoが使えるアカウントで実施してください。

$ssh User@HostName.local

ログインが出来たらsoftwareupdarteコマンドでAppStoreでインストールができるリストを確認

$ softwareupdate --list

今回の場合はOSのアップデート情報と、iTunesが出ました。

出力例

$ softwareupdate --list

Software Update Tool

Finding available software
Software Update found the following new or updated software:
   * macOS High Sierra 10.13.3 Update-
    macOS High Sierra 10.13.3 Update ( ), 1925876K [recommended] [restart]
   * iTunesXPatch-12.7.3
    iTunes (12.7.3), 180272K [recommended]

特定のインストールを行いたい場合は*が付いている箇所をコピーして実行します。

例:iTunesをインストールする場合

$ softwareupdate -i iTunesXPatch-12.7.3
Software Update Tool

Downloading iTunes
Downloaded iTunes
Installing iTunes
Done with iTunes
Done.

また一括でインストールを実施したい場合は -iaオプションで実行できます。 ※基本的には全部インストールをすることが良いですが、一度 --listで確認してから実施してください。

$ softwareupdate -ia

OSのインストールをする場合は再起動が必要な場合があるのでリモートのMacが再起動してもいい状態の場合はリブートして完了です。

$ sudo reboot

感想

1台なら特にこれをやらんでもいいかもしれない。だかCLIが好きな人間としてはこういう方法もあるんだなといい勉強になりました。

今度はこれを自動化して自動アップデートにしたいですね。

参考にしたリンク

コマンドラインを使ってソフトウェアアップデートをリモートインストールする方法