openEuler操作系统及其安装使用

2023-11-19

文章目录

1 目标

了解openEuler操作系统发布件、最小硬件要求、硬件兼容性、关键特性、分类及其命命方式,熟知openEuler操作系统的安装过程。

2 openEuler操作系统介绍

openEuler是一款开源操作系统。当前openEuler内核源于Linux,支持鲲鹏及其它多种处理器,能够充分释放计算芯片的潜能,是由全球开源贡献者构建的高效、稳定、安全的开源操作系统,适用于数据库、大数据、云计算、人工智能等应用场景。同时,openEuler是一个面向全球的操作系统开源社区,通过社区合作,打造创新平台,构建支持多处理器架构、统一和开放的操作系统,推动软硬件应用生态繁荣发展。

openEuler的前身是运行在华为公司通用服务器上的操作系统EulerOS。EulerOS是一款基于Linux内核(目前是基于Linux 5.10版本的内核)的开源操作系统,支持X86和ARM等多种处理器架构,伴随着华为公司鲲鹏芯片的研发,EulerOS理所当然地成为与鲲鹏芯片配套的软件基础设施。

2.1 发布件

openEuler发布件包括ISO发布包虚拟机镜像容器镜像嵌入式镜像repo源

表 1 发布ISO列表

名称 描述
openEuler-22.03-LTS-aarch64-dvd.iso AArch64架构的基础安装ISO,包含了运行最小系统的核心组件
openEuler-22.03-LTS-everything-aarch64-dvd.iso AArch64架构的全量安装ISO,包含了运行完整系统所需的全部组件
openEuler-22.03-LTS-everything-debug-aarch64-dvd.iso AArch64架构下openEuler的调试ISO,包含了调试所需的符号表信息
openEuler-22.03-LTS-x86_64-dvd.iso x86_64架构的基础安装ISO,包含了运行最小系统的核心组件
openEuler-22.03-LTS-everything-x86_64-dvd.iso x86_64架构的全量安装ISO,包含了运行完整系统所需的全部组件
openEuler-22.03-LTS-everything-debuginfo-x86_64-dvd.iso x86_64架构下openEuler的调试ISO,包含了调试所需的符号表信息
openEuler-22.03-LTS-source-dvd.iso openEuler源码ISO
openEuler-22.03-LTS-edge-aarch64-dvd.iso AArch64架构的边缘ISO,包含了运行最小系统的核心组件
openEuler-22.03-LTS-edge-x86_64-dvd.iso x86_64架构的边缘ISO,包含了运行最小系统的核心组件

表 2 虚拟机镜像

名称 描述
openEuler-22.03-LTS-aarch64.qcow2.xz AArch64架构下openEuler虚拟机镜像
openEuler-22.03-LTS-x86_64.qcow2.xz x86_64架构下openEuler虚拟机镜像

img 说明:
虚拟机镜像root用户默认密码为:openEuler12#$,首次登录后请及时修改。

表 3 容器镜像列表

名称 描述
openEuler-docker.aarch64.tar.xz AArch64架构下openEuler容器镜像
openEuler-docker.x86_64.tar.xz x86_64架构下openEuler容器镜像

表 4 嵌入式镜像列表

名称 描述
arm64/aarch64-std/zImage aarch64架构下支持qemu的内核镜像
arm64/aarch64-std/*toolchain-22.03.sh aarch64架构下对应的开发编译链
arm64/aarch64-std/*rootfs.cpio.gz aarch64架构下支持qemu的文件系统
arm32/arm-std/zImage arm架构下支持qemu的内核镜像
arm32/arm-std/*toolchain-22.03.sh arm架构下对应的开发编译链
arm32/arm-std/*rootfs.cpio.gz arm架构下支持qemu的文件系统
source-list/manifest.xml 构建使用的源码清单

表 5 repo源列表

目录 描述
ISO 存放ISO镜像
OS 存放基础软件包源
debuginfo 存放调试包源
docker_img 存放容器镜像
virtual_machine_img 存放虚拟机镜像
embedded_img 存放嵌入式镜像
everything 存放全量软件包源
extras 存放扩展软件包源
source 存放源码软件源
update 存放升级软件包源
EPOL 存放openEuler扩展包

2.2 最小硬件要求

安装 openEuler 22.03-LTS 所需的最小硬件要求如表6所示。

表 6 最小硬件要求

部件名称 最小硬件要求
CPU 鲲鹏 920(架构为AArch64)x86-64(Skylake以上)
内存 不小于8GB
硬盘 不小于120GB

2.3 硬件兼容性

openEuler已验证支持的服务器和各部件典型配置请参见表7。openEuler后续将逐步增加对其他服务器的支持,也欢迎广大合作伙伴/开发者参与贡献和验证。openEuler当前支持的服务器可见兼容列表

表 7 支持的服务器及典型配置

厂商 服务器名称 服务器具体型号 部件名称 典型配置
华为 TaiShan 200 2280均衡型 CPU Kunpeng 920
内存 32G*4 2933MHz
RAID卡 LSI SAS3508
网络 SF221Q
华为 FusionServer Pro 2288H V5(机架服务器) CPU Intel® Xeon® Gold 5118 CPU @ 2.30GHz
内存 32*4 2400MHz
RAID卡 LSI SAS3508
网络 X722

2.4 关键特性

2.4.1 openEuler 22.03-LTS基于 Linux Kernel 5.10 内核构建, 在进程调度、内存管理等方面带来10余处创新

深度优化调度、IO、内存管理,提供Arm64、x86、RISC-V等更多算力支持。

  • 内核动态抢占,新增启动选项preempt=none/voluntary/full,允许内核动态切换抢占模式。
  • mremap性能优化,通过移动 PMD/PUD 级别的表项,加速映射大块内存的速度。
  • per memcg lru lock,采用per memcg lru_lock,减少云原生容器实例锁竞争,提升系统性能。
  • 大页内存管理优化,通过共享映射方式将HugeTLB管理页中无实际作用的tail页释放掉,从而降低管理结构的开销,降低大页管理自身内存占用。
  • TLB并发刷新支持,本地TLB和远端TLB刷新并行,优化TLB shootdown流程加速TLB刷新,提升业务性能。
  • 大页vmalloc性能优化,对于超过huge page的最小size的空间进行vmalloc()分配时,将会尝试使用 huge page 而不是 base page来映射内存,可以大大改善 TLB 的利用,降低TLB miss。
  • UCE容错, 系统运行时,内核态触发硬件内存错误的处理方式是无差别的内核panic,基于分析,部分场景的影响仅仅是用户态进程的运行受到影响,我们可以通过杀死用户态进程并隔离出错页面,而不必通过系统panic来处理内存错误。基于此思路,针对uaccess场景(copy_{from, to}_user, {get, put}_user)、cow场景、coredump场景提供解决方案,避免此情况下的系统复位,提升系统可靠性。

2.4.2 新介质文件系统

  • Eulerfs,Eulerfs创新元数据软更新技术(Soft Update),基于指针的目录双视图计数机制,减少元数据同步开销,有效提升文件系统create、unlink、mkdir、rmdir系统调用性能。

2.4.3 内存分级扩展

支持多种内存、存储介质扩展系统内存容量,降低内存使用成本。新增用户态交换支持。

  • 用户态交换(新增),通过etMem的策略配置,对于淘汰的冷内存,通过用户态swap功能交换到用户态存储中,达到用户无感知,性能优于内核态swap。

2.4.4 用户态协议栈

新增gazelle用户态协议栈,无需应用程序修改和重新编译,即可使用,支撑上层业务获得高性能、低时延的网络传输

  • gazelle 用户态协议栈,基于dpdk和lwip,实现支持无锁、多线程的高性能用户态协议栈,加速应用程序的网络性能,无需修改适配和重新编译,即可使用。

2.4.5 云原生调度增强

在云业务场景中,交互类延时敏感在线业务存在潮汐现象,CPU资源利用率普遍较低(不足15%),在线和离线业务混合部署是提升资源利用率的有效方式。现有的内核资源分配和管理机制。

  • QAS(Quality aware scheduler),可以确保在线任务对CPU的快速抢占,确定性的调度运行,同时压制离线任务干扰。
  • OOM回收支持优先级,优化OOM时内存回收调度算法,在发生OOM时,优先对低优先级的进程组进行内存回收,保障在线业务的正常运行。
  • 容器混合部署框架,对k8s集群下的混合部署,openEuler用户仅需给业务打上在线或离线的标签,系统即能自动感知业务的创建,并根据业务优先级配置,实现资源的隔离和抢占。

2.4.6 QEMU热补丁机制

  • 支持libcareplus热补丁机制,提供一种在线修复进程bug的技术,使得QEMU进程能够在不影响虚机业务的情况下,在线解决QEMU进程bug。

2.4.7 KubeOS

容器化操作系统KubeOS,实现云原生集群OS的统一容器化管理。

  • OS容器化管理,对接K8S容器和OS统一管理,原子化的生命周期管理。
  • OS轻量化裁剪,减少不必要的冗余包,可实现快速升级、替换等。

2.4.8 轻量安全容器增强

基于Stratovirt轻量虚拟化技术,实现容器级别的低负载和虚拟机高安全。

  • 支持UEFI启动,支持UEFI启动、ACPI表的构建以及为虚拟机添加包括virtio-pci在内的PCIe/PCI设备。
  • 支持VFIO,提供将host上物理设备直通给虚拟机的能力,使虚拟机获得接近裸设备的高性能。
  • 支持直通设备热插拔,支持virtio-blk-pci、virtio-net-pci和VFIO等设备的热插拔,有效避免更换外设引起的系统停机和业务中断。

2.4.9 iSulad增强

  • shimv2,shimv2 收编了 kata-runtime,kata-shim, kata-proxy进程,通过加载⼀次运⾏时并通过 RPC 调⽤来处理各种容器,⽣命周期管理命令来简化体系结构,不必为每个容器⼀直运⾏⼀个容器运⾏时

2.4.10 eggo支持容器管理双平面部署

eggo是openEuler云原生Sig组K8S集群部署管理项目,提供高效稳定的集群部署的能力。

  • 集群配置版本化管理,配置统一Git repo
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

openEuler操作系统及其安装使用 的相关文章

  • Linux C++ 错误:未定义对“dlopen”的引用

    我在 Linux 上使用 C Eclipse 工作 并且想要使用一个库 Eclipse 向我显示一个错误 undefined reference to dlopen 你知道解决办法吗 这是我的代码 include
  • 确定 TCP Listen() 队列中当前积压的连接数

    有没有办法找出currentLinux 上 TCP 套接字上等待 Accept 的连接尝试次数 我想我可以在每个事件循环上点击 EWOULDBLOCK 之前计算成功的 Accept 数量 但我使用的是隐藏这些细节的高级库 Python Tw
  • Xvfb 冻结初始化 GLX 扩展

    我正在尝试运行无头 Xvfb 服务器来捕获 Amazon EC2 micro 上的屏幕截图 但它在 GLX 上陷入了困境 我使用此脚本安装了 GLX Xvfb 和所有库 https gist github com joekiller 414
  • 何时用引号将 shell 变量括起来?

    我应该或不应该在 shell 脚本中用引号括住变量吗 例如 下列说法正确的是 xdg open URL eq 2 or xdg open URL eq 2 如果是这样 为什么 一般规则 如果它可以为空或包含空格 或实际上任何空格 或特殊字符
  • 如何在 Vim 中突出显示 Bash 脚本?

    我的 Vim 编辑器自动突出显示 PHP 文件 vim file php HTML 文件 vim file html 等等 但是当我输入 vim file在里面写一个Bash脚本 它不会突出显示它 我如何告诉 Vim 将其突出显示为 Bas
  • 如何通过 makefile 在 Linux 上安装程序? [复制]

    这个问题在这里已经有答案了 可能的重复 Linux Unix make install 应该包含什么 https stackoverflow com questions 528399 what should linux unix make
  • PIL 的 Image.show() 带来*两个*不同的查看器

    在 python shell 中处理图像时 我使用 image show 其中 image 是 Image 的实例 很久以前什么也没发生 但在定义了一个名为 xv 的 Mirage 符号链接后 我很高兴 最近几天 show 将显示 Imag
  • Linux中如何避免sleep调用因信号而中断?

    我在 Linux 中使用实时信号来通知串行端口中新数据的到达 不幸的是 这会导致睡眠呼叫在有信号时被中断 有人知道避免这种行为的方法吗 我尝试使用常规信号 SIGUSR1 但我不断得到相同的行为 来自 nanosleep 联机帮助页 nan
  • 对于任何真实数据集,数据压缩比的最小可能值是多少

    我在写信ZLIB类似于嵌入式硬件压缩器的 API 它使用 deflate 算法来压缩给定的输入流 在进一步讨论之前 我想解释一下数据压缩率 数据压缩率定义为未压缩大小与压缩大小之间的比率 压缩比通常大于一 这意味着压缩数据通常比未压缩数据小
  • Bash:将字符串添加到文件末尾而不换行

    如何将字符串添加到文件末尾而不换行 例如 如果我使用 gt gt 它将添加到文件末尾并换行 cat list txt yourText1 root host 37 echo yourText2 gt gt list txt root hos
  • 链接错误:命令行中缺少 DSO

    我对 Linux 使用 Ubuntu 14 04 LTS 64 位 相当陌生 来自 Windows 并且正在尝试移植我现有的 CUDA 项目 当通过链接时 usr local cuda bin nvcc arch compute 30 co
  • 正则表达式删除块注释也删除 * 选择器

    我正在尝试使用 bash 从 css 文件中删除所有块注释 我有以下 sed 命令的正则表达式 sed r s w s w d 这可以很好地去除块注释 例如 This is a comment this is another comment
  • 如何从 C++ 程序中重新启动 Linux?

    我有一个 Qt 4 GUI 我需要在下拉菜单中提供一个选项 允许用户选择重新启动计算机 我意识到这对于以其他方式重新启动计算机的能力来说似乎是多余的 但选择需要保留在那里 我尝试使用 system 来调用以下内容 suid root she
  • 如何在线程创建和退出时调用函数?

    include
  • Linux 使用 boost asio 拒绝套接字绑定权限

    我在绑定套接字时遇到问题 并且以用户身份运行程序时权限被拒绝 这行代码会产生错误 acceptor new boost asio ip tcp acceptor io boost asio ip tcp endpoint boost asi
  • ioctl 命令的用户权限检查

    我正在实现 char 驱动程序 Linux 并且我的驱动程序中有某些 IOCTL 命令仅需要由 ADMIN 执行 我的问题是如何在 ioctl 命令实现下检查用户权限并限制非特权用户访问 IOCTL 您可以使用bool capable in
  • 批量删除文件名中包含 BASH 中特殊字符的子字符串

    我的目录中有一个文件列表 opencv calib3d so2410 so opencv contrib so2410 so opencv core so2410 so opencv features2d so2410 so opencv
  • SSH,运行进程然后忽略输出

    我有一个命令可以使用 SSH 并在 SSH 后运行脚本 该脚本运行一个二进制文件 脚本完成后 我可以输入任意键 本地终端将恢复到正常状态 但是 由于该进程仍在我通过 SSH 连接的计算机中运行 因此任何时候它都会登录到stdout我在本地终
  • 相当于Linux中的导入库

    在 Windows C 中 当您想要链接 DLL 时 您必须提供导入库 但是在 GNU 构建系统中 当您想要链接 so 文件 相当于 dll 时 您就不需要链接 为什么是这样 是否有等效的 Windows 导入库 注意 我不会谈论在 Win
  • 如何使用 JSch 将多行命令输出存储到变量中

    所以 我有一段很好的代码 我很难理解 它允许我向我的服务器发送命令 并获得一行响应 该代码有效 但我想从服务器返回多行 主要类是 JSch jSch new JSch MyUserInfo ui new MyUserInfo String

随机推荐

  • iPhone苹果15手机怎么看是国行还是美版或港版的苹果iPhone15手机?

    iPhone苹果手机15机型区域版本识别代码 CH代码为国行 LL代码为美版 ZP代码为港版 iPhone苹果15手机怎么看是国行还是美版或港版的苹果iPhone15手机 1 打开苹果iPhone15手机桌面上的 设置 2 在iPhone苹
  • OWASP ZAP安装遇到Error.A JNI error has occurred ,please check your installation and try again

    问题描述 我当时下载的是兼容版本 下载完成后双击zap bat发现运行一下就闪退 然后运行jar文件就报错 过程 最开始以为是java环境的问题 后面用java version去运行了一下 发现java环境是正常的 但又一直提示java的问
  • 4大技术亮点支撑应用优势 全新一代旗舰型行业无人机千巡翼X4发布

    随着无人机与数字成像技术的发展 无人机航测成为了重要的地理信息采集手段 也越来越受重视 据相关研报数据统计 预计2025年我国实景三维在自然资源领域的 以数据采集 处理为主的直接市场规模预计将达40亿元 推测2025年关联市场规模将达400
  • MFC设置控件文本字体、大小、颜色、背景

    1 修改字体 大小 声明一个CFont类型的类成员变量 CFont m editFont 然后在类的初始化函数OnInitDialog 中添加以下两行代码 设置静态文本字体大小 m editFont CreatePointFont 180
  • MFC编程实验(三):组件(列表框元素的增删)

    一 实验要求 创建一个对话框应用程序 实现如下布局 完成如下功能 1 初始状态 列表中有4个元素 2 可以在编辑框中输入新朋友的名字 点击 添加 按钮添加到列表框 同时清空编辑框中的名字 3 选中列表框中的一个名字 点击 删除 按钮可以删除
  • GDB 简略手册

    杂项 命令 用法 说明 h elp help 显示可用帮助文档 h CMD 显示关于指定命令的帮助 apr opos apr REGEXP 使用正则表达式搜索命令 i nfo info 显示可展示的信息 ENTER 无命令回车 重复执行上一
  • 接口测试总结

    第一部分 主要从问题出发 引入接口测试的相关内容并与前端测试进行简单对比 总结两者之前的区别与联系 但该部分只交代了怎么做和如何做 并没有解释为什么要做 第二部分 主要介绍为什么要做接口测试 并简单总结接口持续集成和接口质量评估相关内容 第
  • 手写系列之--call/apply/bind/防抖/节流

    call call 方法使用一个指定的 this 值和单独给出的一个或多个参数来调用一个函数 语法 function call thisArg arg1 arg2 JavaScript中由于函数的this指向它的直接调用者 我们变更调用者即
  • 1668 最大重复子字符串

    题目描述 给你一个字符串 sequence 如果字符串 word 连续重复 k 次形成的字符串是 sequence 的一个子字符串 那么单词 word 的 重复值为 k 单词 word 的 最大重复值 是单词 word 在 sequence
  • 第48讲 第49讲--动态定位单元格区域1-End属性、动态定位单元格区域2、3-Currentregion UsedRange

    1 单元格区域 EntireRow返回该区域所在的整行对象单元格区域 EntireColumn返回该区域所在的整列 返回单元格所在的整行与整列 返回单元格对象 EntireRow 与EntireColumn Sub 整行与整列 Range
  • 制作一个“生日快乐”App,来自程序员的生日礼物~

    点击上方 码农的后花园 选择 星标 公众号 精选文章 第一时间送达 之前给大家制作了一个来自程序员的表白神器 本期带大家做一个 生日快乐 App 来自程序员的生日礼物 不要再说程序员不懂浪漫咯 往期精彩 Android App 开发的三种姿
  • hibernate 异常

    1 异常 org hibernate AnnotationException No identifier specified for entity异常 entity类是必须要主键的 否则就会报出这个异常 Id GeneratedValue
  • 布隆过滤器的简单介绍与实例(Bloom Filter)

    转载https blog csdn net leeafay article details 78681534 布隆在1970年提出了布隆过滤器 Bloom Filter 是一个很长的二进制向量 可以想象成一个序列 和一系列随机映射函数 ha
  • TensorFlow.js - 使用 CNN(卷积神经网络) 识别手写数字

    目录 index html data js script js 备注 参考文献 index html
  • ChatGPT是免费的吗?

    ChatGPT并非由单个实体或公司所拥有和控制 而是由OpenAI推出和维护的人工智能技术 其可以被免费使用 OpenAI提供API服务和开发者工具 可以让开发者和用户将ChatGPT集成到自己的应用程序中 虽然使用ChatGPT本身是免费
  • Nginx配置整合:基本概念、命令、反向代理、负载均衡、动静分离、高可用

    一 基本概念 1 什么是Nginx Nginx是一个高性能的HTTP和反向代理服务器 也是一个IMAP POP3 SMTP代理server 其特点是占有内存少 并发能力强 其并发能力确实在同类型的网页server中表现较好 http服务器
  • 飞腾D2000 UOS下安装KVM虚拟机

    其他的和x86环境都差不多 开了开发者模式后 virt manager qemu efi aarch64 qemu system 几个包补齐 启动libvirtd服务 查看日志 报以下日志 4月 09 21 13 34 actionchen
  • JAVA虚拟机灵魂之问:Xmx和Xms不一致对虚拟机性能有何影响

    使用jvisualVM查看idea进程 发现其关于堆大小的参数设置如下 并发现随着idea加载项目 其实际使用的内存会自动增大 加载项目前和加载项目后 堆大小是不一样的 有一个大幅提升的阶段 随着所需要的内存的增多 虚拟机会多次向操作系统申
  • FreeBSD配置ip和开启SSH

    首先ifconfig a 看下网卡名称 然后vi etc rc conf 我先贴下我的图吧 主要是 ifconfig le0这个的 set ip ifconfig le0 inet 192 168 1 213 netmask 255 255
  • openEuler操作系统及其安装使用

    文章目录 1 目标 2 openEuler操作系统介绍 2 1 发布件 2 2 最小硬件要求 2 3 硬件兼容性 2 4 关键特性 2 4 1 openEuler 22 03 LTS基于 Linux Kernel 5 10 内核构建 在进程