web-dev-qa-db-ja.com

PPAを使用して追加モジュールでNginxを再構築する

RTMPモジュール をUbuntu 16.04.4LTSにインストールしようとしています。これが私がしたことです...

add-apt-repository -y ppa:nginx/stable
vim /etc/apt/sources.list.d/nginx-ubuntu-stable-xenial.list
# Uncomment deb-src http://ppa.launchpad.net/nginx/stable/ubuntu xenial main
apt-get update

apt-get install dpkg-dev

mkdir /usr/src/nginx && cd /usr/src/nginx
apt-get source nginx
git clone https://github/arut/nginx-rtmp-module.git

cd nginx-1.12.2
vim debian/rules
# Added --add-module=/usr/src/nginx/nginx-rtmp-module to the full install flags

apt-get build-dep nginx
dpkg-buildpackage -b
cd ../
dpkg --install nginx-common_1.12.2-0+xenial0_all.deb nginx-full_1.12.2-0+xenial0_AMD64.deb

ただし、installコマンドを実行しようとすると、次のエラーが発生します...

(Reading database ... 100580 files and directories currently installed.)
Preparing to unpack nginx-common_1.12.2-0+xenial0_all.deb ...
Unpacking nginx-common (1.12.2-0+xenial0) over (1.12.2-0+xenial0) ...
Preparing to unpack nginx-full_1.12.2-0+xenial0_AMD64.deb ...
Unpacking nginx-full (1.12.2-0+xenial0) over (1.12.2-0+xenial0) ...
Setting up nginx-common (1.12.2-0+xenial0) ...
dpkg: dependency problems prevent configuration of nginx-full:
 nginx-full depends on libnginx-mod-http-auth-pam (= 1.12.2-0+xenial0); however:
  Package libnginx-mod-http-auth-pam is not installed.
 nginx-full depends on libnginx-mod-http-dav-ext (= 1.12.2-0+xenial0); however:
  Package libnginx-mod-http-dav-ext is not installed.
 nginx-full depends on libnginx-mod-http-echo (= 1.12.2-0+xenial0); however:
  Package libnginx-mod-http-echo is not installed.
 nginx-full depends on libnginx-mod-http-geoip (= 1.12.2-0+xenial0); however:
  Package libnginx-mod-http-geoip is not installed.
 nginx-full depends on libnginx-mod-http-image-filter (= 1.12.2-0+xenial0); however:
  Package libnginx-mod-http-image-filter is not installed.
 nginx-full depends on libnginx-mod-http-subs-filter (= 1.12.2-0+xenial0); however:
  Package libnginx-mod-http-subs-filter is not installed.
 nginx-full depends on libnginx-mod-http-upstream-fair (= 1.12.2-0+xenial0); however:
  Package libnginx-mod-http-upstream-fair is not installed.
 nginx
dpkg: error processing package nginx-full (--install):
 dependency problems - leaving unconfigured
Processing triggers for systemd (229-4ubuntu21.2) ...
Processing triggers for ureadahead (0.100.0-19) ...
Processing triggers for ufw (0.35-0ubuntu2) ...
Processing triggers for man-db (2.7.5-1) ...
Errors were encountered while processing:
 nginx-full
2
user1960364

これは、巧妙な(17.10)リリースのパッケージを使用した場合に発生するはずのことです。 /usr/lib/nginx/modules/*.soモジュールのパッケージは分割されているため、1つずつインストールできます。これには、再コンパイルしてインストールするものを選択する自由度が高くなるという素晴らしい副作用があります。

2つのオプション:

  • Ubuntuバージョンでサポートされているバージョンのnginxを使用します(PPAバージョンを削除し、モジュール作成者の指示に従います。そのバージョンでは、モジュールはすべてnginx-fullパッケージ内にある必要があります)
  • 新しいnginxパッケージを使用しますが、その分割された依存関係もインストールします(dpkg -iコマンドに追加します-おそらくすでに必要なパッケージを作成しています-nginx-common_1.12*.debを含むフォルダーを確認してください)
2
anx