ubuntu下命令安装与卸载软件方法

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

刚 刚接触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

转载于:https://my.oschina.net/qichang/blog/32956

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/267542.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

为什么用线程池

1、创建/销毁线程伴随着系统开销&#xff0c;过于频繁的创建/销毁线程&#xff0c;会很大程度上影响处理效率 2、线程并发数量过多&#xff0c;抢占系统资源从而导致阻塞 3、对线程进行一些简单的管理 延时执行、定时循环执行的策略等 https://www.cnblogs.com/dongguacai/p/60…

delphi7存取配置文件与sqlserver数据库连接_Delphi7存取配置文件与SQLServer数据库连接...

时间:2012-06-28 18:57来源:未知 整理:寂涯网络 点击:2975次引言Delphi7 具有强大的数据库应用程序开发功能 在使用Delphi7 开发 房产管理系统 时&#xff0c;后台数据库采用 SQLServer 数据库管理系统 使用 TADOConnection 组件与数据库建立连接&#xff0c;需要指定 TADOConn…

C 语言和C++语言的 struct对比

C 语言和C语言的 struct对比 author: stonehat 1. C语言将struct当成类来处理的&#xff0c;所以C的struct可以包含C类的所有东西&#xff0c;例如构造函数&#xff0c;析构函数&#xff0c;友元等&#xff0c;C的struct和C类唯一不同就是 struct成员默认的是public&#xff0c…

UOJ.117.欧拉回路

题目链接 这数据。。简直了 有自环和重边&#xff0c;有些点可能没有连边(并查集不好使 就DFS吧) 因为重边自环可能非常多&#xff0c;同一个点可能经过n次&#xff0c;所以必须要重置表头H[x](类似当前弧优化) 另外是找欧拉回路不是欧拉路径&#xff0c;判断不要错 无向图: 所…

c++ linux 线程等待与唤醒_C++并发编程 等待与唤醒

C并发编程 等待与唤醒条件变量条件变量, 包括(std::condition_variable 和 std::condition_variable_any)定义在 condition_variable 头文件中, 它们都需要与互斥量(作为同步工具)一起才能工作.std::condition_variable 允许阻塞一个线程, 直到条件达成.成员函数void wait(std:…

iOS 动画基础总结篇

iOS 动画基础总结篇 动画的大体分类(个人总结可能有误) 分类.png UIView 动画 属性动画 12345678910111213141516171819[UIView beginAnimations:nil context:nil];[UIView setAnimationDelay:1];[UIView setAnimationDuration:2];[UIView setAnimationRepeatCount:100];[UIVie…

最老程序员创业札记:全文检索、数据挖掘、推荐引擎应用41

入局在北京初冬寒风的吹拂下&#xff0c;吴言渐渐清醒了起来&#xff0c;他现在需要做的是赶紧想办法应付下周赵海波要召开的会议&#xff0c;而不是无谓的生气。吴言走在冬日的街头&#xff0c;一边走一边想。下周的事情还真不少&#xff0c;第一件事是赵海波要召开的公司改组…

bootstraptable获得所有行_郎酒领衔,2020“川酒全国行”首站香满花城

12月8日&#xff0c;2020“川酒全国行”首站在广州开启。以“川酒金花醉美珠江”为主题&#xff0c;本次活动由四川省经济和信息化厅指导&#xff0c;四川中国白酒金三角酒业协会主办&#xff0c;四川郎酒股份有限公司承办&#xff0c;五粮液、泸州老窖、剑南春、舍得、水井坊协…

判断DataRow中某列是否为空的方法

DataRow drdt.Rows[0]; if(!dr.IsNull("列名")) { //不为空的操作 }转载于:https://www.cnblogs.com/12go/archive/2011/10/09/2203606.html

centos7根据端口查进程_记录一次CentOs7下Nginx+WSGI部署Django项目(超详细)

记录一次Django部署的文章&#xff0c;不是很熟悉Linux系统&#xff0c;踩了不少坑&#xff0c;本篇文章相当于是一个总结&#xff0c;我会在本文中详细介绍&#xff0c;部署单个Django项目和多个Django的方法&#xff0c;如读者有更好的方法&#xff0c;欢迎留言一起探讨~长话…

淘宝跨域获取Cookie分析

最近在发现使用Taobao的时候的一个小细节&#xff0c;于是便萌发起了写这篇文章。 当我们在 www.taobao.com 中进行登录之后&#xff0c;然后直接切换到 www.tmall.com 域名下&#xff0c;发现www.tmall.com首页的最顶部马上显示成了&#xff1a; 您好, andyfaces。 首先&#…

mqtt 传文件断开连接的原因_MQTT PythonClient断开连接不当

MikeScotty的回答不对。缺少的是启动MQTT网络循环。需要启动循环来处理发送keep-alive包、为QoS 1/2消息进行多段握手以及处理传入的订阅。在如果你只想保持联系或者10秒钟&#xff0c;那么这样的方法就可以了import paho.mqtt.client as mqttimport timeBroker "192.168…

JAVA方法 字符串与unicode的相互转换

unicode编码简而言之就是将每一个字符用16位2进制数标识。但是通常都用4位的16进制数标识。例如&#xff1a;1)中文字符串"你好"的unicode码为&#xff1a;\u<?XML:NAMESPACE PREFIX ST1 />4f60\u597d; 2)英文字符串"ab"的unicode码为&#xff1a;…

js原型和原型链

我们要理解js的原型&#xff0c;首先需要知道5条js原型规则&#xff1a; 1.js引用类型(function ,array ,object)都可以任意扩展自己的属性。 1 function fn(){2 3 }4 fn.age10;5 console.log(fn.age);//106 7 var arr[1,2,3];8 arr.namekeke;9 console.log(arr);//[1,2,3,name…

solaris 10安装Oracle10.2g

1> 检查相关的安装包 官方要求的包: SUNWarc SUNWbtool SUNWhea SUNWlibm SUNWlibms SUNWsprot SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfnt 执行命令 bash-3.00# pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibm SUNWlibms SUNWsprot SUNWsprox SUNWtoo SUNWi1of SUNW…

蜡笔小新里的钢达姆机器人怎么画_写字机器人好用吗? 组装就花了5个小时 还要学习软件、录入字体...

据江苏公共新闻频道《新闻360》报道&#xff1a;新学期开学&#xff0c;各种各样的课后作业成了孩子和家长关注的话题。前不久&#xff0c;一条“孩子购买代写作业机器人&#xff0c;被家长发现”的新闻&#xff0c;引发了强烈争议。这种可以写字的机器人到底是什么&#xff1f…

20165235 Java第一周学习总结

(# 20165235 Java第一周学习总结 Ubuntu下git的安装与使用首先Ubuntu下git的安装&#xff0c;使用sudo apt-get install git下载Ubuntu,下载完成后可以用指令git查看。 安装完git之后输入git config --global user.name "名字"&#xff0c;git config --global user.…

解决opencv在pycharm中无代码自动提示的bug

2018-03-0422:19:39 首先&#xff0c;估计这不是bug 可能是我自己误操作导致的&#xff0c;但是让我搞了好久才搞定&#xff0c;实在是苦恼 如图已实现功能&#xff0c;百度里有很多朋友出现了&#xff0c;这个无代码提示的问题 大概是这样的&#xff0c;毕竟&#xff0c;软件这…

eBay:PayPal今年移动支付总额将超35亿美元

北京时间10月18日早间消息&#xff0c;eBay(微博) CEO约翰多诺霍(John Donahoe)周一在旧金山的Web 2.0峰会上表示&#xff0c;通过移动设备&#xff0c;PayPal今年处理的总支付额将超过35亿美元。 多诺霍此前曾预计&#xff0c;PayPal今年通过移动设备的总支付额为30亿美元&…

看风水用什么罗盘最好_兰花用什么花盆栽植最好?

兰花用什么花盆栽植最好&#xff1f;高低深浅如何选&#xff1f;文&#xff1a;花木君经常有兰友咨询关于兰花的花盆的问题&#xff0c;诸如用浅盆还是深盆&#xff0c;用什么材质的花盆适宜之类&#xff0c;由于品种不同&#xff0c;兰丛大小各异&#xff0c;如果泛泛的回答&a…