本文へスキップ
`Ctrl`+`K`

# 2.4. Ubuntu

このセクションではUbuntu上でGroonga関連のdebパッケージをインストールする方法を説明します。これらのパッケージは `apt` でインストールできます。

32-bit用と64-bit用のパッケージを配布していますが、サーバ用途には64-bitパッケージを利用することをオススメします。32-bit用パッケージはテスト用か開発用にだけ使って下さい。32-bit用パッケージを使った場合は、中程度のサイズのデータでもメモリ不足エラーになることがあります。

## 2.4.1. GroongaのAPTリポジトリー登録

### 2.4.1.1. Groonga APTリポジトリー（packages.groonga.org）

Groongaパッケージは、Groonga APTリポジトリー（https://packages.groonga.org）にて配布されています。

`groonga-apt-source`をインストールすることで、Groonga APTリポジトリーを登録できます。

    sudo apt update
    sudo apt install -y -V ca-certificates lsb-release wget
    wget https://packages.groonga.org/ubuntu/groonga-apt-source-latest-$(lsb_release --codename --short).deb
    sudo apt install -y -V ./groonga-apt-source-latest-$(lsb_release --codename --short).deb
    sudo apt update

### 2.4.1.2. 非推奨なGroonga PPA（Personal Package Archive）

注釈

Groonga PPA（Personal Package Archive, ppa:groonga/ppa）は非推奨となります。ご利用の場合は、Groonga APTリポジトリーの利用を強くお勧めします。なぜなら、Groonga APTリポジトリーではApache Arrowが有効な状態でビルドされたパッケージが提供されており、これにより並列オフラインインデックス構築などの追加機能が利用可能になるためです。Groonga PPAを利用されている場合は、Groonga PPA（ppa:groonga/ppa）から Groonga APTリポジトリー（packages.groonga.org）への移行を確認してください。

## 2.4.2. `groonga`パッケージ

インストールします。

    sudo apt -V -y install groonga

注釈

`groonga`パッケージは全文検索のための最小構成パッケージです。Groongaをサーバー用途で使うなら、設定済みの追加パッケージをインストールすることができます。

サーバー用途のための2つのパッケージがあります。

- Groonga HTTPサーバー（HTTPベースのサーバーパッケージ）

- groonga-server-gqtp （GQTPベースのサーバーパッケージ）

詳細は サーバー を参照してください。

## 2.4.3. `groonga-tokenizer-mecab`パッケージ

MeCabをトークナイザーとして使いたいときは、`groonga-tokenizer-mecab`パッケージをインストールしてください。

`groonga-tokenizer-mecab`パッケージをインストールします。

    sudo apt -V -y install groonga-tokenizer-mecab

## 2.4.4. `groonga-token-filter-stem`パッケージ

`TokenFilterStem`をトークンフィルターとして使いたいときは`groonga-token-filter-stem`パッケージをインストールします。

`groonga-token-filter-stem`パッケージをインストールします。

    sudo apt -V -y install groonga-token-filter-stem

## 2.4.5. `groonga-munin-plugins` package

Muninプラグインを提供するパッケージもあります。MuninでGroongaの状態をモニターしたい場合は、`groonga-munin-plugins`パッケージをインストールします。

`groonga-munin-plugins`パッケージをインストールします。

    sudo apt -V -y install groonga-munin-plugins

## 2.4.6. `groonga-normalizer-mysql` package

MySQL互換のノーマライザーをGroongaのプラグインとして提供するパッケージがあります。MySQL互換のノーマライザーを使うには`groonga-normalizer-mysql`パッケージをインストールします。

`groonga-normalizer-mysql`パッケージをインストールします。

    sudo apt -V -y install groonga-normalizer-mysql

## 2.4.7. ソースからビルド

ソースからビルドする方法は開発者向けの内容になっています。

詳細は その他: CMakeを使ってビルド を参照してください。

## 2.4.8. Groonga PPA（ppa:groonga/ppa）から Groonga APTリポジトリー（packages.groonga.org）への移行

このセクションでは、廃止予定のGroonga PPA（Personal Package Archive, ppa:groonga/ppa）から新しい Groonga APTリポジトリー（packages.groonga.org）への移行手順を案内します。

Groonga APTリポジトリーに切り替えることで、Apache Arrowが有効化されたパッケージを利用できるようになり、並列オフラインインデックス構築などの追加機能が利用可能になります。これらの機能を活用するためにも、移行することを強くお勧めします。

もし現在、Groonga PPAを使用している場合は、次の手順に従って新しいパッケージソースに切り替えてください。

### 2.4.8.1. Groonga APTリポジトリーの設定

#### 2.4.8.1.1. Groonga APTリポジトリーの登録

Groonga APTリポジトリーを登録するには、次の手順で`groonga-apt-source`パッケージをインストールしてください。

    sudo apt update
    sudo apt install -y -V groonga-apt-source
    sudo apt update

#### 2.4.8.1.2. 既存のパッケージソースの削除

Groonga PPAを削除するには、次のコマンドを実行してください。

    sudo add-apt-repository -y --remove ppa:groonga/ppa

ここまでの手順を完了すると、パッケージソースをGroonga PPAからGroonga APTリポジトリーに移行完了です。

### 2.4.8.2. パッケージをアップグレード

ニーズに応じて、パッケージをアップグレードしてください。方法は2通りあります。

#### 2.4.8.2.1. オプション 1: 次のリリースからGroonga APTリポジトリーを利用する

次のリリースパッケージバージョンへアップグレードする時から、Groonga APTリポジトリーを使用することを強くお勧めします。`apt`経由でパッケージをアップグレードすると、バージョンを明示的に指定することなく、次のパッケージバージョンにGroonga APTリポジトリーを利用して自動的にアップグレードできます。最もシンプルな方法なので、こちらをオススメします。

    sudo apt upgrade

#### 2.4.8.2.2. オプション 2: 次のリリースを待たずにGroonga APTリポジトリーを利用する

もし次のリリースを待たずに即座にアップグレードしたい場合は、Groonga APTリポジトリーの特定のパッケージバージョンへ強制的にアップグレードできます。ただしこの場合は、パッケージバージョンを指定してアップグレードする必要があります。これは、バージョンが一致していても、Groonga PPAとGroonga APTリポジトリーではパッケージの命名規則が異なるため、Groonga PPAのパッケージが優先されてアップグレードされてしまう問題を防ぐためです。

    sudo apt upgrade package-name=version

注釈

パッケージに依存関係がある場合は、依存パッケージもバージョンを指定してアップグレードする必要があります。

例えば、`groonga-bin`パッケージの特定バージョンを指定する場合は、次のようにアップグレードします。

    version=$(dpkg-query -W -f='${Version}' libgroonga0 | sed 's/\.ubuntu.*$//') && \
    sudo apt upgrade -y -V --allow-downgrades \
      libgroonga0=$version \
      groonga-bin=$version

このコマンドは、Groonga APTリポジトリーの特定のパッケージバージョンへ強制的にアップグレードします。