Apt

處理 apache2.deb 錯誤“試圖覆蓋 /var/www/html”,這也在包 nginx-common 中

  • March 18, 2022

每當我嘗試執行時,sudo apt install <package>我都會得到以下輸出

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
apache2 : Depends: apache2-bin (= 2.4.41-4ubuntu3.9) but 2.4.41-4ubuntu3.10 is to be installed
          Depends: apache2-data (= 2.4.41-4ubuntu3.9) but 2.4.41-4ubuntu3.10 is to be installed
          Depends: apache2-utils (= 2.4.41-4ubuntu3.9)
lollypop : Depends: python3-pylast but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

如果我跑步,sudo apt --fix-broken install我會得到以下資訊

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following additional packages will be installed:
 apache2
Suggested packages:
 apache2-doc apache2-suexec-pristine | apache2-suexec-custom
The following packages will be upgraded:
 apache2
1 upgraded, 0 newly installed, 0 to remove and 228 not upgraded.
6 not fully installed or removed.
Need to get 0 B/95.5 kB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 425435 files and directories currently installed.)
Preparing to unpack .../apache2_2.4.41-4ubuntu3.10_amd64.deb ...
Unpacking apache2 (2.4.41-4ubuntu3.10) over (2.4.41-4ubuntu3.9) ...
dpkg: error processing archive /var/cache/apt/archives/apache2_2.4.41-4ubuntu3.10_amd64.deb (--unpack):
trying to overwrite '/var/www/html', which is also in package nginx-common 1.18.0-0ubuntu1.2
Errors were encountered while processing:
/var/cache/apt/archives/apache2_2.4.41-4ubuntu3.10_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

編輯:當我嘗試刪除 nginx 或 nginx-common 我得到

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
apache2 : Depends: apache2-bin (= 2.4.41-4ubuntu3.9) but 2.4.41-4ubuntu3.10 is to be installed
          Depends: apache2-data (= 2.4.41-4ubuntu3.9) but 2.4.41-4ubuntu3.10 is to be installed
          Depends: apache2-utils (= 2.4.41-4ubuntu3.9)
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

我也嘗試過跑步sudo apt install apache2 nginx-common-,但得到以下資訊

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
libnginx-mod-http-image-filter : Depends: nginx-common (= 1.18.0-0ubuntu1.2) but it is not going to be installed
libnginx-mod-http-xslt-filter : Depends: nginx-common (= 1.18.0-0ubuntu1.2) but it is not going to be installed
libnginx-mod-mail : Depends: nginx-common (= 1.18.0-0ubuntu1.2) but it is not going to be installed
libnginx-mod-stream : Depends: nginx-common (= 1.18.0-0ubuntu1.2) but it is not going to be installed
nginx-core : Depends: nginx-common (= 1.18.0-0ubuntu1.2) but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

所以然後我嘗試sudo apt install apache2 nginx-common- libnginx-mod-http-image-filter- libnginx-mod-http-xslt-filter- libnginx-mod-mail- libnginx-mod-stream- nginx-core-並得到了以下

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
nginx : Depends: nginx-core (< 1.18.0-0ubuntu1.2.1~) but it is not going to be installed or
                 nginx-full (< 1.18.0-0ubuntu1.2.1~) but it is not going to be installed or
                 nginx-light (< 1.18.0-0ubuntu1.2.1~) but it is not going to be installed or
                 nginx-extras (< 1.18.0-0ubuntu1.2.1~) but it is not going to be installed
        Depends: nginx-core (>= 1.18.0-0ubuntu1.2) but it is not going to be installed or
                 nginx-full (>= 1.18.0-0ubuntu1.2) but it is not going to be installed or
                 nginx-light (>= 1.18.0-0ubuntu1.2) but it is not going to be installed or
                 nginx-extras (>= 1.18.0-0ubuntu1.2) but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

我嘗試刪除 nginx 並禁用它,但它似乎不起作用,我真的不需要 nginx 所以刪除它很好,有人知道我應該怎麼做嗎?

nginx我懷疑在不一致的狀態下嘗試刪除apache2不會有任何結果。

相反,刪除apache2

apt remove apache2

然後清除所有nginx相關的包:

apt purge --autoremove '*nginx*'

一旦完成,

apt install apache2

應該管用。

引用自:https://unix.stackexchange.com/questions/695968