• 【水果派不吃灰】使用树莓派中经常看到的安装命令 wget、rpm、yum、dpkg、apt-get


    在这里插入图片描述

    • ❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️
    • ❤️ 本篇创建记录 2022-10-28 ❤️
    • ❤️ 本篇更新记录 2022-10-28 ❤️
    • 🎉 欢迎关注 🔎点赞 👍收藏 ⭐️留言 📝
    • 🙏 此博客均由博主单独编写,不存在任何商业团队运营,如发现错误,请留言轰炸哦!及时修正!感谢支持!
    • 🔥 Arduino ESP8266教程累计帮助过超过1W+同学入门学习硬件网络编程,入选过选修课程,刊登过无线电杂志🔥

    1. 前言

    在玩树莓派Linux系统中经常看到各种下载包命令:

    • wget
    • rpm
    • yum
    • dpkg
    • apt-get

    我们经常性会使用这几种工具来下载软件。

    • 所谓linux软件指的是Linux 发行厂商或社区将某些功能源代码在特定的硬件编译后,将安装所需的文件打包成一个特殊的格式文件
    • 这个适用于指定 Linux 发行版本的安装包,用户可以通过安装命令进行安装。
    • 在安装包中,会包含检测系统与软件依赖的脚本,在安装前进行环境检测,若符合安装条件,就会安装该软件。
    • 软件安装后还会将相关信息写入软件管理机制中,以便将来进行软件的升级或删除等。

    为了避免混淆,我还是要记录一下。

    2. Linux系统两种主流软件包

    从内容上来说,Linux的包可以分为两类,一类是源码包,即未经过编译的包,如后缀.tar,.gz,.zip,.rar;一类是二进制包,可以直接安装使用,而后缀为.rpm就是属于二进制包(通常而言,可以通过后缀判断是否为二进制或者源码包,真正区分是基于软件包里面的文件来判断)。

    软件管理器是 Linux 发行厂商或社区提供,可以在特定的 Linux 发行版本上,进行软件安装卸载升级验证等功能的软件管理程序。

    在 Linux 系统中主要有两种软件管理器,分别是 RedHatRPMDebianDPKG。而它们对应的软件包叫做rpm包和deb包。

    有的系统只支持使用rpm包安装,有的只支持deb包安装,混乱安装会导致系统问题。

    2.1 rpm包

    rpm包主要应用在RedHat系列包括 Fedora等发行版的Linux系统上( 如redhatcentosFedora

    RPM(早期叫做Red-Hat Package Manager,红帽软件包管理器,现在叫做 RPM Package Manager)是由 Red Hat 公司开发,Fedora、CentOS 等发行版本都使用该软件管理器。

    RPM 是一种预编译后的打包文件,其编译打包后的软件格式为 .rpm。

    RPM包的命名规范:name-version-release.os.arch.rpm,比如rabbitmq-server-3.9.5-1.el7.noarch.rpm。

    • name: 程序名称。
    • version:程序版本号。
    • release(发行号):用于标识RPM包本身的发行号,与源程序的release号无关。
    • os:即说明RPM包支持的操作系统版本。如el6(即rhel6)、centos6、el5、suse11。
    • arch:主机平台。如i686、x86_64、amd64、ppc(power-pc)、no
      arch(即不依赖平台)例:bash-4.3.2-5.el6.x86_64.rpm

    常用命令:

    安装:rpm -ivh 包名
    卸载:rpm -e 包名
    查询所有已经安装包:rpm -qa
    查询包的摘要信息:rpm -qi 包名
    查询包安装生成的文件清单:rpm -ql 包名
    查询某文件是由哪个rpm包安装生成的:rpm -qf /path/to/some_file
    查询包安装生成的配置文件:rpm -qc 包名
    查询包安装生成的帮助文档:rpm -qd 包名
    查询包相关的脚本:rpm -q --scripts 包名

    同时要注意一个点:

    PRM 用来安装.rpm文件时,不会解决模块的依赖关系

    2.2 deb包

    deb包主要应用于Debian系列包括现在比较流行的Ubuntu等发行版上(比如debian(包括我们的树莓派官方推荐系统)、ubuntu

    DPKG(Debian Package) 是由 Debian 社区开发,Ubuntu 等发现版本都是用该软件管理器。

    DPKG 使用 .deb 作为预编译安装文件格式,通过 DPKG 安装软件的方式类似如下:

    dpkg -i your-package.deb

    如果要卸载,可以通过:

    dpkg -P your-package

    查看某一个特定安装包,可以通过:

    dpkg -l | grep your-package

    同时要注意一个点:

    dpkg 用来安装.deb文件时,不会解决模块的依赖关系,且不会关心ubuntu的软件仓库内的软件,可以用于安装本地的deb文件。

    3. 解决软件依赖问题 —— yum、apt

    无论是 RPM 还是 DPKG,都会遇到软件依赖问题

    如,安装软件 A 时,需要先安装软件 B,而安装软件 B 又要先安装软件 C。

    因此,需要一种依赖管理机制。
    RPM 和 DPKG 都提供了在线升级机制,能够从指定的服务器自动下载安装包,并能自动处理依赖关系,且可以一次性自动安装软件及其依赖。

    在 RPM 中,使用 yum 命令进行软件安装、依赖管理、在线升级等。
    而在 DPKG 中,则使用 aptapt-get命令。

    基本上我们用这两个命令更多。

    3.1 yum

    YUM客户端基于RPM包进行管理,可以通过HTTP服务器下载、FTP服务器下载、本地软件池的等方式获得软件包,可以从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系。YUM在安装RPM时,会从服务器下载相应包,且缓存在本地。使用YUM进行RPM包的管理,非常简单方便。

    常用命令:

    获取yum仓库中所有的包信息
    命令:yum list all
    
    查看yum仓库中指定包名的软件包,可以使用通配符。
    命令:yum list all mysql*
    
    只显示已安装的包。
    命令:yum list installed
    
    只显示没有安装,但可安装的包。
    命令:yum list available
    
    查看所有可更新的包。
    命令:yum list updates
    
    显示不属于任何仓库的,额外的包。
    命令:yum list extras
    
    显示被废弃的包
    命令:yum list obsoletes
    
    新添加进yum仓库的包
    命令:yum list recent
    
    模糊匹配搜索
    命令:yum search 查询名
    
    查看当前能够使用的yum仓库
    命令:yun repo list
    
    显示所有仓库
    命令:yum repo list all
    
    显示禁用的仓库
    命令:yum repo list enabled
    
    显示启用的仓库
    命令:yum repo list disabled
    
    显示软件包的摘要信息
    命令:yum info 包名
    
    重新安装软包
    命令格式:yum [-y] reinstall 包12 … 包n
    
    升级软件包
    命令格式:yum update 包12 … 包n
    命令格式:yum update-to 包-版本号
    说明:update-to可以指定版本号。
    
    检测可升级的包
    命令:yum check-update
    
    卸载软件包
    命令格式:yum remove 包12 … 包n
    注意:若该包被依赖,则该卸载可能会导致一些问题。如A依赖B,若卸载B,则A也会被卸载。
    
    命令安装本地rpm包。
    命令格式:yum install rpm包路径
    命令格式:yum update rpm包路径
    或者使用localinstall,localupdate。在RHEL5/CentOS5下必须使用localinstall,localupdate。
    命令格式:yum localinstall rpm包路径
    命令格式:yum localupdate rpm包路径
    
    
    yum安装rpm默认会查询软件包来源合法性,但有时没提供密钥,无法安装。使用–nogpgcheck选项,可以避免yum作校验。
    命令:yum localinstall --nogpgcheck
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67

    3.2 apt 和 apt-get

    apt-get 是ubuntu下的一个软件安装方式,它是基于Debian Linux系统,包管理工具,类似于yum。会解决和安装模块的依赖问题,并会咨询软件仓库, 但不会安装本地的deb文件, apt是建立在dpkg之上的软件管理工具。

    常用命令:

    • apt-get install package //在线安装软件包
    • apt-get autoremove //删除不再需要的软件包
    • apt-get remove package --purge //删除软件包及配置文件
    • apt-get update // 更新源文件,并不会做任何安装升级操作
    • apt-get upgrade // 升级所有已安装的包
    • apt-get -f install // 修复安装

    4. wget 网络文件下载工具

    wget是Linux提供的在线下载工具,可以理解为Windows中的迅雷,一般是用作源码包的下载,完成后还需要用户编译安装。只会下载文件,不做其他操作。

    5. 总结

    主要是对经常用到的一些下载安装命令做一个记录。

  • 相关阅读:
    js三元表达式复杂条件判断
    Mysql按照中文首字母排序
    AI大模型低成本快速定制法宝:RAG和向量数据库
    postgres 自定义内置函数
    FFmpeg入门详解之55:把控FFmpeg骨架:“八大金刚”核心开发库
    羽毛球馆的绿色之选——气膜体育馆
    CPU -- 中央处理器
    Linux综合技巧
    C专家编程 第7章 对内存的思考 7.1 Intel 80x86系列
    Simulink与Arduino烧录配置
  • 原文地址:https://blog.csdn.net/weixin_44614230/article/details/127577130