浅析apt与yum与apk的介绍及如何选择、centos系统版本与kernel对应关系
一、apt、yum、apk的介绍
1、apt(Advanced Packaging Tool)是一个在 Debian 和 Ubuntu 中的 Shell 前端软件包管理器。
apt 命令提供了查找、安装、升级、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
apt 命令执行需要超级管理员权限(root)。
详见了解请看:https://www.runoob.com/linux/linux-comm-apt.html
2、yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。
基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
详细了解请看:https://www.runoob.com/linux/linux-yum.html
3、apk —— Alpine Linux是一个面向安全应用的轻量级Linux发行版。它采用了musl libc和busybox以减小系统的体积和运行时资源消耗,同时还提供了自己的包管理工具apk。
alpine
提供了非常好用的apk
软件包管理工具,通过apk –help
命令查看完整的包管理命令。
(1)apk update —— 从远程镜像源中更新本地镜像源索引。
update命令会从各个镜像源列表下载APKINDEX.tar.gz并存储到本地缓存,一般在/var/cache/apk/(Alpine在该目录下)、/var/lib/apk/ 、/etc/apk/cache/下。
(2)apk add —— 安装PACKAGES并自动解决依赖关系。
add命令从仓库中安装最新软件包,并自动安装必须的依赖包,也可以从第三方仓库添加软件包。
(3)apk del —— 卸载并删除PACKAGES
(4)apk upgrade —— 升级当前已安装的软件包。
upgrade命令升级系统已安装的所有软件包(一般包括内核),当然也可指定仅升级部分软件包(通过-u或–upgrade选择指定)。
(5)apk search —— 搜索软件包。
search命令搜索可用软件包,-v 参数输出描述内容,支出通配符,-d 或 –description 参数指定通过软件包描述查询。
(6)apk info —— 列出PACKAGES或镜像源的详细信息。info命令用于显示软件包的信息。
二、是选择 apt 还是 yum ?
1、查看系统版本,选择对应安装命令
查看当前系统是什么系统,如果是 Debian 或 Ubuntu 则使用 apt 即可(在该系统上默认就有的);如果是 CentOS 则使用 yum 即可(也是默认就有的)。
我遇到的问题就是想用 ssh 直接连 docker 容器,要装 openssh-server,使用 yum 安装,结果容器里没有 yum 命令,就一直安装 yum ,怎么装都有问题,最后发现直接用 apt 安装即可,踩坑。
2、centos系统版本与kernel对应关系
[root@moapp-0003 /]# cat /etc/issue
\S
Kernel \r on an \m
这个 Kernel 是什么,为什么不是 centos? —— 原来比如 kernel-2.6.18-8.el5.src.rpm 就是 centos 对应的源码包,所以我们看到 centos 系统版本信息一般都是显示的Kernel。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2020-08-12 Nodejs-JWT token认证:为什么要使用token、token组成(头部、载荷、签名)、jwt使用过程以及token对比session的好处(单点登录、减轻服务器压力、存储信息等)
2020-08-12 多站点单点登录实现业务思路
2020-08-12 多站点单点登录实现设计方案
2017-08-12 浅析List.remove在for循环中会出现的问题及解决方案
2017-08-12 MyBatis报错:Mapped Statements collection already contains value for XXX 的可能原因
2017-08-12 浅析int类型参数当不传参时默认总是0的问题
2017-08-12 浅析FOUC是什么以及如何避免