#9 基于 CentOS Stream 的桌面环境

2021-12-15

CentOS Stream 9 已于月初发布,基于 Fedora 34,这就是 RHEL 9 未来的发展方向。
CentOS Stream 的稳定性应该是比 Fedora 更好,如果我想选择改用 Fedora 当桌面环境,为什么不试试 CentOS Stream 呢?
这里就开始调研一下。

#6 CentOS 安装 Docker

2020-05-24
# sudo yum remove docker \
#                   docker-client \
#                   docker-client-latest \
#                   docker-common \
#                   docker-latest \
#                   docker-latest-logrotate \
#                   docker-logrotate \
#                   docker-engine

# 检查是否有旧的安装
yum list installed | grep docker
sudo yum remove ...

sudo yum install -y yum-utils

# 使用国内镜像
# sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

yum list docker-ce --showduplicates | sort -r

sudo yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

参考:https://docs.docker.com/engine/install/centos/

#4 为旧版本 CentOS 设置更新源

2017-02-08

总有些时候需要操作一些老旧的 CentOS 版本,如果需要更新就比较麻烦了,因为绝大部分更新源都不对老版本提供服务了。
这时我们只好使用 CentOS Vault,从官方接受这最后的支持,慢慢的下载更新。

#3 yum 包管理系统

2016-05-02

关于 DNF 的更多信息,参考:2016/05/03 CentOS DNF

介绍

  1. .rpm 包,和 .deb 包是 Linux 生态中两种最主要的包格式。
  2. yum:
  3. 较新版本提供了 dnf 工具,改善 yum

包名

bash-4.2.46-35.el7_9.x86_64.rpm

其中:

  • bash 是名称
  • 4.2.46 是版本
  • 35.el7_9 是构建版本
  • x86_64 是服务器架构
  • rpm 是文件后缀
名称    :bash
架构    :x86_64
版本    :4.2.46
发布    :31.el7
大小    :3.5 M
源    :installed
来自源:anaconda
简介    : The GNU Bourne Again shell
网址    :http://www.gnu.org/software/bash
协议    : GPLv3+
描述    : The GNU Bourne Again shell (Bash) is a shell or command language
         : interpreter that is compatible with the Bourne shell (sh). Bash
         : incorporates useful features from the Korn shell (ksh) and the C shell
         : (csh). Most sh scripts can be run by bash without modification.

基本用法

yum help list # 查看帮助

yum search <package> # 搜索包

yum list
yum list installed
rpm -qa
yum list --upgradable

yum info <package>
rpm -qi <package>

rpm -ql <package> # 已安装包的文件列表
rpm -qd <package> # 已安装包的文件列表中的文档部分
rpm -qc <package> # 已安装包的文件列表中的配置部分

yum repolist

# repoquery 是 yum-utils 包提供的命令
repoquery -l <package> # 文件列表
repoquery -f <filepath> # 查看文件属于哪个包, 比如: `repoquery -f "*/repoquery"`
repoquery --location <package> # 查看包的下载地址

yum deplist <package> # 依赖
rpm -qR <package> # 已安装包的依赖
rpm -q --whatrequires <package> # 反向依赖
rpm -q --whatprovides <filepath>
rpm -qf <filepath>

yum provides <pattern>
yum whatprovides <patter>

yum check-update
yum updateinfo
yum update [package]
yum upgrade [package]
yum update-minimal
yum upgrade-minimal # 和 yum update-minimal 相同
yum downgrade <package>

yum install <package>
yum install <package-rpm-filepath>
yum reinstall

yum makecache
yum clean

yum erase
yum remove
yum autoremove

# list, info, summary, repeat, redo, undo, new, rollback, addon, addon-info, stats, statistics, sync, synchronizepkg, pkgs, pkg-list, pkgs-list, package, package-list, packages, packages-list, pkg-info, pkgs-info, package-info, packages-info
yum history
yum history list
yum history list all

yum versionlock <package>

安装组

RedHat 系列提供的,安装组(Group)的概念非常好。

安装组就是为了某一个目的需要的一组包,比如 gnome-desktop 组是安装一个完整的 gnome 桌面环境,web-server 组是安装 apache 和相关的几个包。

  1. 安装组中有必须安装的包(Mandatory Packages),默认安装的包(Default Packages),也有可选的包(Optional Packages)。
  2. 按我的理解,安装组分成三类:
  3. 可用组 Available Group,就是普通的安装组,包含部分包,可以 install。
  4. 环境组 Environment Group,就是安装组的组,group of goups,比如 minimal 环境组包含必须的 core 组和可选的 debugging 组。也可以 install。
  5. 基础组,比如 core,比如 php,是隐藏的,不可直接 install,用于构建环境组设计的。
    我实在想不到为什么这些组不直接暴露出来,这个设计有什么别的原因。
$ yum help groups
groups [list|info|summary|install|upgrade|remove|mark] [GROUP]

显示或使用、组信息

别名:group, grouplist, groupinfo, groupinstall, groupupdate, groupremove, grouperase
  • yum grouplist
  • yum group list ids 附带组 ID
  • yum group list hidden 列出所有组
  • yum groupinfo
  • yum groupinstall <group>
  • yum install @<group>
  • yum install @^<environment-group>
  • yum --setopt=group_package_types=mandatory,default,optional groupinstall "Web Server"
  • yum groupupdate
  • yum groupremove
  • yum grouperase

相关文件

  • /etc/yum.conf
  • /etc/yum.repos.d/
  • /etc/yum/

/etc/rpm 目录不知道是干什么的。

yum 插件

比如最常见的 fastestmirror,用于自动选择最快的镜像源。所以我们使用 CentOS 时,一般不需要去配置镜像源。

#2 为 CentOS 升级 Linux 内核

2015-11-19

查看内核版本

  • cat /proc/version
  • uname -a-r 参数可以只查看内核版本号

查看发行版版本

  • lsb_release -a
  • cat /etc/redhat-release(CentOS)

升级

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -ivh https://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install kernel-lt -y  # long-term 长期支持版本
# yum --enablerepo=elrepo-kernel install kernel-ml -y  # mainline 主线版本

参考