LibreOfficeの自動インストール
新年度のコンピュータ環境の整備で複数台にLibreOfficeをインストールする必要があるため、自動(ダイアログ表示やクリックなし)インストールを調べてみた。
探すと会津若松市のLibreOfficeサポートサイトに事例情報が:
- [会津若松市]リブレオフィス導入時に発生した事例 —
- 事例2:LibreOfficeの起動が極端に遅い
- 現象:独自に作成したバッチ処理(LibreOfficeのサイレントインストールを実行)で導入したパソコンの一部で、LibreOfficeの起動が極端に遅いものが確認された
- 原因:すべての「追加言語パック」が導入されていた (再現条件は特定できず)
- 対応:Windows操作の自動化ツール(UWSC)を利用し、カスタムインストールを実行するバッチ処理に変更して対応
- 事例2:LibreOfficeの起動が極端に遅い
って、ことで結局は「UWSCで対応したよ」ということだったのだが、その前に「サイレントインストール」なるものが出てきたので、そのキーワードで検索。
- Lodahl’s blog: Silent installation of LibreOffice on Windows
- Lodahl’s blog: Silent installation – following up
- Silent Install params | LibreOfficeForum.org
- OpenOffice.org 3.3 Silent Install: OpenOffice, command prompt, Windows 7, silent install
- Where can I find documentation to custom/silent install 3.5 msi? – Ask LibreOffice
まだきちんと全部試したわけではないが、まずLibreOffice本体とランゲージパッケージの2つのインストーラを入手し、とりあえずバッチファイルに以下のような形で書いて実行する形になるようだ(Win7などではバッチファイルを管理者権限で実行)。
msiexec.exe /qn /i LibO_3.5.0_Win_x86_install_multi.msi msiexec.exe /qn /i LibO_3.5.0_Win_x86_install_helppack_ja.msi
msexec のコマンドラインオプションは「/qn インターフェース表示なし」「/i インストール」(他に「/x アンインストール」や「/norestart インストール後の再起動なし」など)
管理者権限での実行については次を:
- msi形式のインストーラをVista(UAC有効)で管理者権限を持たせて動かす – むぅもぉ.jp
- Windows Installer のカスタムアクションを管理者権限で動かしたい « re-Think things
また、「/a」オプションでインストールファイルの展開のみを先に行なっておくこともできるようだ。
- .MSIファイルを解凍して内部のファイルを取り出す(msiexec編) - @IT
- msiexeの管理者インストール・ポイントを利用してファイルを展開する
紹介ページではインストール後のLibreOfficeの言語設定は手動でとなっているが、インストールパラメータを変更した設定ファイルを用意することですべて自動で作業する方法も紹介されていて、これらを行なうツールにはOrcaやInstEdなどがある:
- Orca editor for MSI packages, Info & Download
- InstEd It! – InstEd – Make packaging more productive
- InstallSite: Setup Authoring Tools for the Windows Installer
- Windows Installer Best Practices
これらの方法についてはOpenOfficeのドキュメントにも記載があった:
- OpenOffice.org 2.0 Setup Guide
- 自動インストール
- 1. サイレントインストールをする場合は、Windows® インストーラーにある msiexec.exeの /qnパラメーターを使用することができます。
- 2. インストールウィザードで設定されているデフォルト値を変更したいなら、無償の Orca Tool を使用してWindows® インストーラーデータベースを編集すれば、デフォルト値を変更することができます。以下のようなコマンドでインストールを始めることができます。
- msiexec.exe /i openoffice.msi /qn TRANSFORMS=myTransform.mst
- 自動インストール
さらに、アンインストールは上に書いたように「/x」オプション付で.msiファイルを指定すればよいが、.msiファイルがない場合のアンインストールに関してはレジストリ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall 内にアンインストールプログラムの情報があり、これをmsexecで起動すればいいようなのだが、LibreOfficeに関しては簡単にレジストリを検索した限りではこのような情報は登録されていないようだった。