Ubuntu下,dpkg安装出错的修复
参考
我在ubuntu上安装ldap-account-manager的时候出错,
当sudo aptitude install ldap-account-manager
出现如下错误:
- Reading package lists... Done
- Building dependency tree
- Reading state information... Done
- Reading extended state information
- Initializing package states... Done
- Building tag database... Done
- The following NEW packages will be automatically installed:
- php-fpdf php5 php5-ldap
- The following NEW packages will be installed:
- php-fpdf php5 php5-ldap
- 0 packages upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
- Need to get 108kB of archives. After unpacking 868kB will be used.
- Do you want to continue? [Y/n/?] y
- Writing extended state information... Error!
- E: I wasn't able to locate file for the ldap-account-manager package. This might mean you need to manually fix this package.
当我sudo dpkgdpkg -i ldap-account-manager2.4.all.deb
出现如下错误:
- Selecting previously deselected package ldap-account-manager.
- (Reading database ... 44030 files and directories currently installed.)
- Preparing to replace ldap-account-manager 2.4.0-1 (using ldap-account-manager2.4.all.deb) ...
- Unpacking replacement ldap-account-manager ...
- dpkg (subprocess): unable to execute old post-removal script: Exec format error
- dpkg: warning - old post-removal script returned error exit status 2
- dpkg - trying script from the new package instead ...
- dpkg: error processing ldap-account-manager2.4.all.deb (--install):
- subprocess new post-removal script returned error exit status 10
- dpkg: error while cleaning up:
- subprocess post-removal script returned error exit status 10
- Errors were encountered while processing:
- ldap-account-manager2.4.all.deb
这时候,
apt-get remove --purge,apt-get -f install
都不管用了
后来看了一人的解决方案,甚是感激啊。
其实就是将dpkg的status删除,我怎么就没有想到呢?
首先,确定以下命令不能用
- sudo aptitude update
- sudo aptitude -f install
然后,确定以下命令不能用
- sudo dpkg --force all --remove
如果都不行,恭喜你,你的dpkg真的有问题了。
现在开始
1、备份你的dpkg的status
sudo cp /var/lib/dpkg/status ~/backup/dpkg/
2、编辑status文件
sudo vim /var/lib/dpkg/status
3、查找你出问题的软件包,在本文中就是万恶的ldap-account-manager
在vim中
/ldap-account-manager
- 6474 Package: ldap-account-manager
- 6475 Status: deinstall reinstreq half-installed
- 6476 Priority: extra
- 6477 Section: web
- 6478 Installed-Size: 12268
- 6479 Maintainer: Roland Gruber <post@rolandgruber.de>
- 6480 Architecture: all
- 6481 Version: 2.4.0-1
- 6482 Depends: php5 (>= 5.1), php5-ldap, apache | apache-ssl | apache-perl | apache2 | httpd, php-fpdf, debconf (>= 0.2.26) | debconf-2.0
- 6483 Suggests: ldap-server, php5-mcrypt, ldap-account-manager-lamdaemon, perl
- 6484 Conffiles:
- 6485 /etc/ldap-account-manager/shells newconffile
- 6486 /etc/ldap-account-manager/config.cfg newconffile
- 6487 /etc/ldap-account-manager/passwordMailTemplate.txt newconffile
- 6488 /etc/ldap-account-manager/apache.conf newconffile
- 6489 Description: webfrontend for managing accounts in an LDAP directory
- 6490 LDAP Account Manager (LAM) runs on an existing webserver.It manages user, group
- 6491 and host accounts. Currently LAM supports these account types:
- 6492 Samba 2 and 3, Unix, Kolab 2, address book entries, NIS mail
- 6493 aliases and MAC addresses. There is a tree viewer included to
- 6494 allow access to the raw LDAP attributes. You can use templates
- 6495 for account creation and use multiple configuration profiles.
- 6496 Account information can be exported as PDF file. There is also
- 6497 a script included which manages quotas and homedirectories.
- 6498 Homepage: http://lam.sourceforge.net/
4、全删除整个关于ldap-account-manager的package,保存退出
5、保证格式
保证下一个package和上一个package中间有一行空行。
6、现在已经找不到ldap-account-manager包了,重新安装。当然aptitude已经可以正常使用了。
Ubuntu下,dpkg安装出错的修复的更多相关文章
- Ubuntu下dpkg安装软件遇到包依赖问题的处理方法
造冰箱的大熊猫@cnblogs 2019/9/10 向灵魂工程师致敬! 在Ubuntu环境下通过dpkg命令安装deb包时,如果遇到包依赖问题,如 $sudo dpkg -i xxx.deb (Rea ...
- Ubuntu使用dpkg安装软件依赖问题解决 ubuntu-tweak ubuntu 16.04 LTS 系统清理
Ubuntu使用dpkg安装软件依赖问题解决 这里以在ubuntu 16.04安装Ubuntu Tweak为例进行说明,通常安装包依赖问题都可以用这种方法解决: sudo apt-get instal ...
- Ubuntu下软件安装方式、PATH配置、查找安装位置
Ubuntu 18.04, 安装方式 目前孤知道的Ubuntu下安装软件方式有3种(命令): 1.make 2.apt/apt-get 3.dpkg 方式1基于软件源码安装,需要经历配置(可选).编译 ...
- Ubuntu下nagios安装(来源官网)
Ubuntu下nagios安装(来源官网) https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/4/en/toc.html h ...
- Ubuntu下Zabbix安装及使用问题
1.configure: error: MySQL library not found MySQL library not found root@kallen:~# apt-get install l ...
- Ubuntu下手动安装vscode
Ubuntu下手动安装vscode1.下载vscodewget https://vscode.cdn.azure.cn/stable/553cfb2c2205db5f15f3ee8395bbd5cf0 ...
- [转]:Ubuntu 下Apache安装和配置
[转]:Ubuntu 下Apache安装和配置_服务器应用_Linux公社-Linux系统门户网站 https://www.linuxidc.com/Linux/2013-06/85827.htm ...
- Ubuntu下编译安装postgreSQL 10.5
Ubuntu下编译安装postgreSQL 10.5 ubuntu 16.04 LTS系统postgreSQL 10.5 安装包准备 1.从PostgreSQL官网下载PostgreSQL的安装包 安 ...
- 在Ubuntu下编译安装GreatSQL
在Ubuntu下编译安装GreatSQL 本次介绍如何利用Docker构建Ubuntu环境,并将GreatSQL源码编译成二进制文件. 1.准备工作 先创建本次Docker的workdir为 /dat ...
随机推荐
- C plus plus 控制格式
使用这些格式需要声明包含<iomainip> long flags( ) const 返回当前的格式标志.long flays(long newflag) 设置格式标志为newflag,返 ...
- Android开发之探秘蓝牙隐藏API
这次讲得深入些,探讨下蓝牙方面的隐藏API.用过Android系统设置(Setting)的人都知道蓝牙搜索之后可以建立配对和解除配对,但是这两项功能的函数没有在SDK中给出,那么如何去使用这两项功能呢 ...
- Jsp应用EL和JSTL实例对比。
普通方式: register.jsp <%@ page language="java" import="java.util.*" pageEncoding ...
- RHEL7 - 从命令行管理文件
RHEL中重要的目录 位置 用途 /usr 安装的软件.共享的库,包括文件和静态只读程序数据.重要的子目录有: -/usr/bin:用户命令 -/usr/sbin:系统管理命令 -/usr/local ...
- js数组基本知识
1.数组的引出 用数组解决王大爷养乌龟的问题: var weights=[3,5,1,3.4,2,50]; var all_weight=0; var avg_weight=0; for (i=0;i ...
- c#的SortedList使用方法
表示键/值对的集合,这些键和值按键排序并可按照键和索引访问. SortedList最合适对一列健/值对 进行排序,在排序时,是对键进行排序,SortedList 是 Hashtable 和 Array ...
- HttpClient详解,Java发送Http的post、get方式请求 --待整理
http://www.cnblogs.com/loveyakamoz/archive/2011/07/21/2112804.html http://blog.csdn.net/wangpeng047/ ...
- malloc/free 与 new/delete 比较
相同点:都可用于申请动态内存和释放内存 不同点: (1)操作对象有所不同. malloc与free是C++/C 语言的标准库函数,new/delete 是C++的运算符.对于非内部数据类的对象而言,光 ...
- 深入mysql “ON DUPLICATE KEY UPDATE” 语法的分析
本篇文章是对mysql “ON DUPLICATE KEY UPDATE”语法进行了详细的分析介绍,需要的朋友参考下. mysql “ON DUPLICATE KEY UPDATE” 语法 如果在IN ...
- Android开发1——查找所需要出示权限的内容
一.发现问题 用户在执行一些如拨打电话.发送短信等关系用户隐私的功能时,Android需要出示权限,权限在AndroidManifest.xml中配置 拨打电话的权限 发送短信的权限 那么这些权限信息 ...