在Ubuntu里面,有时候碰到软件配置错了,这是重新再安装的话,会检测到已安装,系统不会再重新安装,就需要卸载之后重装

1、通过deb包安装的情况: 
安装.deb包: 
代码:sudo dpkg -i package_file.deb
反安装.deb包:
代码:sudo dpkg -r package_name

2、通过apt-get安装的情况:
安装
代码:sudo apt-get install package_name
反安装
代码:sudo apt-get remove package_name

3、sudo dpkg -p package_name卸载软件包及其配置文件,但无法解决依赖关系!
   sudo aptitude purge pkgname卸载软件包及其配置文件与依赖关系包!

清除所有已删除包的残馀配置文件 
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P 
如果报如下错误,证明你的系统中没有残留配置文件了,无须担心。

--------------------------------------------------------------------------------

dpkg: --purge needs at least one package name argument

Type dpkg --help for help about installing and deinstalling packages

  • ;
    Use `dselect' or `aptitude' for user-friendly package management;
    Type dpkg -Dhelp for a list of dpkg debug flag values;
    Type dpkg --force-help for a list of forcing options;
    Type dpkg-deb --help for help about manipulating *.deb files;
    Type dpkg --license for copyright license and lack of warranty (GNU GPL)
  • .

    Options marked

  • produce a lot of output - pipe it through `less' or `more' !

    4、dpkg安裝的可以用apt卸載,反之亦可

    5、aptitude 与 apt-get 一样,是 Debian 及其衍生系统中功能极其强大的包管理工具。与 apt-get 不同的是,aptitude 在处理依赖问题上更佳一些。举例来说,aptitude 在删除一个包时,会同时删除本身所依赖的包。这样,系统中不会残留无用的包,整个系统更为干净。以下是笔者总结的一些常用 aptitude 命令,仅供参考。

    命令 作用 
    aptitude update 更新可用的包列表 
    aptitude upgrade 升级可用的包 
    aptitude dist-upgrade 将系统升级到新的发行版 
    aptitude install pkgname 安装包 
    aptitude remove pkgname 删除包 
    aptitude purge pkgname 删除包及其配置文件 
    aptitude search string 搜索包 
    aptitude show pkgname 显示包的详细信息 
    aptitude clean 删除下载的包文件 
    aptitude autoclean 仅删除过期的包文件

    当然,你也可以在文本界面模式中使用 aptitude。

    6、常用apt命令

    apt-cache search # ------(package 搜索包)
    apt-cache show #------(package 获取包的相关信息,如说明、大小、版本等)
    sudo apt-get install # ------(package 安装包)
    sudo apt-get install # -----(package - - reinstall 重新安装包)
    sudo apt-get -f install # -----(强制安装?#"-f = --fix-missing"当是修复安装吧...)
    sudo apt-get remove #-----(package 删除包)
    sudo apt-get remove - - purge # ------(package 删除包,包括删除配置文件等)
    sudo apt-get autoremove --purge # ----(package 删除包及其依赖的软件包+配置文件等(只对6.10有效,强烈推荐))
    sudo apt-get update #------更新源
    sudo apt-get upgrade #------更新已安装的包
    sudo apt-get dist-upgrade # ---------升级系统
    sudo apt-get dselect-upgrade #------使用 dselect 升级
    apt-cache depends #-------(package 了解使用依赖)
    apt-cache rdepends # ------(package 了解某个具体的依赖?#当是查看该包被哪些包依赖吧...)
    sudo apt-get build-dep # ------(package 安装相关的编译环境)
    apt-get source #------(package 下载该包的源代码)
    sudo apt-get clean && sudo apt-get autoclean # --------清理下载文件的存档 && 只清理过时的包
    sudo apt-get check #-------检查是否有损坏的依赖 
    7、dpkg的介绍及命令使用:

    简介
    dpkg是Debian的中级软件包管理器,类似RPM.

    dpkg是Debian软件包管理系统的中流砥柱,负责安全卸载软件包,配置,以及维护已安装的软件包.也是Debian系统中众多软件包管理工具的后端.有关dpkg的更多介绍参阅:http://www.dpkg.org

    系统中所有packages的信息都在/var/lib/dpkg/目录下,其中子目录”/var/lib/dpkg/info”用于保存各个软件包的配置文件列表.

    .conffiles 记录了软件包的配置文件列表
    .list 保存软件包中的文件列表,用户可以从.list的信息中找到软件包中文件的具体安装位置.

    .md5sums 记录了软件包的md5信息,这个信息是用来进行包验证的.

    .prerm 脚本在Debian报解包之前运行,主要作用是停止作用于即将升级的软件包的服务,直到软件包安装或升级完成.

    .postinst脚本是完成Debian包解开之后的配置工作,通常用于执行所安装软件包相关命令和服务重新启动.

    /var/lib/dpkg/available文件的内容是软件包的描述信息,该软件包括当前系统所使用的Debian安装源中的所有软件包,其中包括当前系统中已安装的和未安装的软件包.

    dpkg
    查询当前系统所有已安装的deb包
    dpkg –l 命令用于查询当前系统所有以安装的deb包的信息.,通过less和grep可以执行更复杂的查询工作.

    例如查找跟vim有关的软件包,dpkg –l |grep –ivim

    (如发现iU 表示软件包未安装成功,ii表示安装成功)

    查看已安装软件包的详细情况
    dpkg –s 命令查看软件包的详细情况,包括版本,依赖之类的

    查询系统中所安装软件包所安装的文件
    dpkg –L 命令用于查询系统中所安装软件包的安装的文件安装到系统的位置和安装了那些.

    小提示: 如何可以看软件包装到哪个地方?
    用apt-get install *

    如何可以看软件包装到哪个地方?
    dpkg -L package-name|more

    查询系统中某个文件属于那个软件包
    dpkg –S 命令用于了解当前的软件属于那个软件包

    查询未安装的信息
    查询未安装软件包详细信息
    dpkg –I 命令用于查看未安装软件包的详细信息,以便了解该软件包是否需要安装.

    查询deb包文件中所包含的文件
    dpkg –c 显示未安装deb软件包所包含的文件列表,以及安装位置

    安装软件包
    安装deb软件包
    dpkg –i 手工安装deb包到系统中,不过有时会存在Dpends关系,建议使用apt-get 来安装.
    如果通过dpkg –i安装软件后由于Dpends关系没有安装成功,可通过apt-get –f install解决

    解决dpkg –i 安装deb包出现Dpends问题
    apt-get –f install 解决Dpends问题.
    例如:dpkg –i lftp_3.1.3-1_i386.deb

    Selecting previously deselected package lftp.
    (Reading database … 20654 files and directories currently installed.)
    unpacking lftp (from lftp_3.1.3-1_i386.deb)…
    dpkg:dependency problems prevent configuration of lftp:
    lftp depends on libexpat1 (<=1.95.8);however
    dpkg : error processing lftp (--install)
    dependency problems –leaving unconfigured 
    Errors were encountered while processing:
    lftp
    //lftp软件包安装失败
    dpkg –l |grep lftp
    iU lftp   3.1.3-1   Sophisticated
    command-line FTP/HTTP client p
    //”dpkg -l” 查询信息表示lftp软件包未安装成功
    (iU表示未安装成功,ii表示安装成功)

    使用apt-get –f install解决

    卸载deb软件包
    dpkg –r用于卸载指定的软件包,该命令只卸载软件包安装到系统中的文件,而不去删除软件包的配置文件,因此不是完全意义上的卸载.但是软件包保存在系统中,可以提供给以后在安装软件包时使用.
    例如:dpkg –r prozilla 移除后再用dpkg –l |grep prozilla 查看

    会看到rc proc 1.3.6-3woody3 multi-thraded download accelerator

    表示软件包已经被卸载,但配置文件仍在“rc”带表配置文件仍在.

    卸载软件包并清除配置文件
    dpkg –P 用于卸载软件包同时也删除配置文件,dpkg –P 不能解决Dpends问题,建议卸载时使用apt-get操作

    重新配置软件包
    对于Debian系统中的众多软件包(尤其是系统和服务器软件包)来说,在第一次安装该软件包时候会显示对话框窗口,提示用户输入必要的配置信息.当用户需要再次对软件包配置的时候,可以使用dpkg-reconfigure来对指定的软件包进行配置.
    比如dpkg-reconfigure locales

    alien包转换工具

    如果我们有很喜欢的RPM包,而又没有deb版本.怎么办~?可以同过alien来转换或者直接安装,这个小家伙可是个很方便的东西!

    基本命令如下:
    首先通过apt-get install alien来安装.
    然后
    alien -i name-of-the-pakage.rpm /*用来直接安装rpm包
    alien -d , --to-deb /*Make debian packages,This is the default
    例:alien –d package.rpm
    alien –r , --to-rpm /*Make rpm packages

    例:alien –r package.deb
    alien –p , --to-pkg /*Make Solaris pkg packages
    alien –-to-slp /*Make slp packages
    alien –t , --to-tgz /*Make tgz packages
    alien –T 检测

    alien –-patch=patch 设置patch

sudo apt-get remove softwarename

Ubuntu里面软件的安装与卸载的更多相关文章

  1. Ubuntu 中软件的安装、卸载以及查看的方法总结

    Ubuntu 中软件的安装.卸载以及查看的方法总结 博客分类: Linux UbuntuDebian配置管理CacheF#  说明:由于图形化界面方法(如Add/Remove... 和Synaptic ...

  2. Linux Centos下软件的安装与卸载方法

    转载于: http://blog.csdn.net/zolalad/article/details/11368879 Linux下软件的安装与卸载   第一章   linux下安装软件,如何知道软件安 ...

  3. Linux 下configure 参数配置与软件的安装与卸载

    Linux环境下的软件安装,并不是一件容易的事情:如果通过源代码编译后在安装,当然事情就更为复杂一些:现在安装各种软件的教程都非常普遍:但万变不离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而 ...

  4. homebrew可以管理众多开源软件的安装和卸载

    通过homebrew可以管理众多开源软件的安装和卸载. 参考https://github.com/mxcl/homebrew/wiki 1. 安装: ruby -e "$(curl -fsS ...

  5. Ubuntu命令行下安装,卸载软件包的过程[转]

    一.Ubuntu中软件安装方法 1.APT方式 (1)普通安装:apt-get install softname1 softname2 …; (2)修复安装:apt-get -f install so ...

  6. 【转】Ubuntu命令行下安装、卸载、管理软件包的方法

    原文网址:http://oss.org.cn/html/47/n-67447.html 一.Ubuntu中软件安装方法 1.APT方式 (1)普通安装:apt-get install softname ...

  7. linux环境下(非UI操作)所有软件的安装与卸载总结

    UI界面的软件管理 linux下的软件一般都是经过压缩的,主要的格式有这几种:rpm.tar.tar.gz.tgz等.所以首先拿到软件后第一件事就是解压缩. 在xwindow下以rpm格式的软件安装比 ...

  8. Ubuntu命令行下安装、卸载、管理软件包的方法

    一.Ubuntu中软件安装方法 1.APT方式 (1)普通安装:apt-get install softname1 softname2 -; (2)修复安装:apt-get -f install so ...

  9. linux下软件的安装与卸载

    一 软件安装包的类型 通常Linux应用软件的安装有五种:    1) tar+ gz包,如software-1.2.3-1.tar.gz.他是使用UNIX系统的打包工具tar打包的.    2) r ...

随机推荐

  1. Autofac.Integration.Mvc.Owin分析

    using System; using System.ComponentModel; using System.Diagnostics.CodeAnalysis; using System.Secur ...

  2. Python之路【第十篇】Python操作Memcache、Redis、RabbitMQ、SQLAlchemy、

    Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度 ...

  3. js中自定义事件,使用了jQuery

    $(function(){ $('#btn').bind("myClick", function(){ //自定义myClick事件 $('#test').append(" ...

  4. SSH+Ext+mysql快速开发

    一.需要知识点 1.SSH整合 2.EXT使用 以及深入细节点 二.小功能实现 1.Servlet实现校验码验证 2.首页布局实现 3.struts错误信息显示(struts标签使用) 4.首页整体布 ...

  5. 深入理解Java:注解(Annotation)--注解处理器

    如果没有用来读取注解的方法和工作,那么注解也就不会比注释更有用处了.使用注解的过程中,很重要的一部分就是创建于使用注解处理器.Java SE5扩展了反射机制的API,以帮助程序员快速的构造自定义注解处 ...

  6. IIS服务器运行一段时间后卡死,且无法打开网站(IIS管理无响应,必须重启电脑)

    问题描述: 公司希望使用IIS配合网站显示一些订单跟进的情况并展示出来,所以我们在一台演示的Win7 Pro电脑上安装了IIS,但使用了一段时间后发现每过几天页面就无法正常访问了,而且打开IIS管理器 ...

  7. UIView不接受触摸事件的三种情况

    1.不接收用户交互 userInteractionEnabled = NO 2.隐藏 hidden = YES 3.透明 alpha = 0.0 ~ 0.01 4. 如果子视图的位置超出了父视图的有效 ...

  8. R入门-第一次写了一个完整的时间序列分析代码

    纪念一下,在心心念念想从会计本科转为数据分析师快两年后,近期终于迈出了使用R的第一步,在参考他人的例子前提下,成功写了几行代码.用成本的角度来说,省去了部门去买昂贵的数据分析软件的金钱和时间,而对自己 ...

  9. 【bzoj2435】[NOI2011]道路修建

    题目描述 在 W 星球上有 n 个国家.为了各自国家的经济发展,他们决定在各个国家之间建设双向道路使得国家之间连通.但是每个国家的国王都很吝啬,他们只愿意修建恰好 n – 1条双向道路. 每条道路的修 ...

  10. 避免在WHERE条件中,在索引列上进行计算或使用函数,因为这将导致索引不被使用

    点击(此处)折叠或打开 --在sal列上创建非唯一索引 scott@TESTDB11>create index idx_emp1_sal on emp1(sal); Index created. ...