我正在運行mc
並嘗試在 shell 中安裝curl 和 postfix: apt-get install curl postfix
。出現 postfix 的配置對話框,按 Ctrl-o(切換顯示/隱藏 MC)兩次後,我無法再讀取配置訊息,因此我使用 F10 退出 MC。 apt-get 進程仍然存在,我用 殺死了它sudo kill xxxx
。現在 apt-get 不起作用了。
我試過了apt-get -f install
X@X ~ % LC_ALL=C sudo apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
exim4-config lsb-invalid-mta
The following packages will be REMOVED:
postfix
The following NEW packages will be installed:
exim4-config lsb-invalid-mta
0 upgraded, 2 newly installed, 1 to remove and 3 not upgraded.
1 not fully installed or removed.
Need to get 0 B/523 kB of archives.
After this operation, 2462 kB disk space will be freed.
Do you want to continue? [Y/n]
Preconfiguring packages ...
dpkg: postfix: dependency problems, but removing anyway as you requested:
lsb-core depends on lsb-invalid-mta (>= 4.1+Debian13+nmu1) | mail-transport-agent; however:
Package lsb-invalid-mta is not installed.
Package mail-transport-agent is not installed.
Package postfix which provides mail-transport-agent is to be removed.
Package exim4-daemon-light which provides mail-transport-agent is not installed.
bsd-mailx depends on default-mta | mail-transport-agent; however:
Package default-mta is not installed.
Package exim4-daemon-light which provides default-mta is not installed.
Package mail-transport-agent is not installed.
Package postfix which provides mail-transport-agent is to be removed.
Package exim4-daemon-light which provides mail-transport-agent is not installed.
(Reading database ... 421170 files and directories currently installed.)
Removing postfix (2.11.3-1) ...
dpkg: error processing package postfix (--remove):
subprocess installed pre-removal script returned error exit status 102
Errors were encountered while processing:
postfix
E: Sub-process /usr/bin/dpkg returned an error code (1)
以及各種問題中提出的其他解決方案(Q1,Q2,第三季):apt-get purge postfix
、apt-get --reinstall install postfix
、dpkg --pending --configure
。
一個非常相似的問題(重複?)是後綴錯誤,但沒有答案。
如何修復套件管理器?我的作業系統是 Debian Jessie。
編輯1
巴哈姆特的建議失敗,錯誤代碼為 102:
X@X ~ % LC_ALL=C sudo dpkg --install /var/cache/apt/archives/postfix_2.11.3-1_amd64.deb
Selecting previously unselected package postfix.
(Reading database ... 421172 files and directories currently installed.)
Preparing to unpack .../postfix_2.11.3-1_amd64.deb ...
dpkg: warning: subprocess old pre-removal script returned error exit status 102
dpkg: trying script from the new package instead ...
dpkg: ... it looks like that went OK
Unpacking postfix (2.11.3-1) over (2.11.3-1) ...
Setting up postfix (2.11.3-1) ...
insserv: script postfix is not an executable regular file, skipped!
Postfix configuration was not changed. If you need to make changes, edit
/etc/postfix/main.cf (and others) as needed. To view Postfix configuration
values, see postconf(1).
After modifying main.cf, be sure to run '/etc/init.d/postfix reload'.
Running newaliases
dpkg: error processing package postfix (--install):
subprocess installed post-installation script returned error exit status 102
Processing triggers for systemd (215-17+deb8u5) ...
Processing triggers for ufw (0.33-2) ...
Processing triggers for man-db (2.7.0.2-5) ...
Processing triggers for libc-bin (2.19-18+deb8u6) ...
Errors were encountered while processing:
postfix
答案1
手動刪除設定檔有效:
rm /var/lib/dpkg/info/postfix.*
apt-get purge postfix
答案2
嘗試dpkg --install /var/cache/apt/archives/postfix_2.11.3-1_amd64.deb
並之後apt -f install