dpkg安装软件流程_DPKG命令与软件安装、APT[通俗易懂]

dpkg安装软件流程_DPKG命令与软件安装、APT[通俗易懂]====Linux软件包====Linux系统中,软件通常以源代码或者预编译包的形式提供。软件的源代码通常需要编译为二进制代码才可使用,安装比较耗时。用户可以自行调节编译选项,决定需要的功能或组件,或者针对硬件平台作一些优化预编译包通常由软件发布者进行编译,用户只要将预编译包拷贝到系统中即可。考虑到预编译包的通用性,预编译包一般不会针对某种硬件平台优化,所包含的功能和组件也是通用的组合。ubunt…

大家好,又见面了,我是你们的朋友全栈君。

====Linux软件包====

Linux系统中,软件通常以源代码或者预编译包的形式提供。

软件的源代码通常需要编译为二进制代码才可使用,安装比较耗时。用户可以自行调节编译选项,决定需要的功能或组件,或者针对硬件平台作一些优化

预编译包通常由软件发布者进行编译,用户只要将预编译包拷贝到系统中即可。考虑到预编译包的通用性,预编译包一般不会针对某种硬件平台优化,所包含的功能和组件也是通用的组合。

ubuntu系统中,软件通常以deb格式的包发布,它是一种预编译包

====Linux DPKG命令====

deb包命令遵循如下约定:

soft_ver-rev_arch.deb

soft:软件包名称

ver:软件版本号

rev:ubuntu修订版本号

arch:目标架构名称

使用dpkg命令来管理deb包

dpkg -i :安装deb软件包

dpkg -r : 删除软件包

dpkg -r -P :连同配置文件一起删除

dpkg -I : 查看软件包信息

dpkg -L : 查看包内文件

dpkg -l : 查看系统中已安装软件包信息

dpkg-reconfigure xxx 重新配置软件包

同时安装多个软件包:

dpkg -i aaa.deb bbb.deb ccc.deb

====Linux apt命令====

如果一个软件依赖关系过于复杂,使用dpkg安装就不是一个明智的选择,这个时候就需要用到apt软件包管理系统。apt可以自动检查依赖关系,通过您预设的方式来获得相关软件包,并且自动安装和配置它

apt至少需要一个软件信息数据库和至少一个存放大量deb的软件仓库,我们称之为“源”,源可以是网络服务器、CD或者本地仓库,需要修改/etc/apt/sources.list文件,使apt系统能够连接到源。

apt系统主要包括apt-get和apt-cache等命令:

apt-get install xxx :安装xxx

-d 仅下载

-f 强制安装

apt-get remove xxx :卸载xxx

apt-get update :更新软件信息数据库

apt-get upgrade :进行系统升级

apt-cache search :搜索软件包

建议经常使用 sudo apt-get update 命令来更新您的软件信息数据库

====源码包====

在少数情况下,例如某软件没有以deb包的格式发布,或者需要定制适合自己的软件,可以通过编译源代码的方式安装它。

源码目录中通常有一个 configure 脚本,用来配置即将开始的编译过程。您可以执行它

sudo ./configure [–prefix=/usr/loca/xxx ……]

它会自动检测软件的编译环境和依赖关系,并且生成 Makefile 文件。

使用带参数的命令 ./configure –help ,或者阅读 INSTALL 文件,查看该脚本允许的参数。例如使用

–prefix=/usr/local/xxx 参数,将软件的安装目录设定为 /usr/local/xxx/ 。(如果一定要将软件安装在单独目录下,建议您安装在这里)

使用make命令,系统会根据Makefile文件中的设定,通过make工具调用编译器和所需的资源文件,将源代码编译成目标文件

再调用make install命令,make工具会自动连接目标文件和库文件,将最终生成的文件拷贝到Makefile文件设定的路径中,并完成更改文件的的属性,删除残留文件的活动

编译安装完成后,为了更方便使用它,需要给程序的可执行文件做一个符号链接

sudo ln -sf /usr/local/xxx/可执行文件 /usr/local/bin/可执行文件

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/143527.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python中fillna_python – 使用groupby的Pandas fillna

    python中fillna_python – 使用groupby的Pandas fillna我试图使用具有相似列值的行来估算值.例如,我有这个数据帧one|two|three111011nan11nan12nan122012nan13nan13nan我想使用列[‘one’]和[‘two’]的键,这是相似的,…

    2022年8月12日
    5
  • 学算法先学数据结构?是否是无稽之谈?[通俗易懂]

    学算法先学数据结构?是否是无稽之谈?[通俗易懂]头发没了

    2022年8月10日
    4
  • navicat premium mac 激活码【中文破解版】

    (navicat premium mac 激活码)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月22日
    94
  • 如何利用净推荐值(NPS)测量用户忠诚度?

    如何利用净推荐值(NPS)测量用户忠诚度?用户满意度是每个企业都非常关心的问题,满意度水平高的企业往往也有着良好的营收效益。相反,用户满意度较差的企业,也可以通过用户满意度的相关调研,深入了解自己的不足之处,哪些方面有待改进。如何通过简单的数据指标,科学有效地测量出用户满意度呢?今天我们将为大家介绍一种调研用户满意度的常用方法——净推荐值(NPS)NPS是什么NPS即净推荐值(NetPromoterScore),是一种计量客户将会向其他人推荐企业或服务可能性的指数。是目前最流行的顾客忠诚度分析指标。NPS净推荐值的数据收集方

    2022年4月29日
    45
  • 如何找到字符串中的最长回文子串?「建议收藏」

    如何找到字符串中的最长回文子串?「建议收藏」作者|channingbreeze责编|胡巍巍小史是一个应届生,虽然学的是电子专业,但是自己业余时间看了很多互联网与编程方面的书,一心想进BAT互联网公司。可是努…

    2022年6月14日
    36
  • CentOS7下使用YUM安装MySQL5.6

    CentOS7下使用YUM安装MySQL5.6(1)检查系统中是否已安装MySQL。rpm-qa|grepmysql返回空值的话,就说明没有安装MySQL。注意:在新版本的CentOS7中,默认的数据库已更新为了Mariadb,而非MySQL,所以执行yuminstallmysql命令只是更新Mariadb数据库,并不会安装MySQL。(2)查看已安装的Mariadb数据库版本…

    2022年6月12日
    31

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号