六、Linux 软件包管理

news2025/1/11 23:37:51

一、Linux 软件包管理简介

1、软件包分类

  • 源码包 - 脚本安装
  • 二进制包 -(RPM 包, 系统默认包)

2、源码包优缺点

源码包优点:

  • 开源,可以看到,并且可以修改源代码。
  • 可以自由选择所需要的工能。
  • 软件是编译安装,更加适合自己的系统,更稳定,更高效
  • 卸载方便。

源码包缺点:

  • 安装步骤比较多,容易出现错误。
  • 相对于二进制包,源码包编译时间较长。
  • 因为是编译安装, 一旦出现错误, 新手很难解决。

3、二进制包的优缺点

二进制包优点:

  • 包管理系统简单,只通过几个命令就可以实现包的安装,更新,升级,卸载。
  • 安装速度比源码包快很多。

二进制包缺点:

  • 代码是经过编译过的, 所以无法看到源代码。
  • 工能选择不如源代码包灵活。
  • 依赖性。(例如:a 包 依赖于 b 包, b 包依赖于 c 包, 那么安装顺序必须是 c =》b =》a)

二、RPM 命令管理

1、RPM 包命名规则

例:nginx-1.10.3-1.el6.ngx.x86_64.rpm

  • nginx:软件包名
  • 1.10.3:软件版本
  • 1:软件发布的次数
  • el6.ngx:适合的linux平台
  • x86_64:适合的硬件平台
  • rpm:rpm包后缀名

2、包全名和包名

  • 包全名:操作的包是没有安装过的软件包时,使用包全名,并且需要注意路径
  • 包名:操作已经安装的软件包时,使用包名。(是搜索“/var/lib/rpm”中的数据库)

3、RPM 安装

命令:rpm -ivh 包全名

命令作用
-i(install)安装
-v(verbose)显示详细信息
-h(hash)显示进度
-e(erase)卸载软件包
-U(update)更新软件包

例如: 

# 1.直接安装软件包
[root@TR ~]# rpm -ivh packge.rpm 

# 2.列出所有安装过的包:
[root@TR ~]# rpm -qa

# 3.卸载rpm包
[root@TR ~]# rpm -e package.rpm 

# 4.升级软件包
[root@TR ~]# rpm -U file.rpm

# 5.查询rpm包中的文件安装的位置
[root@TR ~]# rpm -qa ls

3、yum命令管理

yum并不是源码包,yum是基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更新与管理RPM软件包,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

3.1、网络yum 源

以Centos为例, yum源的路径默认是 “/etc/yum.repos.d/CentOS-Base.repo”,

名称作用
name容器说明(可以自己随便写)
baseurlyum源服务器的地址。默认是CentOS官方的yum源服务器,是可以使用的,不过由于服务器在国外,网速比较慢。可以换成国内的,比如阿里云的yum源地址。
gpgcheck如果是1是指RPM的数字证书生效,如果是0则不生效
enabled此容器是否生效,如果不写或写成 enable=1 都是生效,写成 enable=0 就是不生效
gpgkey数字证书的公钥文件保存位置。不用修改

 3.2、yum 常用命令

yum list: 查询所有软件包列表。

yum search [关键字]:搜索服务器上所有与关键字相关的包

③  yum -y install [包名] : 安装 yum 包 (-y:自动回答yes )

④  yum -y update [包名] : 升级 yum 包 (-y:自动回答yes )

⑤  yum -y remove [包名] : 卸载 yum 包 (-y:自动回答yes )

三、源码包、RPM包比较

1、源码包和RPM包的区别

  • 源码包是开源的, 安装更自由。
  • 源码包比RPM包安装的更慢,更容易报错。
  • 安装位置不同,RPM 包会安装到系统指定的位置, 而源码包则安装在用户指定的位置(一般安装在 “/usr/local/软件名/)。

2、RPM包的默认安装路径

RPM包默认安装路径(绝大多数)
/etc/配置文件安装目录
/usr/bin可执行的命令安装目录
/usr/lib程序所使用的函数库保存位置
/usr/share/doc/基本的软件使用手册保存位置
/usr/share/man/帮助文件保存位置

3、RPM包启动方式

使用RPM包安装方式, 启动有两种方式

# 第一种, 使用绝对路径
[root@TR ~]# cd /etc/rc.d/init.d/包名称 start

# 第二种,
[root@TR ~]# service 包名称 start 

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

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

相关文章

初识 Linux Shell

学习的第一步,就是要找到 Linux 终端的所在位置。目前较常见的图形化终端有 Konsole、Gnome terminal、xterm 等几种。一般安装后在各个发行版的菜单中搜索即可找到。Gnome terminal 和 Konsole 基本是当前各大流行 Linux 发行版预装最多的终端应用,功能…

分时电价环境下用户负荷需求响应分析方法(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

升级JDK11后,执行java -version还是1.8

电脑同时安装两个JDK,如何来回切换1. JDK INSTALL1.1 Download1.2 配置环境变量2. 配置JDK11无效2.1 JDK切换3.Awakening1. JDK INSTALL 1.1 Download 官网下载 JDK Website: https://www.oracle.com/java/technologies/downloads/. oracle账密 zhaonan0212163.com Tomcat123…

论文翻译:Text-based Image Editing for Food Images with CLIP

使用 CLIP 对食物图像进行基于文本的图像编辑 图1:通过文本对食品图像进行处理的结果示例。最左边一栏显示的是原始输入图像。"Chahan"(日语中的炒饭)和 "蒸饭"。左起第二至第六列显示了VQGAN-CLIP所处理的图像。每个操作…

小程序项目学习--第六章:项目实战二、推荐歌曲-歌单展示-巅峰榜-歌单详情-页面优化

第六章:推荐歌曲-歌单展示-巅峰榜-歌单详情-页面优化 01_(掌握)音乐页面-推荐歌曲的数据获取和展示 推荐歌曲的数据获取的实现步骤 0.封装对应请求接口方法 export function getPlaylistDetail(id) {return hyRequest.get({url: "/playlist/detail",d…

Python中append浅拷贝机制

关于深浅拷贝,最直观的理解就是:深拷贝:拷贝的程度深,自己新开辟了一块内存,将被拷贝内容全部拷贝过来了;浅拷贝:拷贝的程度浅,只拷贝原数据的首地址,然后通过原数据的首…

分享158个ASP源码,总有一款适合您

ASP源码 分享158个ASP源码,总有一款适合您 下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下..., 158个ASP源码下载链接:https://pan.baidu.com/s/1DCXBAXJUNMZZpbyxVF5-bg?pwdbwuv 提取码&#x…

react native android环境搭建,使用vscode和夜神模拟器进行开发(适用于0.68+版本)

前言 react native官网教程 使用的是android studio搭建环境,本篇文章使用vscode和夜神模拟器进行搭建环境 版本说明: 0.68.0 及以上版本直接往下看0.67.4 及以下版本请查看另一篇文章:react native android环境搭建,使用vscod…

FineReport学习-【01 帆软报表入门】

界面功能 官方管理面板详解见这里 报表简介 报表类型 报表设计流程 新建数据连接 查看数据库连接,新建一个本地mysql的数据库 新建报表 新建数据集 实例操作 实例1 分组报表 新建文件夹,用来保存报表 将刚刚查询的数据表放入报表中,并插入表…

k8s核心资源ingress

一、简介ingress是分装到service层上层的一个模块,对外提供统一访问入口,ingress底层是nginx实现的,并且分装了域名访问。外界请求首先打到ingress层,ingress再转发给service层,service再负载均衡到其中的一个pod上。i…

关于符合车规的高精度定位产品

文章目录一、什么是P-Box二、ST的P-Box三、导远的P-Box四、华测的P-Box参考来源对于导航产品来说,下一个大的市场可能就是智能驾驶/辅助驾驶,研发符合车规的导航产品也逐渐成了行业趋势。组合导航产品的主流方案是外置的P-Box方案,只需要单GN…

excel定位选取:再谈快捷键Ctrl+G的妙用

一、仅复制可见单元格在日常工作中我们经常会涉及将隐藏或分类汇总后的数据,粘到一个新表。这个时候如果我们直接复制,粘贴会发生什么呢?这是一个分类汇总后的数据,自动生成了分级显示:第1级,总计&#xff…

uniapp提交应用市场打包问题和安装应用弹出隐私政策协议问题(Android)

uni-app 安卓App提交到应用市场踩坑记录,隐私合规检测,参考链接:https://juejin.cn/post/7163595800235212830 打包问题,同时支持32位和64位;https://uniapp.dcloud.net.cn/tutorial/app-android-abifilters.html# 重…

【Android Studio】【Flutter】Android Studio下Flutter环境搭建记录

目录:1、要学flutter,必须先学Dart语言(类似C语言)2、下载Flutter SDK(软件开发工具包)3、配置国内镜像4、Android Studio新建Flutter项目5、问题解决:(运行flutter doctor命令检查问…

《流浪地球2》的冷思考:如何消除信息孤岛

硬核科幻影片《流浪地球2》成了热议焦点,网友们一方面点赞视觉特效的精益求精,另一方面为引爆月球的故事情节感动,片中一句“50岁以上的出列”让无数观众飙泪。在科技已经进步到地球能在宇宙中“流浪”的未来,仍需牺牲众多“老”宇…

ArkTS初学(一)

想必大家都听说过华为的方舟框架,没错,这就是所说的ArkTS。在HarmonyOS2的时候大家会使用java开发HarmonyOS应用,使用的是Layout来进行布局(用的还是xml文件),之后又出现了js的Component(记不清名字了)的一个功能方便了开发。我们现在就来学习HarmonyOS3…

【数据结构】ArrayList的具体使用(杨辉三角、扑克牌游戏)

目录 1、了解集合的框架 2、了解ArrayList类 2.1、认识ArrayList类当中的属性 2.1、认识ArrayList类库当中的方法 2.1.1、了解构造方法 2.2、ArrayList类当中的Add(新增元素)方法 2.3、了解ensureCapacityInternal(判断是否需要扩容&…

【Rust】18. Rust 的面向对象特性

18.1 面向对象语言的特征 18.1.1 对象:数据 行为 18.1.2 封装隐藏了实现细节 在 Rust 中,在代码中不同的部分考虑使用 pub 可以封装其实现细节 18.1.3 继承,作为类型系统与代码共享 在 Rust 中,不存在继承的机制,而…

【C++11】初始化列表、decltype操作符、nullptr

目录 一、初始化列表 1.1 花括号初始化 1.2 initializer_list 二、decltype 三、nullptr 一、初始化列表 1.1 花括号初始化 在C98中,标准允许使用花括号{ }对数组或结构体元素进行统一的列表初始值设定。 而在C11推出后,使用初始化列表时&#x…

java的方法使用

1.方法概述1.1什么是方法方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集注意:方法必须先创建才可以使用,该过程称为方法定义方法创建后并不是直接运行的,需要手动使用后才执行,该过程…