Linux 基础(九)软件包管理

软件包管理

    • 概念
    • 软件包管理工具
      • Red Hat 系
        • RPM
          • rpm安装
          • rpm卸载
        • YUM(推荐)
          • 源仓库管理
            • 常见国内 yum 源
            • 更换源(非必须,除非下载速度确实过慢)
          • YUM管理软件
      • Debian 系
        • 源仓库管理
          • 常见国内 apt 源
          • 更换源(非必须,除非下载速度确实过慢)
        • 包管理

概念

各个系统都有自己的软件包管理工具,方便用户管理,使用各种软件;
只是大部分Windows用户可能并没有太关注,其实也是有的。

软件包管理工具

不同的系统包管理工具也不同;大体如下

  • Linux:
    Debian/Ubuntu:APT (Advanced Package Tool)
    CentOS/RHEL/Fedora:RPM(RedHat Package Manager)
    Arch Linux:Pacman (Package Manager)
    openSUSE:Zypper
    Slackware:pkgtools

  • macOS:
    Homebrew
    MacPorts
    Fink

  • Windows:
    Chocolatey
    Scoop
    NuGet

  • FreeBSD:
    pkg (pkgng)

这里重点看看Linux下的包管理工具,发行版主要看Red Hat 和 Debian 系

Red Hat 系

RPM

rpm包以 .rpm为后缀;包名一般包含了软件名版本适用的处理器架构

常用参数

  • q 查询
  • a 所有
  • i 详细信息
rpm安装

rpm -ivh rpm完整包名

安装时,忽略运行所需的依赖的检查 –nodeps

rpm卸载

rpm -e 软件名(无需完整包名):检查依赖,当前软件被依赖时,则无法卸载提示报错。

rpm -e –nodeps 软件名(无需完整包名);不检查依赖,强制卸载,可能导致依赖它的软件无法正常运行

YUM(推荐)

rpm包管理工具存在缺陷,需手动维护软件之间的依赖关系,而且先下载rpm包。
基于以上原因,基于RPM,更智能化的软件管理工具YUM就诞生了。
YUM底层还是使用的RPM,只是对其做了一些优化,使其更易于使用。

YUM 在安装软件时,会自动下载安装所需依赖软件,然后安装本软件。
有点类似Maven,所以YUM也有仓库一说。

源仓库管理
常见国内 yum 源

阿里云开源镜像站:https://mirrors.aliyun.com/
网易开源镜像站:https://mirrors.163.com/
中科大开源镜像站:https://mirrors.ustc.edu.cn/
清华开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/

更换源(非必须,除非下载速度确实过慢)

仓库配置位于 /etc/yum.repos.d 目录

  1. 先将系统默认的仓库源备份
cp CentOS-Base.repo CentOS-Base.repo.bak
  1. 下载镜像仓库配置
# 阿里云镜像仓库
wget http://mirrors.aliyun.com/repo/Centos-7.repo
  1. 将上面下载的镜像源改名为系统默认加载的 CentOS-Base.repo 名字
  2. 清理之前的yum缓存 && 重新构建缓存
yum clean all && yum makecache

完成。
当然,个别软件可能在中央仓库中不存在,则需要我们将对应的仓库文件拉取到这个目录下;当中央仓库找不到时,会自动去其他.repo 结尾的仓库里面找。

YUM管理软件

基本语法
yum [opts] command

最常用的可选参数 是 -y:对安装过程中的询问以yes处理

yum 行为

  • install :安装
yum install 软件名
  • update:更新
# 更新所有可更新软件
yum update# 更新指定软件
yum update 软件名
  • check-update:检查更新
# 检查所有更新
yum check-update# 检查指定软件更新
yum check-update 软件名
  • remove:卸载
yum remove 软件名
  • list:已安装列表
# 查看所有已安装软件及(可安装更新)
yum list# 查看指定软件及(可安装更新)
yum list 软件名
  • clean:清除yum无效缓存
# 清除无效缓存 && 重新构建缓存;一般更新源后需要执行
yum clean && yum mackcache
  • deplist:显示软件包依赖关系
yum deplist 软件名

Debian 系

Debian系发行版使用 apt 管理软件包

源仓库管理

常见国内 apt 源
  1. 华为云
    http://repo.huaweicloud.com/ubuntu/
  2. 阿里云
    http://mirrors.aliyun.com/ubuntu/
  3. 清华大学
    https://mirrors.tuna.tsinghua.edu.cn/ubuntu/
  4. 中科大
    https://mirrors.ustc.edu.cn/ubuntu/
  5. 163
    http://mirrors.163.com/ubuntu/
更换源(非必须,除非下载速度确实过慢)
  1. 备份默认配置
cp /etc/apt/sources.list /etc/apt/sources.list.bak
  1. 修改配置文件
sed -i -r "s#^(deb )(http://.*archive.ubuntu.com|http://.*security.ubuntu.com)#\1http://repo.huaweicloud.com#g" /etc/apt/sources.list
  1. 更新本地源
apt-get update

包管理

基本语法
apt [opts] command

可选项
最常用的是 -y

命令

  • install :安装/更新(如果已安装且存在可用更新时)
# 安装/更新 软件
apt install 软件名# 仅更新,如果没有安装过,则不执行操作
apt install --only-upgrade 软件名
  • update:仅仅更新软件源列表,不更新任何软件
# 更新软件源列表
apt update
  • upgrade:升级所有已安装的软件包
apt upgrade
  • list --upgradable:检查更新
# 检查所有更新
apt list --upgradable
  • remove:卸载
apt remove 软件名
  • list:已安装列表
# 查看所有已安装软件及(可安装更新)
apt list# 查看指定软件及(可安装更新)
apt  list 软件名

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

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

相关文章

postman入门基础 —— 接口测试流程

一、编写接口测试计划 接口测试计划和功能测试计划目标一致,都是为了确认需求、确定测试环境、确定测试方法,为设计测试用例做准备,初步制定接口测试进度方案。一般来说,接口测试计划包括概述、测试资源、测试功能、测试重点、测试…

Flutter 报错 Could not create task ‘xxx‘.this and base files have different roots

遇到此问题也是先去百度了,有的说改了Gradle版本、gradle-wrapper.properties版本和ext.kotlin_version版本之后解决的,我没尝试,我用蹩脚的英语大致读了一下就不是这样说的,况且我用有道翻译了也不是这个意思啊,我不知…

抖音小程序实现less语言编译样式

1.在抖音开发工具中搜索扩展less 2. 然后点击小齿轮选择扩展设置 3. 然后在扩展设置中选择在settings.json中编辑# 4. 在settings.json中加入以下这段代码即可 // Easy LESS配置"less.compile": {"compress": false,//是否压缩"sourceMap": fal…

前端性能优化:缓存

在快节奏的互联网时代,网站的加载速度直接影响用户体验和业务成功。而缓存作为性能优化的重要手段,可以大幅提升网页加载速度,减少服务器负担。本文将为你详解缓存的使用,帮助你优化前端性能,为用户呈现更快速、流畅的…

EndNote 21 for Mac(文献管理软件) v21.0.1中文版

EndNoter mac是一款参考文献管理软件,旨在帮助学术研究者、学生和专业人士有效地管理和引用参考文献。该软件提供了许多功能,使用户可以轻松地组织、搜索和引用各种类型的文献。 EndNoter mac软件特点和功能 1. 参考文献管理:EndNoter允许用…

提高 After Effects 效率的 40 个最佳快捷键

After Effects 是运动图形和视觉效果的强大工具,但它也可能让人不知所措。拥有如此多的特性和功能,很容易让人迷失在软件中。但是,有一种方法可以简化您的工作流程并提高工作效率 - 使用键盘快捷键。 After Effects素材文件巨大、占用电脑内…

探索自动化网页交互的魔力:学习 Selenium 之旅【超详细】

"在当今数字化的世界中,网页自动化已经成为了不可或缺的技能。想象一下,您可以通过编写代码,让浏览器自动执行各种操作,从点击按钮到填写表单,从网页抓取数据到进行自动化测试。学习 Selenium,这一功能…

Claude 2、ChatGPT、Google Bard优劣势比较

​Claude 2: 优势:Claude 2能够一次性处理多达10万个tokens(约7.5万个单词)。 tokens数量反映了模型可以处理的文本长度和上下文数量。tokens越多,模型理解语义的能力就越强)。它在法律、数学和编码等多个…

一百五十二、Kettle——Kettle9.3.0本地连接Hive3.1.2(踩坑,亲测有效)

一、目的 由于先前使用的kettle8.2版本在Linux上安装后&#xff0c;创建共享资源库点击connect时页面为空&#xff0c;后来采用如下方法&#xff0c;在/opt/install/data-integration/ui/menubar.xul文件里添加如下代码 <menuitem id"file-openZiyuanku" label&…

layui的基本使用-日期控件的业务场景使用入门实战案例一

效果镇楼&#xff1b; 1 前端UI层面&#xff1b; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport&…

TypeScript教程(五)条件语句,循环,函数

一、条件语句 条件语句基于不同的条件来执行不同的动作 1.if语句&#xff1a;只有当指定条件为true时&#xff0c;使用该语句来执行代码 2.if...else语句&#xff1a;当条件为true时执行代码&#xff0c;当条件为else时执行其他代码 3.if...else if...else语句&#xff1a;…

Shell函数调用

定义一个函数&#xff0c;计算所有参数的和&#xff1a; #!/bin/bashfunction getsum(){local sum0for n in $do((sumn))donereturn $sum }getsum 10 20 55 15 #调用函数并传递参数 echo $?运行结果&#xff1a; 100

spss--数据分析Log-Binonial模型

在横断面研究中&#xff0c;Log-binomial 模型能够获得研究因素与结局变量的关联强度指标患病率比&#xff08;PR&#xff09;&#xff0c;是一种研究二分类观察结果与多因素之间关系的重要方法&#xff0c;在医学研究等领域中得到了广泛的应用。 采用log-binomial 模型可直接估…

elementUi表单恢复至初始状态并不触发表单验证

elementUi表单恢复至初始状态并不触发表单验证 1.场景再现2.解决方法 1.场景再现 左侧是树形列表&#xff0c;右侧是显示节点的详情&#xff0c;点击按钮应该就是新增一个规则的意思&#xff0c;表单内容是没有改变的&#xff0c;所以就把需要把表单恢复至初始状态并不触发表单…

大语言模型(LLM)与 Jupyter 连接起来了

现在&#xff0c;大语言模型&#xff08;LLM&#xff09;与 Jupyter 连接起来了&#xff01; 这主要归功于一个名叫 Jupyter AI 的项目&#xff0c;它是官方支持的 Project Jupyter 子项目。目前该项目已经完全开源&#xff0c;其连接的模型主要来自 AI21、Anthropic、AWS、Co…

MSP432自主开发笔记6:定时器多通道捕获多条编码器线脉冲数

所用开发板&#xff1a;MSP432P401R 今日在此更新一下编码器测速的定时器捕获写法&#xff0c;之前学习时竟然忘记更新了~~ 本文讲如何用定时器的通道来 捕获编码器的脉冲信号数量&#xff0c;不提供速度路程的计算方式&#xff0c; 文章提供源码&#xff0c;测试工程下载&a…

积木报表集成前端加载js文件404

项目场景&#xff1a; 在集成积木报表和shiro时候&#xff1a; 集成积木报表&#xff0c;shrio&#xff0c;shrio是定义在另一个模块下的&#xff0c;供另一个启动类使用&#xff0c;积木报表集成shrio的时候&#xff0c;需要依赖存放shrio的核心包&#xff0c;该核心包除了存…

android 如何分析应用的内存(十七)——使用MAT查看Android堆

android 如何分析应用的内存&#xff08;十七&#xff09;——使用MAT查看Android堆 前一篇文章&#xff0c;介绍了使用Android profiler中的memory profiler来查看Android的堆情况。 如Android 堆中有哪些对象&#xff0c;这些对象的引用情况是什么样子的。 可是我们依然面临…

【ArcGIS】经纬度数据转化成平面坐标数据

将点位置导入Gis中&#xff0c;如下&#xff08;经纬度表征位置&#xff09;&#xff1a; 如何利用Gis将其转化为平面坐标呢&#xff1f; Step1 坐标变换 坐标变换&#xff0c;打开ArcToolbox&#xff0c;找到“数据管理工具”->“投影和变换”->“要素”->“投影”…

MySQL—缓存

目录标题 为什么要有Buffer Poolbuffer pool有多大buffer pool缓存什么 如何管理Buffer Pool如何管理空闲页如何管理脏页如何提高缓存命中率预读失效buffer pool污染 脏页什么时候会被刷入到磁盘 为什么要有Buffer Pool 虽然说MySQL的数据是存储在磁盘中&#xff0c;但是也不能…