unstable からパッケージを借りて nginx 1.4.1 をインストール
Debian/weedy がリリースされたため、普段利用している環境も Debian/jessie へとアップグレードされました。
ということで(?)、前回の記事で CentOS に nginx 1.4.0 をインストールしましたが Debian/jessie にも SPDY 対応版の nginx をインストールすることに。
ただし jessie 標準パッケージでは nginx のバージョンが 1.2.6 となっているので、sid (unstable) からパッケージを借りてのインストールとなりました。
Debian のバージョンや、インストールするパッケージに依存せず、unstable からパッケージを借りてのインストールする場合の作業方法となるため、メモメモ。
apt-line の更新
unstable からパッケージを借りるため、まずは sid 用の apt-line を追加します。
今回は /etc/apt/sources.list.d 以下に unstable.list というファイルを作り、そこに追加しました。
- /etc/apt/sources.list.d/unstable.list
deb http://ftp2.jp.debian.org/debian/ unstable main deb-src http://ftp2.jp.debian.org/debian/ unstable main
パッケージのプライオリティ指定
apt-line を指定しただけだと、知らぬ間にシステム全体が Unstable になってしまうため、パッケージをインストールする際の優先度を指定します。
詳しくは D: AptGet - Debian GNU/Linux スレッドテンプレ のあたりを参照しました。
設定は /etc/apt/preferences.d 以下にリリースバージョンごとファイルを作成しました。
- /etc/apt/preferences.d/testing
Package: * Pin: release a=testing Pin-Priority: 990
- /etc/apt/preferences.d/unstable
Package: * Pin: release a=unstable Pin-Priority: 90
これで、明示的に unstable のパッケージを利用すると宣言しない限りは、testing のパッケージが導入されることになります。
aptitude update する
設定が終わったらいったん update をします。
$ sudo -s aptitude update
念のためこれまでの設定が正しくできているか、目的の nginx が導入できそうか確認するため、aptitude show を使って nginx のバージョンを取得しました。
まずは、デフォルト (testing) の場合
$ sudo -s aptitude show nginx パッケージ: nginx 状態: インストールされていません バージョン: 1.2.6-1 ... (略)
続いて明示的に unstable (-t unstable) を指定した場合
$ sudo -s aptitude -t unstable show nginx パッケージ: nginx 状態: インストールされていません バージョン: 1.4.1-1 ... (略)
ということで、明示的に unstable を利用することを宣言すれば、目的の 1.4.1 の情報を取得することができました。
unstable からパッケージを借りてのインストール
あとは、通常のインストールとほぼ一緒。
今回は SPDY が目当てなので nginx-extras をインストールします。
$ sudo -s aptitude -t unstable install nginx-extras
spdy が有効か確認します。
$ /usr/sbin/nginx -V 2>&1 | grep -o spdy spdy
ということで、無事にインストールできました。