私は14.04.5 LTSです。通常のapt-getアップグレードを実行すると、このエラーが発生します。
Setting up nginx-common (1.10.1-3+trusty1) ...
dpkg: error processing package nginx-common (--configure):
subprocess installed post-installation script returned error exit status 1
「パッケージnginx-commonはまだ構成されていません。」などによって引き起こされる後続のエラーはすべて省略しました。
.postinst
をデバッグするために this answer のプロセスに従いましたが、3行目を超えることはありません:. /usr/share/debconf/confmodule
–それが1
を返すものです。
私はこのソリューションを試しましたが、助けにはなりませんでした。debconfは間違いなくアクセス可能です。そして、 これらのもの (エラーが続く)。私が知る限り、含まれているconfファイルにはipv6 listenディレクティブはありません。
Debconfをデバッグしてどのように失敗するのかを知る手掛かりがありません。誰が私が次に試すべきことを知っていますか?
編集:新しいアップデート、それらはインストールされますが、最後にこのエラーが表示されます:
Setting up nginx-full (1.10.1-3+trusty2) ...
initctl: invalid command: upgrade
Try `initctl --help' for more information.
invoke-rc.d: initscript nginx, action "upgrade" failed.
解決済みとしてマークする必要があるかどうかわかりません。
Ubuntu Zestyが提案したリポジトリ(これは開発中のリリースです。これを使用していないことを願っています...)、1.10.1-0ubuntu5
この問題に対処します。
Ubuntu Trusty、Xenial、およびYakketyでは、セキュリティチームは、この問題に対処するためにパッケージの更新バージョンをリリースし、パッケージ。この情報はバグで詳しく説明されており、対応する buntu Security Notice(USN-3114-2) で非常に簡単に説明されていますが、この問題はパッケージの以下のバージョンで修正されています。
1.4.6-1ubuntu3.7
(セキュリティおよび更新リポジトリ)1.10.0-0ubuntu0.16.04.4
(セキュリティおよび更新リポジトリ)1.10.1-0ubuntu1.2
(セキュリティおよび更新リポジトリ)Ubuntu Preciseリポジトリ内のバージョンは、最近の更新を促すCVEを導入した方法で変更されたことがないため、影響を受けません。 (これはUbuntuリポジトリにのみ適用され、PPAには適用されません。)
この問題に対処する修正版パッケージをステージングPPAにアップロードし、修正プログラムを実装しました。これらは問題なくビルドされ、2016年10月27日(UTC-04:00)12:56 PMの時点で、LaunchpadのメインMainlineおよびStable PPAにコピーされました。
これには、Precise、Trusty、Xenial、およびYakketyの修正が含まれます。 PPAにはまだZestyサポートがありません。
義務的開示:
私は
nginx
パッケージを担当するUbuntu Server Teamの主要人物です。 https://launchpad.net/~nginx にあるチームの下にあるPPAも保守しています。また、この問題についての直接的な知識と、修正が利用可能になるプロセスについても知っています。これは、最近行われたセキュリティ更新とDebianに影響する問題の発見を支援したためです。
TL; DR一番下までスクロール
自分でこの問題に遭遇しました。
さらにデバッグするには、次の環境変数を設定します。
export DEBCONF_DEBUG=developer
そうすれば、debconfが何をしているかを確認できます。
今実行します
dpkg --configure --pending
そして、以下を見ることができます:
Setting up nginx-common (1.10.1-3+xenial1) ...
debconf (developer): frontend started
debconf (developer): frontend running, package name is nginx-common
debconf (developer): starting /var/lib/dpkg/info/nginx-common.config configure 1.10.1-3+xenial0
dpkg: error processing package nginx-common (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of libnginx-mod-http-image-filter:
libnginx-mod-http-image-filter depends on nginx-common (= 1.10.1-3+xenial1); however:
Package nginx-common is not configured yet.
これで、/var/lib/dpkg/info/nginx-common.config
スクリプトを編集して、変更することができます
#!/bin/sh
と
#!/bin/sh -x
もデバッグを有効にします。
dpkg --configure --pending
を再度実行すると、次のように表示されます。
Setting up nginx-common (1.10.1-3+xenial1) ...
debconf (developer): frontend started
debconf (developer): frontend running, package name is nginx-common
debconf (developer): starting /var/lib/dpkg/info/nginx-common.config configure 1.10.1-3+xenial0
+ set -e
+ . /usr/share/debconf/confmodule
+ [ ! 1 ]
+ [ -z ]
+ exec
+ [ ]
+ exec
+ DEBCONF_REDIR=1
+ export DEBCONF_REDIR
+ logdir=/var/log/nginx
+ log_symlinks_check 1.10.1-3+xenial0
+ [ -z 1.10.1-3+xenial0 ]
+ dpkg --compare-versions 1.10.1-3+xenial0 lt-nl 1.10.1-0ubuntu1.1
+ return
dpkg: error processing package nginx-common (--configure):
そして今、スクリプトで問題のある行を見ることができます
dpkg --compare-versions 1.10.1-3+xenial0 lt-nl 1.10.1-0ubuntu1.1
終了コード1を返す必要があります-バージョン比較を実行しており、結果に応じて0または1を返します。
#1637058(Ubuntuの場合) および #1637200(PPAの場合) で追跡されている実際のバグであるため、適切に修正する方法についてはコメントしません。
回避策の修正:
編集/var/lib/dpkg/info/nginx-common.config
log_symlinks_check
関数の最初の行にreturn
を追加します。
例えば。:
log_symlinks_check() {
return <---- here
# Skip new installations
[ -z "$1" ] && return
これにより、アップグレードプロセスを続行できます。
EDIT@Thomas Wardが指摘したように、これはセットアップ手順をスキップします(安全でないシンボリックリンクを修正します-もしあれば--varで/ log/nginx)
同じ問題を抱えている:
14.04.5 LTS (GNU/Linux 3.13.0-32-generic x86_64)
16.04.1 LTS (GNU/Linux 4.4.0-45-generic x86_64)
Nginx-common(1.10.1-3 + trusty1)の設定... dpkg:エラー処理パッケージnginx-common(--configure):インストール後のサブプロセススクリプトがエラー終了ステータス1を返しましたdpkg:依存関係の問題によりlibnginxの構成が妨げられます-mod-http-auth-pam:libnginx-mod-http-auth-pamはnginx-common(= 1.10.1-3 + trusty1)に依存しています。ただし、パッケージnginx-commonはまだ構成されていません。
dpkg:エラー処理パッケージlibnginx-mod-http-auth-pam(--configure):依存関係の問題-未構成のdpkg:依存関係の問題によりlibnginx-mod-http-echoの構成が妨げられる:libnginx-mod-http-echoはnginxに依存する-common(= 1.10.1-3 + trusty1);ただし、パッケージnginx-commonはまだ構成されていません。
dpkg:エラー処理パッケージlibnginx-mod-http-echo(--configure):依存関係の問題-処理中に未構成エラーが発生しました:nginx-common libnginx-mod-http-auth-pam libnginx-mod-http-echo
最初に/etc/nginx
フォルダーのバックアップを作成することで、問題を修正できました。
Sudo tar -zcf ~/nginx.tgz /etc/nginx
次に、システムからnginxに関係するものをすべて削除しました。依存関係の問題が発生したため、段階的に実行する必要がありました。
Sudo apt-get purge nginx-full
Sudo apt-get purge nginx-common
Sudo apt-get purge nginx*
その後、nginxをシステムSudo apt-get install nginx-full
にインストールし直します。
最後に/etc/nginx
フォルダーをSudo tar -zxf ~/nginx.tgz
で復元し、Sudo service nginx restart
を使用してnginxを再起動します
お役に立てれば!