PHP 包无法正确安装

PHP 包无法正确安装

昨天我apt-get upgrade在 Debian/testing 上做了测试并破坏了一个 php5 包。我什至尝试用 和 删除和apt清除dpkg clean apt cache。当再次干净安装时,它会失败并显示以下错误消息:

Setting up libapache2-mod-php5 (5.3.6-12) ...
readlink: invalid option -- 'm'
BusyBox v1.17.1 (Debian 1:1.17.1-10) multi-call binary.

Usage: readlink [-fnv] FILE

Display the value of a symlink

Options:
        -f      Canonicalize by following all symlinks
        -n      Don't add newline
        -v      Verbose

ucf: Unable to determine The new file
dpkg: error processing libapache2-mod-php5 (--configure):
subprocess installed post-installation script returned error exit status 1

有什么想法可以解决这个 Debian 问题吗?

答案1

您不小心更改/bin/readlink为 busybox,而不是 GNU coreutils 版本。

这会导致大量破损。您需要恢复 GNU coreutils。

尝试

# aptitude reinstall coreutils

答案2

看起来安装后脚本已损坏。编辑/var/lib/dpkg/info/libapache2-mod-php5.postinst并查找行引用readlink,看看可以采取哪些措施来修复它。

之后再次运行apt-get upgrade

答案3

我最近在 Fusion 7.1.1 上安装 Kali 1.1.0 VM 时遇到了同样的问题。

这就是我解决的问题:

apt-update
aptitude reinstall coreutils
mv /usr/bin/readline /usr/bin/readline.old (leaves GNU /bin/readline as available, trash once completed)
update-grub
sed -i 's/BUSYBOX=y/BUSYBOX=n/' /etc/initramfs-tools/initramfs.conf
update-initramfs -u
reboot

我同意 jmtd 的观点,编辑帖子似乎既矫枉过正又笨拙。

相关内容