@


rpm、yum、apt。三剑客。

1:软件管理

一般来说,Linux 系统基本上可分为两大类:

  • RedHat 系列:Redhat、Centos、Fedora 等
  • Debian 系列:Debian、Ubuntu 等

而两个系列自带的软件管理工具、包安装工具不同。

rpm yum dpkg apt
所属系列 RedHat 系 RedHat 系 Debian 系 Debian 系
描述 包安装工具 依赖管理工具 包安装工具 依赖管理工具

1.1:rpm

rpm(redhat package manager)用于互联网下载包的打包及安装,用来管理各项套件的程序。

它操作以 .RPM 为扩展名的文件。类似 Windows 的 setup.exe。

rpm 原本由 RedHat 使用。由于它遵循 GPL 规则,且方便,功能强大,因而广受欢迎,逐渐受到其他发行版的采用,可以算是公认的行业标准。

rpm 包基本格式

例如 Firefox 的 rpm 包名:firefox-60.2.2-1.el7.centos.x86_64.rpm

  • 名称:firefox
  • 版本号:60.2.2-1
  • 适用操作系统:el7.centos.x86_64(表示 centos7.x 的 64 位系统。)

i686、i386 表示 32 位系统,noarch 则表示通用。

1.1.1:查询

基本语法

rpm 选项

常用选项

参数 说明
-q 软件名 查询软件是否安装。
-qa 查询所有已安装的软件列表。常搭配 grep 使用。
-qi 软件名 查询软件详细信息。
-ql 软件名 查询软件所有相关文件。
-qf 文件绝对路径 查询文件所属的软件。

示例:

# 查看是否安装了 firefox
方式一、 rpm -qa | grep firefox
方式二、 rpm -q firefox # 查询 firefox 信息
rpm -qi firefox # 查询 /etc/passwd 文件所属的软件包
rpm -qf /etc/passwd

1.1.2:卸载

基本语法

rpm 选项 软件名

常用选项

参数 说明
-e 卸载指定软件。
-e --nodeps 强制卸载删除。(不推荐)

1.1.3:安装

基本语法

rpm 选项 rpm包名

常用选项

参数 说明
-i 安装。
-v 安装时提供更多信息。
-h 安装时显示进度。

安装软件时常用 -ivh。

示例:

# 卸载 firefox
rpm -e firefox # 安装 firefox(需在当前文件夹准备相应 rpm 包)
rpm -ivh firefox-60.2.2-1.el7.centos.x86_64.rpm

1.2:yum

yum(Yellow dog Updater, Modified)是一个 Shell 前端软件包管理器基于 rpm,能够从指定的服务器自动下载 RPM 包并安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。

yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁。

基本语法

yum 选项

常用选项

参数 说明
list 列出所有可安裝的软件清单。(常搭配 grep 使用)
search 软件名 查找相关可安裝的软件包信息。
check-update 列出所有可更新的软件。
update [软件名] 更新软件。如果不指定软件则是更新所有。
install 软件名 安装软件。
remove 软件名 卸载软件。

1.3:dpkg

dpkg(Debian package),dpkg是Debian Linux系统用来安装、创建和管理软件包的实用工具。

它操作以 .DEB 为扩展名的文件。

dpkg 不常用。可由 apt 命令替代。这里只简单介绍

基本语法

dpkg 选项

常用选项

参数 说明
-l 列出已经安装的软件。
-i 软件包名 安装软件。
-r 软件包名 卸载软件(保留配置)。
-P 软件包名 卸载软件(不保留配置)。

1.4:apt

apt(Advanced Packaging Tool)是一款安装包管理工具。可以管理 deb 软件包,进行软件的安装、删除、清理等。

apt-get 可能是最流行的APT交互工具,但是 apt 作为它的替代品正慢慢被推广。

类似于 Windows 中的软件管理工具。结合了 apt-get 和 apt-cache 工具中最常用的命令以及某些选项。

大多数 apt 命令必须以具有 sudo 特权的用户身份运行。也就是说如果不是管理员,每个命令前要加上 sudo。

1.4.1:相关配置

当使用 apt 从网络下载软件包时,从 /etc/apt/ 目录下的 sources.list 文件中寻找服务器地址。默认从美国服务器下载。

如果下载速度慢,可以更换为国内镜像下载。

以清华大学镜像网站为例(https://mirrors.tuna.tsinghua.edu.cn/)具体步骤如下:

  • 安全起见,备份默认源地址

cp /etc/apt/sources.list /etc/apt/sources.list.bak

  • 清空 sources.list 文件

echo '' > sources.list

  • 复制镜像网站地址,拷贝到 sources.list 文件
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse # deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse deb http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
# deb-src http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse # 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
  • 更新源服务器列表

apt-get update

1.4.2:常用指令

基本语法

apt 选项

常用选项

参数 说明
show 软件名 显示软件具体信息。
search 软件名 查找某个软件包。
install 软件名 安装指定的软件。
remove 软件名 移除指定的软件。
list --installed 列出所有已安装的软件。
update 软件名 更新指定的软件。

1.4.3:相关指令

apt-get 可能是最流行的APT交互工具,但是 apt 作为它的替代品正慢慢被推广。

更新源

apt-get update

安装软件

apt-get install 软件名

卸载软件

apt-get remove 软件名

重新安装软件

apt-get install 软件名 --reinstall

安装相关的编译环境

apt-get build-dep 软件名

更新已安装的软件

apt-get upgrade

下载该软件包源代码

apt-get source 软件名

搜索软件包

apt-cache search 软件名

获取软件相关信息

apt-cache show 软件名


我未成名卿未嫁,可能俱是不如人。

——《赠妓云英》(唐)罗隐

《Linux基础》07. 软件管理的更多相关文章

  1. 大数据攻城狮之Linux基础------rpm软件管理

    rpm的英文名称为: Redhat package manager 常用的命令加组合: i 安装 rpm -ivh 软件包名 当然我们的rpm也可以支持多包同时操作 rpm -ivh 软件包1 软件包 ...

  2. Linux基础三(软件安装管理)

    目录: 一.Linux 中软件包的分类 1.源码包 2.二进制包 3.源码包 4.软件安装的选择 二.软件安装之 RPM 1.背景知识 2.准备知识 3.安装升级与卸载 4.查询校验与提取 三.软件安 ...

  3. Linux入门-9 软件管理基础(CentOS)

    0. 源代码形式 1. RPM软件包管理 RPM RPM查询 RPM验证 2. YUM软件管理 YUM基本命令 YUM查询 创建YUM仓库 0. 源代码形式 绝大多数开源软件都是直接以源代码形式发布 ...

  4. 【Linux】apt软件管理和远程登录

    镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 1. apt 介绍 apt 是 Advanced Packaging Tool 的简称,是一款安装包管理工具.在 Ubuntu 下,可以使用 ap ...

  5. Linux进阶之软件管理

    本节内容 一.rpm:管理linux软件程序的 特点:安装方便 不能解决依赖关系 1.安装软件: -i: -v: -h: rpm -ivh 包名 2.卸载软件 -e: 清楚 rpm -e 程序名 3. ...

  6. Linux系统管理_软件管理

    RPM命令 #管理.rpm文件 #RPM包软件命名规则:name-version-releases.arch.rpm rpm -ivh pkgname #安装软件包 rpm -ivh --test p ...

  7. Linux基础整理-软件的安装与卸载

    redhat/centos/fedora/suse系列: 摘自网址:http://www.runoob.com/linux/linux-yum.html yum( Yellow dog Updater ...

  8. Linux基础:软件安装(rpm,yum,源代码)

    Software Installation on Linux Linux安装分为rpm包(可通过yum或者是rpm命令安装)和源码包(源代码或者是编译过的二进制码)两种. Linux是开源系统,很多应 ...

  9. Linux基础四(服务管理)

    目录 一.简介与分类 1.系统的默认运行级别 2.服务的分类 3.服务与端口 二.服务管理 1.RPM包服务管理 2.源码包服务管理 三.服务管理总结 一.简介与分类 1. 系统的运行级别 1.1 默 ...

  10. Linux下的软件管理

    一.软件包管理简介     1源码包(脚本安装)        ①.特点: a.开源 ,可以修改                        b.自由选择所需功能                   ...

随机推荐

  1. linux DNS域名解析

    目录 一.DNS概念 二.域名格式类型 三.查询类型 四.解析类型 五.配置DNS 六.dns解析实验 1.配置正向解析 2.反向解析 3.主从解析 一.DNS概念 概念:域名和IP地址的相互映射的分 ...

  2. 1 msql的安装和配置

    1.检测系统是否已经安装过mysql或其依赖,若已装过要先将其删除,否则第4步使用yum安装时会报错: yum list installed | grep mysql mysql-libs.i686 ...

  3. GPT虚拟直播Demo系列(二)|无人直播间实现虚拟人回复粉丝

    摘要 虚拟人和数字人是人工智能技术在现实生活中的具体应用,它们可以为人们的生活和工作带来便利和创新.在直播间场景里,虚拟人和数字人可用于直播主播.智能客服.营销推广等.接入GPT的虚拟人像是加了超强b ...

  4. find提权

    更新中.............. find 常用参数 语法:find [path-] [expression] path为查找路径,.为当前路径,/为根目录 expression即为参数 -name ...

  5. 5个 Istio 访问外部服务流量控制最常用的例子,你知道几个?

    5 个 Istio 访问外部服务的流量控制常用例子,强烈建议收藏起来,以备不时之需. 环境准备 部署 sleep 服务,作为发送请求的测试源: kubectl apply -f samples/sle ...

  6. 2023 华北分区赛 normal_snake

    国赛终于解出Java题了,顺利拿下一血,思路之前也学过.继续加油 normal_snake 题目解读 @RequestMapping({"/read"}) public Strin ...

  7. 获取邮箱(QQ、126、163)的客户端授权码

    获取QQ邮箱的客户端授权码 1.首先登录QQ邮箱(https://mail.qq.com),然后,点击"设置"按钮. 2.点击"账户"按钮,进入"账户 ...

  8. PostgreSQL 性能优化: EXPLAIN 使用教程

    使用 EXPLAIN EXPLAIN基础 代价估计 启动开销 总开销 计划结点输出行数 计划结点输出行宽 执行统计 实际启动开销 实际总开销 实际输出行数 实际执行次数 I/O统计 共享块命中数 共享 ...

  9. AR增强现实 之Metaio For Unity 开发 之HelloWorld

    开发工具 unity 4.6     MetaioSDK 6.1       代码编辑器 VS 2013 上图不会配置的请自行百度 1.创建项目并且导入Metaio SDk 开发包 2.导入后目录图 ...

  10. Description Resource Path Location

    解决办法 在项目上右键属性Properties,属性列表中选择Project Facets,在打开的Project Facets页面中的Java下拉列表中,选择相应版本. 有可能是java1.6 改成 ...