《Linux基础》07. 软件管理
@
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. 软件管理的更多相关文章
- 大数据攻城狮之Linux基础------rpm软件管理
rpm的英文名称为: Redhat package manager 常用的命令加组合: i 安装 rpm -ivh 软件包名 当然我们的rpm也可以支持多包同时操作 rpm -ivh 软件包1 软件包 ...
- Linux基础三(软件安装管理)
目录: 一.Linux 中软件包的分类 1.源码包 2.二进制包 3.源码包 4.软件安装的选择 二.软件安装之 RPM 1.背景知识 2.准备知识 3.安装升级与卸载 4.查询校验与提取 三.软件安 ...
- Linux入门-9 软件管理基础(CentOS)
0. 源代码形式 1. RPM软件包管理 RPM RPM查询 RPM验证 2. YUM软件管理 YUM基本命令 YUM查询 创建YUM仓库 0. 源代码形式 绝大多数开源软件都是直接以源代码形式发布 ...
- 【Linux】apt软件管理和远程登录
镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 1. apt 介绍 apt 是 Advanced Packaging Tool 的简称,是一款安装包管理工具.在 Ubuntu 下,可以使用 ap ...
- Linux进阶之软件管理
本节内容 一.rpm:管理linux软件程序的 特点:安装方便 不能解决依赖关系 1.安装软件: -i: -v: -h: rpm -ivh 包名 2.卸载软件 -e: 清楚 rpm -e 程序名 3. ...
- Linux系统管理_软件管理
RPM命令 #管理.rpm文件 #RPM包软件命名规则:name-version-releases.arch.rpm rpm -ivh pkgname #安装软件包 rpm -ivh --test p ...
- Linux基础整理-软件的安装与卸载
redhat/centos/fedora/suse系列: 摘自网址:http://www.runoob.com/linux/linux-yum.html yum( Yellow dog Updater ...
- Linux基础:软件安装(rpm,yum,源代码)
Software Installation on Linux Linux安装分为rpm包(可通过yum或者是rpm命令安装)和源码包(源代码或者是编译过的二进制码)两种. Linux是开源系统,很多应 ...
- Linux基础四(服务管理)
目录 一.简介与分类 1.系统的默认运行级别 2.服务的分类 3.服务与端口 二.服务管理 1.RPM包服务管理 2.源码包服务管理 三.服务管理总结 一.简介与分类 1. 系统的运行级别 1.1 默 ...
- Linux下的软件管理
一.软件包管理简介 1源码包(脚本安装) ①.特点: a.开源 ,可以修改 b.自由选择所需功能 ...
随机推荐
- .Net8顶级技术:边界检查之IR解析(慎入)
前言 C#这种语言之所以号称安全的,面向对象的语言.这个安全两个字可不是瞎叫的哦.因为JIT会检查任何可能超出分配范围的数值,以便使其保持在安全边界内.这里有两个概念,其一边界检查,其二IR解析.后者 ...
- 2013年蓝桥杯C/C++大学A组省赛真题(排它平方数)
题目描述: 小明正看着 203879 这个数字发呆. 原来,203879 * 203879 = 41566646641 这有什么神奇呢?仔细观察,203879 是个6位数,并且它的每个数位上的数字都是 ...
- macOS下由yarn与npm差异引发的Electron镜像地址读取问题
记录macOS下由yarn与npm差异引发的Electron镜像地址读取问题 写在前面:该问题仅仅出现在Linux和macOS上,Windows上不存在该问题! 初始背景 最近笔者重新拾起了Elect ...
- 使用js闭包封装一个原生的模态框
现在都是用的是人家封装的框架什么的,但是对于底层的了解也是必须的,不然就无法提升,下面分享一个2 years ago 自己封装的一个提示框 样式很简单(适用于任何分辨率) 具体代码如下 /** * 该 ...
- WPF入门教程系列二十七 ——DataGrid使用示例MVVM模式(4)
WPF入门教程系列目录 WPF入门教程系列二--Application介绍 WPF入门教程系列三--Application介绍(续) WPF入门教程系列四--Dispatcher介绍 WPF入门教程系 ...
- Kali安装GVM
1.安装gvm ┌──(rootkali)-[/home/kali] └─# gvm-setup 1 ⨯ [>] Starting PostgreSQL service [-] ERROR: T ...
- Vue3从入门到精通(一)
Vue3简介 Vue3是Vue.js的最新版本,于2020年9月18日正式发布.Vue3相比Vue2有很多改进和优化,包括但不限于: 更快的渲染速度:Vue3通过使用Proxy代理对象和优化虚拟DOM ...
- Kafka的系统架构和API开发
系统架构 主题topic和分区partition topic Kafka中存储数据的逻辑分类:你可以理解为数据库中"表"的概念:比如,将app端日志.微信小程序端日志.业务库订单表 ...
- 【Leetcode】 two sum #1 for rust solution
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标.你可以假设每种输入只会对应一个答案.但是,数组中同一个元素不能使用两遍. 示 ...
- 【论文阅读】Learning Deep Features for Discriminative Localization
这个是周博磊16年的文章.文章通过实验证明,即使没有位置标注,CNN仍是可以得到一些位置信息,(文章中的显著性图) CNN提取的feature含有位置信息,尽管我们在训练的时候并没有标记位置信息: 这 ...