设为首页 收藏本站
查看: 602|回复: 0

[经验分享] 实验楼 Linux 下软件安装

[复制链接]
发表于 2017-11-21 23:06:44 | 显示全部楼层 |阅读模式
  通常 Linux 上的软件安装主要有四种方式:


  • 在线安装
  • 从磁盘安装deb软件包
  • 从二进制软件包安装
  • 从源代码编译安装

apt 包管理工具介绍

  APT是Advance Packaging Tool(高级包装工具)的缩写,是Debian及其派生发行版的软件包管理器,APT可以自动下载,配置,安装二进制或者源代码格式的软件包,因此简化了Unix系统上管理软件的过程。APT最早被设计成dpkg的前端,用来处理deb格式的软件包。现在经过APT-RPM组织修改,APT已经可以安装在支持RPM的系统管理RPM包。这个包管理器包含以 apt- 开头的的多个工具,如 apt-get apt-cache apt-cdrom 等,在Debian系列的发行版中使用。

  当你在执行安装操作时,首先apt-get 工具会在本地的一个数据库中搜索关于 w3m 软件的相关信息,并根据这些信息在相关的服务器上下载软件安装,这里大家可能会一个疑问:既然是在线安装软件,为啥会在本地的数据库中搜索?要解释这个问题就得提到几个名词了:


  • 软件源镜像服务器
  • 软件源
  我们需要定期从服务器上下载一个软件包列表,使用 sudo apt-get update 命令来保持本地的软件包列表是最新的(有时你也需要手动执行这个操作,比如更换了软件源),而这个表里会有软件依赖信息的记录,对于软件依赖,我举个例子:我们安装 w3m 软件的时候,而这个软件需要 libgc1c2 这个软件包才能正常工作,这个时候 apt-get 在安装软件的时候会一并替我们安装了,以保证 w3m 能正常的工作。

apt-get
  apt-get 是用于处理 apt包的公用程序集,我们可以用它来在线安装、卸载和升级软件包等,下面列出一些apt-get包含的常用的一些工具:

工具说明



install
其后加上软件包名,用于安装一个软件包


update
从软件源镜像服务器上下载/更新用于更新本地软件源的软件包列表


upgrade
升级本地可更新的全部软件包,但存在依赖问题时将不会升级,通常会在更新之前执行一次update


dist-upgrade
解决依赖关系并升级(存在一定危险性)


remove
移除已安装的软件包,包括与被移除软件包有依赖关系的软件包,但不包含软件包的配置文件


autoremove
移除之前被其他软件包依赖,但现在不再被使用的软件包


purge
与remove相同,但会完全移除软件包,包含其配置文件


clean
移除下载到本地的已经安装的软件包,默认保存在/var/cache/apt/archives/


autoclean
移除已安装的软件的旧版本软件包
  下面是一些apt-get常用的参数:

参数说明



-y
自动回应是否安装软件包的选项,在一些自动化安装脚本中使用这个参数将十分有用


-s
模拟安装


-q
静默安装方式,指定多个q或者-q=#,#表示数字,用于设定静默级别,这在你不想要在安装软件包时屏幕输出过多时很有用


-f
修复损坏的依赖关系


-d
只下载不安装


--reinstall
重新安装已经安装但可能存在问题的软件包


--install-suggests
同时安装APT给出的建议安装的软件包  

软件搜索
  当自己刚知道了一个软件,想下载使用,需要确认软件仓库里面有没有,就需要用到搜索功能了,命令如下:

sudo apt-cache search softname1 softname2 softname3……

  apt-cache 命令则是针对本地数据进行相关操作的工具,search 顾名思义在本地的数据库中寻找有关 softname1 softname2 …… 相关软件的信息。

使用 dpkg

  dpkg 是 Debian 软件包管理器的基础,它被伊恩·默多克创建于 1993 年。dpkg 与 RPM 十分相似,同样被用于安装、卸载和供给和 .deb 软件包相关的信息。
  dpkg 本身是一个底层的工具。上层的工具,像是 APT,被用于从远程获取软件包以及处理复杂的软件包关系。"dpkg"是"Debian Package"的简写。

  我们经常可以在网络上见到以deb形式打包的软件包,就需要使用dpkg命令来安装。
  dpkg常用参数介绍:

参数说明



-i
安装指定deb包


-R
后面加上目录名,用于安装该目录下的所有deb安装包


-r
remove,移除某个已安装的软件包


-I
显示deb包文件的信息


-s
显示已安装软件的信息


-S
搜索已安装的软件包


-L
显示已安装软件包的目录信息

使用dpkg安装deb软件包
  我们先使用apt-get加上-d参数只下载不安装,下载emacs编辑器的deb包,下载完成后,我们可以查看/var/cache/apt/archives/目录下的内容,如下图:

  然后我们将第一个deb拷贝到home目录下,并使用dpkg安装

$ cp /var/cache/apt/archives/emacs24_24.3+1-4ubuntu1_amd64.deb ~
# 安装之前参看deb包的信息
$ sudo dpkg -I emacs24_24.3+1-4ubuntu1_amd64.deb

  如你所见,这个包还额外依赖了一些软件包,这意味着,如果主机目前没有这些被依赖的软件包,直接使用dpkg安装可能会存在一些问题,因为dpkg并不能为你解决依赖关系。

# 使用dpkg安装
$ sudo dpkg -i emacs24_24.3+1-4ubuntu1_amd64.deb

  跟前面预料的一样,这里你可能出现了一些错误:

  我们将如何解决这个错误了,这就要用到apt-get了,使用它的-f参数了,修复依赖关系的安装

$ sudo apt-get -f install

  没有任何错误,这样我们就安装成功了,然后你可以运行emacs程序

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-409357-1-1.html 上篇帖子: Linux后台进程管理利器:supervisor 下篇帖子: 什么是 lnmp 实现原理。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表