GUN/Linux 不同发行版的常识普及

Linux科普

1、预备知识

1.1、PC操作系统概述

在PC上广为人知到操作系统大概可以分为Windows、MacOS、Linux,而这其中MacOS和Linux又是基于UNIX架构发展而来的,所以在PC操作系统中大概可以分为Windows操作系统与类UNIX操作系统(包含UNIX、Linux、MacOS),关于UNIX的发展历史以及主要功能大家可以参考我上传的图书UNIX&Linux大学教程。下面我来主要讲一讲Linux。

Linux作为操作系统而言是GNU项目最主要的产出结果,它给人们带来了可以免费获取的操作系统,因而Linux在ToB端(主要对象是企业)应用是相当广泛的,举个例子,我们熟知的各种Linux发行版、智能手表、Android手机操作系统以及更为广泛的嵌入式操作系统都是基于Linux核心二次开发而来的。Linux操作系统的天然特性(多用户以及并发操作等特性)特别适用于程序开发,所以不少软件时天然支持Linux操作系统,而后支持Windows操作系统的。而在ToC端(主要对象是个人消费者),Window由于良好的GUI交互界面和较低的学习成本获得了大量的用户,而用户数量往往是一些软件开发商适配软件的首要考虑条件,所以这也导致了Windows在个人PC领域占据了庞大的市场份额。接下来的内容是有关EDA软件的,这一方面的知识与本科教学相关性不大,同学们可以在就业前再做充分了解,除非兴趣特别浓厚,在保证不影响学业的情况下可以做深入的探究。(无论是数字IC设计还是模拟IC设计都是一个深坑,在完成基础的理论储备后仍需要长时间培养相关工具的使用技能)

当讲到芯片设计,无论是模拟还是数字,都以UNIX&Linux作为第一适配平台,有些软件甚至是Linux操作平台独占,所以有必要对在接下来的一段时间里,我会向大家介绍逐渐介绍一下目前设计领域主要主要使用的软件的主要作用,仅作为一个敲门砖,更深入的内容将会在踏入研究生生涯或工作中进一步学习。

1.2、不同的Linux发行版

下面是RHEL、Debian和Arch系列的Linux发行版的简要介绍和比较:

RHEL系Debian系Arch系
Red Hat Enterprise Linux (RHEL)DebianArch Linux
CentOS/AlmaLinuxUbuntuManjaro
FedoraMintAntergos
OpenSUSEElementary OSArtix Linux

下面主要讲下RHEL、CentOS、AlmaLinux三者之间的关系

RHEL(Red Hat Enterprise Linux)是一个由红帽公司开发的商业版Linux操作系统,具有稳定性、安全性和高可靠性等特点,并提供长期支持。

CentOS(Community Enterprise Operating System)是一个开源的、基于RHEL源代码构建的Linux发行版。它是完全免费的,并且由社区维护和支持。CentOS在企业和个人用户中都有广泛应用,可以说是RHEL的一个克隆版。

AlmaLinux是一个基于RHEL源代码构建的免费Linux发行版,由CloudLinux公司开发。它旨在填补CentOS调整的空缺,并提供一个可靠的、长期支持的替代品。AlmaLinux与CentOS的主要区别是由不同的公司支持和维护。

2019年,Red Hat公司宣布将停止支持CentOS Linux 8(以及之后的版本)的更新和维护,取而代之的是CentOS Stream。CentOS Stream是一个滚动更新的发行版,更加注重开发和测试。这一决定引起了社区的不满,因为CentOS用户已经习惯了长期支持和稳定性。

作为对CentOS用户的回应,CloudLinux公司宣布了AlmaLinux,提供了一个长期支持的替代品,目标是提供与CentOS相同的稳定性和可靠性,并提供与RHEL相同的更新速度。

因此,可以这样概括这三者之间的关系:RHEL 是企业级 Linux 操作系统的领导者和标杆,CentOS 是一个由社区驱动的基于 RHEL 的发行版,而AlmaLinux则是在 CentOS 停止更新后诞生的,由社区驱动的 RHEL 克隆发行版,目标是为企业提供长期的稳定性和支持。

个人可以使用 RHEL(Red Hat Enterprise Linux),但是需要购买许可证,并支付相应的订阅费用。RHEL 是一款商业级的企业操作系统,主要定位于企业级服务器和应用程序环境,因此它的订阅费用通常比较昂贵。

对于个人使用来说,如果不需要使用 RHEL 提供的商业级技术支持和服务,建议使用 CentOS 、Fedora 或 AlmaLinux 这样的免费开源发行版,它们提供的功能和应用程序与 RHEL 相当,但不需要支付任何费用。同时,RHEL 的免费版也有提供,称为 CentOS Stream,提供了相同的 RHEL 技术和包,但不提供 RHEL 官方支持和保障,AlmaLinux 由 CloudLinux 公司提供维护。

学习资料 2、3、4 不仅适用于RHEL,其中大部分内容也适用于其他 Linux 发行版。

FAQ 是英文 Frequently Asked Questions 的缩写,中文意思是“常见问题解答”。它通常是一个文档或页面,收集了针对某个主题或产品的常见问题及其答案,为用户提供方便的参考和解决问题的方法。一般来说,FAQ 包含了对于该主题或产品的一些基本概念、常见问题及其解决方案、使用技巧和注意事项等方面的介绍。很多软件和网站都会提供 FAQ 来帮助用户解决问题,同时也可以减轻客服的工作量。

  • Arch系:
    1. Arch Linux是一款面向高级用户的Linux发行版,它的目标是提供最新的软件和最小化的系统配置。
    2. Manjaro是基于Arch Linux的发行版,为用户提供了更简单的安装和配置。
    3. Antergos是一个用户友好的发行版,它是基于Arch Linux的,但更注重易用性。
    4. Artix Linux是一款轻量级的Linux发行版,它使用独立的init系统和包管理器来提供纯净的Arch体验。
  • Arch Linux 的一些学习资料
    1. 手册页面:Arch manual pages (archlinux.org)
    2. 用户手册中文:Arch manual pages (archlinux.org)
    3. 用户手册英文:Arch manual pages (archlinux.org)
1.2.1 不同Linux发行版的常用命令
RHEL系Debian系Arch系
文件和目录操作ls, cd, pwd, mkdir, rmdir, cp, mv, rm, chmod, chown, chgrpls, cd, pwd, mkdir, rmdir, cp, mv, rm, chmod, chown, chgrpls, cd, pwd, mkdir, rm, chmod, chown, chgrp, cp, mv
系统信息uname, hostname, uptime, top, free, df, duuname, hostname, uptime, top, free, df, duuname, hostname, uptime, top, free, df, du
网络操作ifconfig, ping, traceroute, netstat, curl, wget, ssh, scpifconfig, ping, traceroute, netstat, curl, wget, ssh, scpip, ping, traceroute, netstat, curl, wget, ssh, scp
软件管理rpm, yum, dnfdpkg, apt-get, aptitudepacman, yay, yaourt
用户和权限管理useradd, usermod, passwd, su, sudo, chmod, chownadduser, usermod, passwd, su, sudo, chmod, chownuseradd, usermod, passwd, su, sudo, chmod, chown
进程管理ps, top, kill, pkill, niceps, top, kill, pkill, reniceps, top, kill, pkill, nice
系统服务管理systemctl, service, chkconfigsystemctl, service, update-rc.dsystemctl, service, enable, disable

注意:这张表格只列出了每个发行版的常用命令示例,并非所有命令,每个命令的具体用法和参数也可能因发行版而异。

1.2.2 RHEL、Debain、Arch 系Linux 常用的命令示例

下面介绍一下这三个Linux发行版的常用命令,并给出示例:

RHEL(Red Hat Enterprise Linux)系:

  • yum:包管理器,用于安装、升级和删除软件包。例如:

    yum install vim # 安装vim编辑器
    yum update # 升级系统所有软件包
    yum remove httpd # 删除httpd软件包
    
  • systemctl:用于管理系统服务,包括启动、停止、重启、查看状态等。例如:

    systemctl start httpd.service # 启动httpd服务
    systemctl stop httpd.service # 停止httpd服务
    systemctl restart httpd.service # 重启httpd服务
    systemctl status httpd.service # 查看httpd服务状态
    
  • firewall-cmd:用于管理防火墙,包括开启、关闭、添加规则等。例如:

    firewall-cmd --add-port=80/tcp --permanent # 添加80端口规则
    firewall-cmd --reload # 重载防火墙规则
    firewall-cmd --list-all # 查看防火墙规则
    

Debian系:

  • apt:包管理器,用于安装、升级和删除软件包。例如:

    apt-get install vim # 安装vim编辑器
    apt-get upgrade # 升级系统所有软件包
    apt-get remove apache2 # 删除apache2软件包
    
  • systemctl:同样用于管理系统服务。例如:

    systemctl start apache2.service # 启动apache2服务
    systemctl stop apache2.service # 停止apache2服务
    systemctl restart apache2.service # 重启apache2服务
    systemctl status apache2.service # 查看apache2服务状态
    
  • ufw:用于管理防火墙,包括开启、关闭、添加规则等。例如:

    ufw allow 80/tcp # 开启80端口规则
    ufw reload # 重载防火墙规则
    ufw status verbose # 查看防火墙规则
    

Arch系:

  • pacman:包管理器,用于安装、升级和删除软件包。例如:

    pacman -S vim # 安装vim编辑器
    pacman -Syu # 升级系统所有软件包
    pacman -R apache # 删除apache软件包
    
  • systemctl:同样用于管理系统服务。例如:

    systemctl start httpd.service # 启动httpd服务
    systemctl stop httpd.service # 停止httpd服务
    systemctl restart httpd.service # 重启httpd服务
    systemctl status httpd.service # 查看httpd服务状态
    
  • iptables:用于管理防火墙,包括开启、关闭、添加规则等。例如:

    iptables -A INPUT -p tcp --dport 80 -j ACCEPT # 添加80端口规则
    systemctl restart iptables.service # 重启iptables服务
    iptables -L -v -n # 查看iptables
    

1.3 一些注意事项

  1. 在使用 Linux 时我们在查询遇到相关问题时最好加上具体的发行版本,因为不同发行版的 Linux 可能会在某些文件的命令及使用方法上的不同,方法不一定通用。

  2. 在选择 Linux 不同发行版时要考虑使用目的和不同Linux发行版的特点(维护方,市占率,维护周期,适用领域等)去选择合适的 Linux 发行版使用,通常市占率更高的 Linux 发行版遇到问题的话可以在互联网中更轻松地找到解决方案。

  3. 以下是根据不同 Linux 发行版的市场占有率制作的表格:

    发行版市场占有率
    Ubuntu37.39%
    Debian15.47%
    CentOS/RHEL14.33%
    Fedora1.63%
    openSUSE1.12%
    Arch Linux0.70%
    Manjaro0.62%
    Mageia0.25%
    Slackware0.20%
    Gentoo Linux0.11%

    这些数据来自于 2021 年 4 月的 Distrowatch.com 的统计结果,仅供参考。需要注意的是,市场占有率是随时变化的,而且可能受到多种因素的影响。

  4. 使用具体 Linux 发行版时最好去它的官网看看相关的文档,有些问题可能会在文档中有记录。

  5. 一篇 Linux 的使用感受,来自微信:使用 Linux 作为主力机一年后 (qq.com)

2、不同发行版 Linux 的版本与 Kernel 的对应关系

内核版本可以在系统中使用命令 uname -r 查看。

常见处理器架构代号 amd64 (AMD64 & Intel EM64T)armhf (32-bit hard-float ARMv7)arm64 (64-bit ARM)i386 (Intel 32-bit PC)powerpc (IBM/Motorola PowerPC)ppc64el (PowerPC 64-bit Little-endian)ppc64el (PowerPC 64-bit Little-endian)s390x (IBM System z)

2.1、RHEL(Red Hat Enterprise Linux)版本与 Kernel 的对应关系:

版本号内核版本
8.54.18.0
8.44.18.0
8.34.18.0
8.24.18.0
8.14.18.0
8.04.18.0
7.93.10.0
7.83.10.0
7.73.10.0
7.63.10.0
7.53.10.0
7.43.10.0
7.33.10.0
7.23.10.0
7.13.10.0
7.03.10.0

2.2、CentOS 版本与 Kernel 的对应关系:

版本号内核版本
8.54.18.0
8.44.18.0
8.34.18.0
8.24.18.0
8.14.18.0
8.04.18.0
7.93.10.0
7.83.10.0
7.73.10.0
7.63.10.0
7.53.10.0
7.43.10.0
7.33.10.0
7.23.10.0
7.13.10.0
7.03.10.0

需要注意的是,由于CentOS是由Red Hat Enterprise Linux(RHEL)源代码克隆而来,因此与RHEL的内核版本非常相似。此外,由于CentOS在2019年重组了其开发团队和架构,因此这些信息可能会随着时间而变化。

2.3、AlmaLinux 版本与 Kernel 的对应关系:

版本号内核版本
8.44.18.0
8.34.18.0
8.24.18.0
8.14.18.0
8.04.18.0
7.83.10.0
7.73.10.0
7.63.10.0
7.53.10.0
7.43.10.0
7.33.10.0
7.23.10.0
7.13.10.0
7.03.10.0

AlmaLinux wiki AlmaLinux Wiki | AlmaLinux Wiki

2.4、Debain 版本与 Kernel 的对应关系

Debian 版本内核版本
1.11.1.x
1.21.2.x
1.31.3.x
2.02.0.x
2.12.0.7x
2.22.2.x
3.02.2.x/2.4.x
3.12.4.x
4.02.6.8
5.02.6.26
6.02.6.32
7.03.2.x
8.03.16.x
9.04.9.x
10.04.19.x
11.05.10.x

注意,不同版本的 Debian 可能会包含多个内核版本,表格中列出的是每个版本的主要内核版本。

2.5、Ubuntu 版本与 Kernel 的对应关系:

Ubuntu 版本内核版本
4.102.6.8
5.042.6.10
5.102.6.12
6.06 LTS2.6.15
6.102.6.17
7.042.6.20
7.102.6.22
8.04 LTS2.6.24
8.102.6.27
9.042.6.28
9.102.6.31
10.04 LTS2.6.32
10.102.6.35
11.042.6.38
11.103.0.x
12.04 LTS3.2.x
12.103.5.x
13.043.8.x
13.103.11.x
14.04 LTS3.13.x
14.103.16.x
15.043.19.x
15.104.2.x
16.04 LTS4.4.x
16.104.8.x
17.044.10.x
17.104.13.x
18.04 LTS4.15.x
18.104.18.x
19.045.0.x
19.105.3.x
20.04 LTS5.4.x
20.105.8.x
21.045.11.x
21.105.13.x

Ubuntu 文档 Official Ubuntu Documentation

注意,不同版本的 Ubuntu 可能会包含多个内核版本,表格中列出的是每个版本的主要内核版本。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值