镜像下载、域名解析、时间同步请点击阿里云开源镜像站

Linux系统对于Java程序员来说,就好比“乞丐手里的碗”,任何业务都离不开他的身影,因为服务端的广泛使用,也因此衍生出了各种不同的发行版,其中我个人用的最多、且最喜欢的就是CentOS;不幸的是,2021年底CentOS 8宣布停止了维护;

不过,喜欢CentOS的朋友们不用为此而难过;

21年的云栖大会上,阿里云发布全新操作系统“龙蜥”(Anolis OS)并宣布开源,这款操作系统完全兼容 RHEL/CentOS 生态和操作方式,支持一键迁移,并提供全栈国密能力。

本文就来带大家一起玩一下这个操作系统,看是不是真的100%兼容CentOS;

龙蜥操作系统简介

龙蜥操作系统定位于服务器端 ,支持 x86、ARM 等多种芯片架构和计算场景,据阿里云在会上透露,该操作系统已经在阿里巴巴内部打磨 10 年,支撑了历年的双11,无论是在性能、还是稳定性都经受了实战的考验;同时还针对云原生应用开发做了多重优化。

据悉,**龙蜥操作系统完全开源 **,通过开源社区和操作系统厂商等形式提供服务。未来,阿里云计划为龙蜥投入 20 亿专项资金,并联合 100 家生态合作伙伴推动生态建设,提供至少十年技术支持。

龙蜥社区官网:https://openanolis.cn/

装机使用

说的再好,不如亲自上手把玩一番来的直观;

有条件的朋友,可以直接选择物理机安装,装机教程可以参考我直接分享给大家的文章:

我是属于没有条件的,所有下面带大家使用 VirtualBox装一下龙蜥操作系统;

学会使用虚拟机快速构建一个学习使用的Linux环境,是一个非常有用的技能;特别后端程序员在学习、测试集群、分布式的时候,我们很难同时去找那么多台物理机来供我们使用,因此,虚拟机构建就是一个非常方便、快捷且经济实惠的选择。

VirtualBox安装

这不是本文的重点,没啥要注意的,直接在官网(https://www.virtualbox.org/)下载最新的版本,安装即可!

市面上还有另一款虚拟机:VMware,不过我被这个虚拟机坑过多次,所以为了后续不必要的麻烦,所以不太建议大家使用VMware。相反,改用VirtualBox的几年来,一直都表现的非常稳定,没有出现过任何的乱子,值得一试。

下载最新的镜像

官网下载地址:https://mirrors.openanolis.cn/anolis/8.4/isos/GA/

我下载的x86_64 minimal的版本,才1.2G,也可以根据个人的情况,选择不同的版本;

装机

  • 创建虚拟机

    文件夹:不要放置重要的东西,因为这里是将此文件夹作为了虚拟机的磁盘,所以后续会对文件夹进行格式化操作

    版本:因为没有对于版本的选项,所以选择RedHat



  • 选择网络连接方式

选择桥接网卡

  • 启动

  • 选择语言

  • 格式化磁盘

也就是格式化第一步中选择的安装文件夹,格式化会清空文件夹下的所有内容,所以务必不要在文件夹下放置重要文件;

  • 开始安装

  • 设置密码

  • 安装并启动Anolis OS



配置网络

  • 第一步,查看宿主机的网络环境

我的电脑是window,win+R输入 cmd命令打开黑窗体,然后输入 ipconfig命令即可查看宿主机的IP、网关、子网掩码

自己选一个局域网下没有人用的IP,测试一下,比如我宿主机的网络是 192.168.1.102,选择一个 192.168.1.241ping一下,如果ping不通,说明局域网IP没人使用,就可以把这个IP配置给虚拟机;

  • 第二步,配置网络

  • 进入配置文件目录

/etc/sysconfig/network-scripts

注:你的配置文件名称可能和我的不一样,不过没关系,只要是 ifcfg-打头的配置文件就行

  • 编辑配置文件

修改并添加以下配置:

// 修改下面的两项
// 将BOOTPROTO=dhcp 修改为 BOOTPROTO=static 意思是IP设置为固定的
// 将ONBOOT=no 修改为ONBOOT=yes // 添加以下配置
// 以下以192.168.1开头的配置请根据个人实际的网段配置 # ip
IPADDR=192.168.1.241
NETWORK=192.168.1.1
NETSTAT=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=8.8.8.8 // :wq 保存

配置好后的信息如下:

  • 重启网卡

重启网卡之前一定要重新载入一下配置文件,不然不能立即生效

nmcli c reload

重启网卡(下面的三条命令都可以)

注:其中的 enpxxx为上面配置文件名称的后缀,请根据实际情况修改;

nmcli c up enpxxx
nmcli d reapply enpxxx
nmcli d connect enpxxx

测试网络

ping www.qq.com

任意ping一个外网域名,如果能应答,说明网络已经配置好了;

  • 查看看网络
ip addr

如果发现对应网卡的IP变成你配置的IP且能正常ping外网,说明网络配置已经正常

SSH工具连接

网络配置好之后,这就是一台实实在在可用的机器了,除了外网没办法访问之外(想外网能访问到也不是没有办法,后续再找机会来单独说说);其他的功能,和一台真实的物理机没有大的区别,为了使用更方便,需要用SSH工具远程到主机上进行环境配置、软件安装;

之前给大家推荐过多款好用且免费的SSH工具,有兴趣的可以看看: 这里就不再赘述了。

为了验证系统是否真的完全兼容CentOS,我决定在上面装上Docker,跑个Nginx服务,试一下使用效果。

安装Docker

  • 移除旧版本

如果之前安装过,这条指令会将Docker卸载掉

sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine

移除历史镜像和容器等数据,如果之前已经安装了Docker,不移除,再次安装Docker,历史的镜像和容器都还存在;

注意!!! 这行指令会删除历史的所有数据,请酌情执行

rm -rf /var/lib/docker
  • 第二步

安装一些必要的系统工具

sudo yum install -y yum-utils device-mapper-persistent-data lvm2
  • 第三步:

添加软件源信息

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • 第四步:

更新 yum 缓存

CentOS 7的命令

sudo yum makecache fast

CentOS 8的命令

sudo yum makecache

  • 第五步:

安装 最新的Docker-ce

sudo yum -y install docker-ce

安装指定版本

sudo  yum install -y docker-ce-18.09.7 docker-ce-cli-18.09.7 containerd.io
  • 第六步:

启动 Docker 后台服务

sudo systemctl start docker
// 设置开机自启
sudo systemctl enable docker
  • 其他指令(可以不执行的指令)
// 停止
sudo systemctl stop docker
// 重启
sudo systemctl restart docker
// 查看状态
sudo systemctl status docker
// 设置开机自启
sudo systemctl enable docker
// 取消开机自启
sudo systemctl disable docker
// 查看是否已经配置开机自启
sudo systemctl is-enabled docker
  • 查看版本
docker -v

Docker运行Nginx

  • 启动Nignx

执行以下Docker指令,即可快速运行一个Nginx服务;

docker run -d -p 80:80 nginx

  • 测试

浏览器输入:http://192.168.1.241 出现下面的效果,说明整个服务已经可用;

总结

至此,系统的安装,网络配置、软件安装、服务测试均没有任务问题,一切正常!

不论是命令、还是使用习惯,几乎和CentOS一模一样,所以完全可以做到无感知的切换,虽然CentOS宣布停止维护,但这款完全兼容CentOS的操作系统完美顶上,而且阿里承诺至少提供十年技术支持,所以喜欢CentOS的朋友,丝毫都不用担心了。

更多的细节,大家可以在日常使用中慢慢去感受。

本文转自:https://blog.csdn.net/lupengfei1009/article/details/123257696

CentOS停更;阿里发布全新操作系统(Anolis OS)的更多相关文章

  1. 1、了解计算机与操作系统发展阶段 2、选择一个具体的操作系统,结合计算机与操作系统的发展阶段,详细了解其渊源、发展过程、趋势,整理成简洁美观的图文博客发布。 Windows Mac os x Unix Linux Android 等。

    1.了解计算机与操作系统发展阶段 操作系统并不是与计算机硬件一起诞生的,它是在人们使用计算机的过程中,为了满足两大需求:提高资源利用率.增强计算机系统性能,伴随着计算机技术本身及其应用的日益发展,而逐 ...

  2. 基于Java图片数据库Neo4j 3.0.0发布 全新的内部架构

    基于Java图片数据库Neo4j 3.0.0发布 全新的内部架构 Neo4j 3.0.0 正式发布,这是 Neo4j 3.0 系列的第一个版本.此版本对内部架构进行了全新的设计;提供给开发者更强大的生 ...

  3. 【转帖】IBM发布全新闪存解决方案,助企业存储架构做减法

    IBM发布全新闪存解决方案,助企业存储架构做减法 http://stor-age.zhiding.cn/stor-age/2020/0227/3124851.shtml 感觉 配图弄错了 FlashS ...

  4. CentOS 7 ARM 版发布:支持树莓派2/香蕉派/CubieTruck

    CentOS 7 ARM 版发布:支持树莓派2/香蕉派/CubieTruck 来自CentOS团队的Karanbir Singh很高兴地宣布,面向ARM硬件架构的CentOS 7 Linux已经正式发 ...

  5. 博客停更及OI退役公告

    停更&&OI退役 公告 高中OI之路就这样结束了,曾经想过回在NOI跪,APIO跪,HNOI跪却从未想过会在NOIP跪! 没办法自己作死啊,CCF感觉还是很良心的混个省一回来了,看以后 ...

  6. 博客停更转战简书http://www.jianshu.com/u/7ac4047c9cfa

    博客停更转战简书 http://www.jianshu.com/u/7ac4047c9cfa

  7. spring4x,暂时停更

    spring4x,暂时停更 鄙人愚笨,没有spring基础,直接上了spring4x,发现无法理解(另外spring4x实战课本演示不详,本人学识有限),现从spring3开始.

  8. Facebook发布全新JavaScript引擎:Hermes

    摘要: JS引擎开始升级了... 原文:技术栈中的爱马仕?Facebook发布全新JavaScript引擎:Hermes 作者:Carson_Ho Fundebug经授权转载,版权归原作者所有. 前言 ...

  9. Centos搭建PXE,安装部署操作系统

    centos系统搭建PXE网络安装centos+ubuntu+Windows Centos搭建PXE,安装部署操作系统 一 . 原理: 1.什么是PXE: PXE(Pre-boot Execution ...

随机推荐

  1. 学习Spring5必知必会(1)~未使用spring前的麻烦

    一.未使用spring前的麻烦 开闭原则:扩展是开放的,但是对于修改是"封闭的". 1.代码耦合度比较高[不符合开闭原则]: public class EmployeeServic ...

  2. Spring Boot AOP 扫盲,实现接口访问的统一日志记录

    AOP 是 Spring 体系中非常重要的两个概念之一(另外一个是 IoC),今天这篇文章就来带大家通过实战的方式,在编程猫 SpringBoot 项目中使用 AOP 技术为 controller 层 ...

  3. GIT学习——天天都在用Git,那么你系统学习过吗?(学习过程)

    你系统学习Git了吗? 学习圣思园张龙老师的Git课程. 使用Mac编程的好处,不是因为Mac长得好看 Git内容学习准备 如果你还没有用Git,就不要写代码了. GitHub仓库的使用. 新员工入职 ...

  4. C# 实例解释面向对象编程中的里氏替换原则

    在面向对象编程中,SOLID 是五个设计原则的首字母缩写,旨在使软件设计更易于理解.灵活和可维护.这些原则是由美国软件工程师和讲师罗伯特·C·马丁(Robert Cecil Martin)提出的许多原 ...

  5. 异常Java

    异常 1.什么是异常 异常指程序运行过程中出现的不期而至的各种状况,如:文件找不到.网络连接失败等 异常发生在程序运行期间,它影响了正常的程序执行流程 public class Demo01 { pu ...

  6. Python中模块调用说明

    1 import test # 导入test模块 2 3 print(test.a) # 使用"模块.变量"调用模块中的变量 4 5 test.hi() # 使用"模块. ...

  7. [VM trunk ports]opensatck VM 单网卡,多VLAN配置

    描述 需求产生场景 1.用户在虚机运行 K8S ,采用 VLAN 模式组网,要求 VM 端口要支持 trunk,支持多个 VLAN 网络数据在同一虚拟网卡上传输. 2.需要动态的增删虚拟机上的网络接口 ...

  8. 【缓存】CPU高速缓存 之MESI 性协议 Gif 动画

    CPU缓存架构 不同的CPU厂商的架构也有些不同,在这里只介绍流行的缓存架构 缓存一致性可以分为三个点: 在进程每个写入运算时都立刻采取措施保证资料一致性 每个独立的运算,假如它造成资料值的改变,所有 ...

  9. Linux Shell脚本_关闭防火墙

    转至:https://blog.csdn.net/weixin_40816738/article/details/105244851 ① 脚本编写创建脚本 vim closeFirewall.sh 添 ...

  10. Java课程设计---Eclipse基本环境配置

    1.设置eclipse编码 2.设置提示