Linux软件安装的几种方法 (一)—— apt-get

举报
山海之光 发表于 2019/12/28 11:02:31 2019/12/28
【摘要】 Linux系统上安装软件的方法和在windows上安装软件是有很大不同的,有时候Linux上安装软件碰到各种依赖不满足,是极为头疼的事情,下面盘点一下Linux上安装软件的几种方法,笔者基本上用的是ubuntu,所以主要讲Ubuntu上的软件安装方法,主要有以下几种方法:(1)apt-get(2)deb包安装(3)源码编译安装将分成独立的几个篇章来进行讲解。方法一:成也萧何,败也萧何 的ap...

Linux系统上安装软件的方法和在windows上安装软件是有很大不同的,有时候Linux上安装软件碰到各种依赖不满足,是极为头疼的事情,下面盘点一下Linux上安装软件的几种方法,笔者基本上用的是ubuntu,所以主要讲Ubuntu上的软件安装方法,主要有以下几种方法:

(1)apt-get

(2)deb包安装

(3)源码编译安装

将分成独立的几个篇章来进行讲解。

方法一:成也萧何,败也萧何 的apt-get

要在ubuntu上安装软件,apt-get是一个很强大的工具,很多软件都可以使用该工具进行安装。但是Linux发行版本众多,apt-get的软件源更新没有跟上节奏,可能以前能装上的软件,后来就各种依赖不满足装不上了。我们先来看看apt-get的基本用法,再来看看如何解决依赖不满足的情况。

使用apt-get之前,需要配置软件源,软件源就是一个服务器地址列表,存储在/etc/apt/sources.list中,默认服务器是http://us.archive.ubuntu.com,你也可以网上查找一些国内Linux软件源服务器的地址,修改更新到/etc/apt/sources.list中,更改方法在网上可以查到很多文章。

配置好软件源之后,要进行sudo apt-get update,意思是从软件源服务器更新软件源信息,知道软件源上有哪些软件。做完这些后,apt-get就可以正式使用了,有如下常用的命令。

(1)安装或重装类操作

apt-get install <pkg>              # 安装软件包<pkg>,多个软件包用空格隔开

apt-get install --reinstall <pkg>  # 重新安装软件包<pkg>  

apt-get install -f <pkg>           # 修复安装(破损的依赖关系)软件包<pkg>


(2)卸载

apt-get remove <pkg>  # 删除软件包<pkg>(不包括配置文件)

apt-get purge <pkg>   # 删除软件包<pkg>(包括配置文件)


(3)升级 —— 一定要慎用!一定要慎用!一定要慎用!

apt-get upgrade       # 更新所有已安装的包

apt-get dist-upgrade  # 发行版升级(如,从10.10到11.04)

更新到最新的软件包或发行版不一定是好事,可能导致你系统上安装的其他东西(各种库文件、代码、软件)都无法使用了

笔者从来没有使用过这两个命令,因为行为不可控、结果也不可控

要升级某个软件包的话,就使用apt-get install --reinstall <pkg>,pkg名字里指定版本号


(4)下载或清除

apt-get source <pkg>     # 下载pkg包的源代码到当前目录

apt-get download <pkg>   # 下载pkg包的二进制包到当前目录

apt-get source -d <pkg>  # 下载完源码包后,进行编译

apt-get build-dep <pkg>  # 构建pkg源码包的依赖环境(编译环境?)

apt-get clean            # 清除缓存(/var/cache/apt/archives/{,partial}下)中所有已下载的包

apt-get autoclean        # 类似于clean,但清除的是缓存中过期的包(即已不能下载或者是无用的包)

apt-get autoremove       # 删除因安装软件自动安装的依赖,而现在不需要的依赖包


(5)查询

apt-cache stats              # 显示系统软件包的统计信息  

apt-cache search <pkg>       # 使用关键字pkg搜索软件包  

apt-cache show   <pkg_name>  # 显示软件包pkg_name的详细信息  

apt-cache depends <pkg>      # 查看pkg所依赖的软件包  

apt-cache rdepends <pkg>     # 查看pkg被那些软件包所依赖

打开/var/log/apt/history.log,可以查看apt-get的软件安装记录

ubuntu上apt-get安装的软件包都缓存放在/var/cache/apt/archives,该目录里还会存放曾经下载过的deb安装包,但是这里的deb安装包不一定是完整可独立完整的,如果要使用deb包,还是通过正常方式下载完整的deb包进行安装更安全。


(6)apt-get intall报依赖关系不满足的解决办法

使用sudo apt-get intall xxx的时候,有时候会碰到错误提示:要安装的某个软件xxx依赖于另一个软件xxx-x.x.x,但是不会被安装,这类错误提示一般就是指被依赖软件已经被安装了,但是版本号对不上,其实绝大多数依赖关系不满足的情况就是由于版本号对不上导致的,可以通过以下步骤解决:

a) sudo apt-get update          # 更新软件源,软件安装不上,可能是有了更新

   sudo apt-get -f install xxx  # -f选项表示以修复方式安装,先尝试这样方式,即使失败了也不影响

b) sudo apt-get --reinstall install xxx=xxx.1.2.3  # 根据错误提示,提示说依赖于哪个xxx.1.2.3,我们就重新装上那个软件包

如果以上方法还不行,可能是软件源配置不对,获取不到匹配的版本,需要修改/etc/apt/sources.list,这时候就需要上网查一下修改办法。


最后补充一下下,如果你使用的是带有桌面界面的Ubuntu系统,那么可以使用自带的Ubuntu软件中心进行软件的安装,也可以用Ubuntu软件中心安装一个新立得软件包管理器,新立得是图形化的apt-get管理工具。不管是Ubuntu软件中心还是新立得,还是可能会遇到依赖不满足的问题,还是得通过命令行的方式来解决依赖问题。个人认为,Linux毕竟是Linux,即使是Linux新手,也得减少对图形化操作界面的使用,毕竟最后很多事情还是要落到命令行界面上来解决。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。