浅析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 
 on an m

  这个 Kernel  是什么,为什么不是 centos?  ——  原来比如 kernel-2.6.18-8.el5.src.rpm 就是 centos 对应的源码包,所以我们看到 centos 系统版本信息一般都是显示的Kernel。

原文地址:https://www.cnblogs.com/goloving/p/15133114.html