@


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. Python-3.10手动配置环境变量

  2. 大三ACM第一次开会

    现在是2020.9.12,单说时间的话可能感知不太强,那么换个时间, 现在是大三上.按照设想,我应该已经退役. 会上,老李的语气不再激昂,满含着无奈与沧桑.面对围在桌前的大三们,终究还是提出了那个问题 ...

  3. IntelliJ IDEA 最新激活码:2023、2022及以下版本通用(亲测有效)

    分享一下 IntelliJ IDEA 2023.1 最新激活注册码,破解教程如下,可免费永久激活,亲测有效,下面是详细文档哦~ 申明:本教程 IntelliJ IDEA 破解补丁.激活码均收集于网络, ...

  4. WC2021及学长分享题目

    部分题目见洛谷题单 动态更新. 标 * 为想做的题. hdhd: CF1214G Feeling Good CF1305F Kuroni and the Punishment AGC016F Game ...

  5. 微生物组分析软件 QIIME 2 安装小记

    由于微信不允许外部链接,你需要点击文章尾部左下角的 "阅读原文",才能访问文中链接. QIIME 2 是一个功能强大,可扩展,分散式的(decentralized)微生物组分析软件 ...

  6. vim 之中 U 命令的浅析

    以下文章来源于CSDN,作者黑翼天使56,本文章经原作者同意后授权转载. 今天看 vim帮助文档的 user-manual 的第二章,发现了还有U(大写)这个命令,于是反复实验,略微搞懂了一点它的用处 ...

  7. 曲线艺术编程 coding curves 第五章 谐波图形(谐振图形) HARMONOGRAPHS

    原作:Keith Peters https://www.bit-101.com/blog/2022/11/coding-curves/ 译者:池中物王二狗(sheldon) blog: http:// ...

  8. java接口返回图片链接或pdf链接如何设置在线预览还是下载

    之前文章说到了如何通过将文件转成图片或者pdf来实现在线预览,一般来说在线预览图片或者pdf都是存储在图片服务器上的,在通过接口调用把文件返回给前端,但是把文件返回给前端效果一般是有两种:在线预览和下 ...

  9. 认识Java注解

    1.注解是什么? 注解,元数据的一种形式,提供与程序有关的数据,但又不是程序的一部分.注解对它们注解的代码操作没有直接影响. 附注:元数据是指用来描述数据的数据,更通俗一点,就是描述代码间关系,或者代 ...

  10. 前端仿今日头条、网易新闻 tabs组件,根据文字多少自适应tab项宽度,支持自定义标题栏

    快速实现 前端仿今日头条网易新闻 tabs 组件标签页,根据文字多少自适应 tab项宽度, 详情请访问uni-app插件市场地址:https://ext.dcloud.net.cn/plugin?id ...