问题 22:需要 apt-utils 来安装 apt-utils 吗?

问题 22:需要 apt-utils 来安装 apt-utils 吗?

当我遇到此问题时,我正尝试安装其他东西。因此,我尝试安装 apt-utils 来解决这个问题。但我无法安装 apt-utils,因为我的控制台告诉我我没有 apt-utils:

root@napajohn:~# apt-get install apt-utils
Reading package lists... Done
Building dependency tree... Done
The following NEW packages will be installed:
  apt-utils
0 upgraded, 1 newly installed, 0 to remove and 28 not upgraded.
3 not fully installed or removed.
Need to get 0 B/129 kB of archives.
After this operation, 365 kB of additional disk space will be used.
WARNING: The following packages cannot be authenticated!
  apt-utils
Install these packages without verification [y/N]? y
debconf: delaying package configuration, since apt-utils is not installed
Setting up dash (0.5.5.1-7.4em1) ...
debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 75.)
debconf: falling back to frontend: Readline
No diversion 'diversion of /usr/share/man/man1/sh.1.gz by dash', none removed.
This should never be reached
dpkg: error processing dash (--configure):
 subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of bash:
 bash depends on dash (>= 0.5.5.1-2.2); however:
  Package dash is not configured yet.
dpkg: error processing bash (--configure):
 dependency problems - leaving unconfigured
configured to not write apport reports
                                      configured to not write apport reports
                                                                            Errors were encountered while processing:
 dash
 bash
E: Sub-process /usr/bin/dpkg returned an error code (1)
root@napajohn:~#

我尝试过这个: https://serverfault.com/questions/358943/what-does-debconf-delaying-package-configuration-since-apt-utils-is-not-insta

我已经尝试过这个,但是对我来说它不包含 apt-utils: apt 错误:无法立即执行配置

在网上搜索了一番之后,我还是不知道该说什么。非常感谢您的帮助!

跑步:

root@napajohn:~# cat /etc/debian_version
6.0.3
root@napajohn:~# uname -a
Linux napajohn 2.6.34 #4 Mon Oct 31 16:41:13 EDT 2011 armv7l GNU/Linux
root@napajohn:~#

答案1

我已经解决了这个问题,感谢这个帖子: http://lists.debian.org/debian-embedded/2011/11/msg00037.html

我使用的流程:

root@napajohn:~# cat /var/lib/dpkg/info/dash.preinst
#!/bin/bash
set -e

divert() {
        dfile=$1
        ltarget=$2
        div=$(dpkg-divert --list $dfile)
        distrib=${3:-$dfile.distrib}
        temp=$dfile.tmp
        if [ -z "$div" ]; then
                # This differs from dpkg-divert's --rename because we
                # first make a copy of $dfile (the file being diverted)
                # in $distrib. Then, a symlink to $ltarget is forcibly created
                # from $dfile; this is performed in two stages with an
                # intermediate temporary file as ln -sf is not atomic.
                # dpkg-divert's --rename direct equivalent would be:
                # mv $dfile $distrib -- but we could end up without a symlink
                if [ -e $dfile ]; then
                        cp -dp $dfile $distrib
                fi
                ln -sf $ltarget $temp
                mv -f $temp $dfile
                dpkg-divert --package dash --divert $distrib --add $dfile
        fi
}

# Divert the following files if no diversion exists already
# It is currently used to prevent the files collision between bash and
# dash: they both provide the files in the package.
divert /bin/sh dash
divert /usr/share/man/man1/sh.1.gz dash.1.gz \
        /usr/share/man/man1/sh.distrib.1.gz
root@napajohn:~# /var/lib/dpkg/info/dash.preinst install
ln: creating symbolic link `/usr/share/man/man1/sh.1.gz.tmp': No such file or directory
root@napajohn:~# mkdir -p /usr/share/man/man1
root@napajohn:~# /var/lib/dpkg/info/dash.preinst install
Adding 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by dash'
root@napajohn:~# /var/lib/dpkg/info/dash.preinst install
root@napajohn:~# dpkg --configure -a
Setting up dash (0.5.5.1-7.4em1) ...
debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 75.)
debconf: falling back to frontend: Readline
Setting up bash (4.1-3em1) ...
update-alternatives: error: alternative path /usr/share/man/man7/bash-builtins.7.gz doesn't exist.
root@napajohn:~# apt-get install dialog
Reading package lists... Done
Building dependency tree... Done
The following NEW packages will be installed:
  dialog
0 upgraded, 1 newly installed, 0 to remove and 28 not upgraded.
Need to get 0 B/183 kB of archives.
After this operation, 516 kB of additional disk space will be used.
WARNING: The following packages cannot be authenticated!
  dialog
Install these packages without verification [y/N]? y
debconf: delaying package configuration, since apt-utils is not installed
tar: ./control: time stamp 2010-11-27 17:03:26 is 344105762.627135945 s in the future
tar: ./md5sums: time stamp 2010-11-27 17:03:26 is 344105762.625823689 s in the future
tar: .: time stamp 2010-11-27 17:03:26 is 344105762.625457478 s in the future
Selecting previously deselected package dialog.
(Reading database ... 9114 files and directories currently installed.)
Unpacking dialog (from .../dialog_1.1-20100428-1em1_armel.deb) ...
Setting up dialog (1.1-20100428-1em1) ...
root@napajohn:~# dpkg --configure -a
root@napajohn:~# apt-get install apt-utils
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  apt-utils
0 upgraded, 1 newly installed, 0 to remove and 28 not upgraded.
Need to get 0 B/129 kB of archives.
After this operation, 365 kB of additional disk space will be used.
WARNING: The following packages cannot be authenticated!
  apt-utils
Install these packages without verification [y/N]? y
debconf: delaying package configuration, since apt-utils is not installed
tar: ./control: time stamp 2011-06-28 19:49:06 is 362518839.816741658 s in the future
tar: ./shlibs: time stamp 2011-04-15 21:43:32 is 356132105.815368367 s in the future
tar: ./postinst: time stamp 2011-04-15 21:43:32 is 356132105.814819051 s in the future
tar: ./md5sums: time stamp 2011-06-28 19:49:06 is 362518839.814361287 s in the future
tar: ./postrm: time stamp 2011-04-15 21:43:33 is 356132106.813903523 s in the future
tar: .: time stamp 2011-06-28 19:49:06 is 362518839.813598348 s in the future
Selecting previously deselected package apt-utils.
(Reading database ... 9123 files and directories currently installed.)
Unpacking apt-utils (from .../apt-utils_0.8.10.3+squeeze1em1_armel.deb) ...
Setting up apt-utils (0.8.10.3+squeeze1em1) ...
root@napajohn:~# echo Hoorah!
Hoorah!

相关内容