RHCE--web服务器②
基于https协议的静态网站
HTTPS并不是一个新协议,而是HTTP+SSL(TLS)。原本HTTP先和TCP(假定传输层是TCP协议)直接通信,而加了SSL后,就变成HTTP先和SSL通信,再由SSL和TCP通信,相当于SSL被嵌在了HTTP和TCP之间

-
SSL 是“Secure Sockets Layer”的缩写,中文叫做“安全套接层”
使用nginx的http_ssl模块建立加密认证网站
查看
nginx -V
# 看是否有--with-http_ssl_module模块,否则需要安装mod_ssl
配置文件:
- 证书文件:/....../xxxx.crt
- 私钥文件:/...../xxxx.key
ssl配置文件的主要参数

实验1:搭建nginx+ssl的加密认证web服务器
第一步:准备工作
# 恢复快照
[root@server ~]# setenforce 0
[root@server ~]# systemctl stop firewalld
[root@server ~]# systemctl disable firewalld
[root@server ~]# yum install nginx -y
[root@server ~]# systemctl start nginx # 启动
[root@server ~]# systemctl enable nginx # 设置开机启动
第二步:新建存储网站数据文件的目录
mkdir -p /www/zy
第三步:制作自签名证书
[root@server ~]# openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /www/zy.key -out /www/zy.crt
Generating a RSA private key
.+++++
........................................................+++++
writing new private key to '/www/zy.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
# 注意:下列证书信息项目,在面试时常问
Country Name (2 letter code) [AU]:86 # 国家代码
State or Province Name (full name) [Some-State]:shanxi # 省份
Locality Name (eg, city) []:xi'an # 城市
Organization Name (eg, company) [Internet Widgits Pty Ltd]:openlab# 公司
Organizational Unit Name (eg, section) []:RHCE # 部门
Common Name (e.g. server FQDN or YOUR name) []:server # 主机名
Email Address []:andy@qq.com # 邮箱
命令解释
openssl:工具名:生成证书、密钥的系统工具,几乎所有 Linux 都自带
req:请求生成证书,告诉 openssl 我要创建一个证书请求文件
-x509:最重要!,直接生成【自签名证书】,不是给 CA 机构签名,你自己当证书颁发机构
-nodes:私钥不加密,不加这个,Nginx 启动时要你输密码,很麻烦
-days 365:证书有效期:1年
-newkey rsa:2048:同时生成新的私钥
第五步:修改配置文件
[root@server ~]# vim /etc/nginx/nginx.conf
server {
listen 443 ssl http2;
server_name 192.168.48.130;
root /www/zy;
ssl_certificate /www/zy.crt;
ssl_certificate_key /www/zy.key;
}
server { # 输入http跳转到https
listen 80;
server_name 192.168.48.130;
return 301 https://192.168.48.130;
}
第六步:重启服务
[root@server ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@server nginx]# systemctl restart nginx
第七步:测试
# 在windows端打开浏览器,输入https://192.168.88.151,点击高级->接受风险并继续
实验2组建多个子目录网站www.openlab.com,该网站有2个子目录www.openlab.com/file和www.openlab.com/ftp,要求:
-
file数据使用http读取
-
ftp数据使用https读取
第一步:准备工作
# 恢复快照
[root@server ~]# setenforce 0
[root@server ~]# systemctl stop firewalld
[root@server ~]# systemctl disable firewalld
[root@server ~]# yum install nginx -y
[root@server ~]# systemctl start nginx # 启动nginx
[root@server ~]# systemctl enable nginx # 设置开机启动
第二步:新建网页目录并建立网页信息
[root@server ~]# mkdir -p /www/file
[root@server ~]# mkdir -p /www/ftp
[root@server ~]# echo "file" > /www/file/index.html # 写入网站数据
[root@server ~]# echo "ftp" > /www/ftp/index.html
第三步:建立本地hosts域名映射
[root@server ~]# vim /etc/hosts # 添加如下内容
192.168.48.130 www.openlab.com
第四步:建立file网站
[root@server ~]# vim /etc/nginx/nginx.conf
server {
listen 80;
listen [::]:80;
server_name www.openlab.com;
location /file {
alias /www/file/;
index index.html index.htm;
}
location /ftp {
alias /www/ftp/;
index index.html index.htm;
}
ssl_certificate "/www/ftp/ftp.crt";
ssl_certificate_key "/www/ftp/ftp.key";
第五步:建立https的ftp网站
制作私钥:
# 制作私钥
[root@server ~]# openssl genrsa -aes128 2048 > /www/ftp/ftp.key
# 制作证书
[root@server ~]# openssl req -utf8 -new -key /www/ftp/ftp.key -x509 -days 365 -out /www/ftp/ftp.crt
在加载SSL支持的Nginx并使用上述私钥时除去必须的口令
[root@server ~]# openssl rsa -in /www/ftp/ftp.key.org -out /www/ftp/ftp.key
编辑配置文件
[root@server ~]# vim /etc/nginx/nginx.conf
server {
listen 443 ssl http2;
server_name www.openlab.com;
location /ftp {
alias /www/ftp/;
index index.html index.htm;
}
ssl_certificate "/www/ftp/ftp.crt";
ssl_certificate_key "/www/ftp/ftp.key";
}
第六步:重启服务
[root@server ~]# systemctl restart nginx
第七步:测试
输入www.openlab.com/file/
输入https://www.openlab.com/ftp/,点击高级->接受风险并继续
实验3:使用腾讯数字证书搭建https网站
登录控制控制台,选择SSL 证书

选择免费证书,并申请



-
验证域名



-
添加解析记录,上图可以多刷新一下,稍后会有,点击解析,点击添加记录,将证书控制台的信息粘贴过来



-
等待,稍后验证域名即可,之后下载证书及私钥,得到一个压缩文件



解压缩,后将证书(crt)和私钥(key)上传到linux系统中用于搭建https网站
[root@master ~]# tree -L 1 /www
/www
├── 17674044.xyz_bundle.crt
├── 17674044.xyz.key
└── zy
部署网站
[root@master ~]# vim /etc/nginx/nginx.conf
server {
listen 443 ssl http2;
server_name 17674044.xyz;----买的公网域名
root /www/zy;
ssl_certificate "/www/17674044.xyz_bundle.crt"; ---证书位置
ssl_certificate_key "/www/17674044.xyz.key"; ----秘钥位置
}
[root@master ~]# systemctl restart nginx
# 本地hosts解析 ,注意写>>为追加
[root@master ~]# echo "192.168.88.133 17674044.xyz" >> /etc/hosts
测试:
[root@master ~]# curl -Ik https://17674044.xyz
HTTP/2 200
server: nginx/1.21.5
date: Sat, 16 May 2026 05:12:56 GMT
content-type: text/html
content-length: 30159
last-modified: Sat, 16 May 2026 05:07:22 GMT
etag: "6a07fb8a-75cf"
accept-ranges: bytes
Windows添加hosts映射后测试


实验4:使用LNMP搭建私有云存储
搭建LNMP环境
[root@server ~]# yum install nginx mariadb-server php* -y
上传软件
使用xftp将nextcloud-25.0.1.zip软件压缩包上传到Linux的根目录,并解压缩

[root@server ~]# cd /
[root@server /]# unzip /nextcloud-25.0.1.zip
设置nextcloud安装命令权
[root@server /]# chmod -Rf 777 /nextcloud
设置数据库

重启数据库
[root@server /]# systemctl restart mariadb
配置nginx

重启nginx服务
[root@server /]# systemctl start nginx
安装
-
打开浏览器后输入服务器IP地址,进入nextcloud安装向导
-
管理员的用户名即密码自定
-
存储与数据库:选择MySQL/MariaDB,设置数据库用户为nextcloud,密码:123456,数据库名:nextcloud,主机名:localhost

内网穿透
cpolar的域名信任
[root@server ~]# vim /nextcloud/config/config.php
# 按照下面的内容对源文件进行修改
<?php
$CONFIG = array (
'instanceid' => 'ocvy7jm0iqom',
'passwordsalt' => 'jLg0GXwJtlj8vowMsLpN5MbBSRsoiC',
'secret' => 'ayTVaC6dsHrSKgXazVP6llFMWdNVxjF582v5pAPKuyEecdTU',
'trusted_domains' =>
array (
0 => '192.168.48.130',
1 => '2dc0afad.r17.cpolar.top', # 需添加
),
'datadirectory' => '/nextcloud/data',
'dbtype' => 'mysql',
'version' => '25.0.1.1',
'overwrite.cli.url' => 'http://192.168.48.130',
'dbname' => 'nextcloud',
'dbhost' => 'localhost',
'dbport' => '',
'dbtableprefix' => 'oc_',
'mysql.utf8mb4' => true,
'dbuser' => 'nextcloud',
'dbpassword' => '123456',
'installed' => true,
);
# 保存退出后重试
NFS服务器 Linux-Linux
NFS(Network File System,网络文件系统)是FreeBSD支持的文件系统中的一种,它允许网络中的计算机(不同的计算机、不同的操作系统)之间通过TCP/IP网络共享资源,主要在unix系列操作系统上使用。
NFS服务器可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文件系统中,而在本地端的系统中看来,那个远程主机的目录就好像是自己的一个磁盘分区一样。
RPC(Remote Procedure Call,远程过程调用):由于服务器在启动NFS时会随机选取数个端口号,并主动向RPC注册,所以RPC知道每个NFS功能所对应的端口号,RPC将端口号通知给客户端,让客户端可以连接到正确的端口上去。RPC采用固定端口号port 111来监听客户端的需求并向客户端响应正确的端口号。
注:在启动NFS之前,要先启动RPC,否则NFS会无法向RPC注册。另外,RPC若重新启动,原来注册的数据会消失不见,因此RPC重启后,它管理的所有服务都需要重新启动以重新向RPC注册。
NFS工作原理
示例图

流程
-
首先服务器端启动RPC服务,并开启111端口
-
服务器端启动NFS服务,并向RPC注册端口信息
-
客户端启动RPC(portmap服务),向服务端的RPC(portmap)服务请求服务端的NFS端口
-
服务端的RPC(portmap)服务反馈NFS端口信息给客户端。(服务器搭建成功后可以使用下列命令查看,一般都是2049)
NFS的使用
安装
[root@server ~]# yum install nfs-utils -y
[root@server ~]# yum install rpcbind -y # 默认已安装
配置文件
-
主配置文件:/etc/exports , 文件不一定存在
-
/usr/sbin/exportfs : 该文件是维护NFS共享目录资源的命令文件,可以使用命令重新共享/etc/exports的目录资源、卸载共享目录
-
日志目录:/var/lib/nfs
-
权限设置文件:/var/lib/nfs/etab
主配置文件分析
-
/etc/exports 文件默认为空文件,需要输入nfs共享命令
-
格式:共享目录的路径 ==允许访问的NFS客户端==(共享权限参数)
-
分析
-
允许访问的NFS客户端:可以写完整的IP地址或IP网段,如:
-
192.168.88.151/24
-
192.168.88.151/255.255.255.0
-
192.168.88.0/24
-
*: 允许所有主机都可以访问
-
-
权限参数:必须写在园括号中,且括号是紧挨着主机名的,全选的相关参数如下,多个参数之间使用逗号隔开:
-
| 权限参数 | 作用 |
|---|---|
| ro | 只读 |
| rw | 读写(最终还要看文件系统rwx权限) |
| root_squash | 当NFS客户端以root账户访问时,映射为NFS服务器端的匿名账户(nobody) |
| no_root_squash | 当NFS客户端以root账户访问时,映射为root账户(不推荐、不安全) |
| all_squash | 无论NFS客户端使用什么账户访问,均映射为NFS 服务器的匿名账户(nobody),==推荐== |
| no_all_squash | 客户端普通账户访问服务器的数据时,实际的信息原样显示 |
| anonuid= anongid= | 将文件的用户和工作组映射为指定UID和GID,若不指定则默认为65534(nobody) |
| sync | 同步,同时将数据写入内存与硬盘中,保证数据不会丢失,==推荐== |
| async | 异步,优先将数据保存到内存,然后在写入硬盘,效率高,但可能会数据丢失 |
示例
/home/public *(rw,sync,all_squash) 意义:服务器共享/home/public目录中的数据,所有人都可访问,可读可写,同步传输,账户映射为匿名账户
/home/public 192.168.88.151/24(ro,root_squash,sync) 意义:服务器共享/home/public目录中的数据,只允许192.168.88.151主机访问,方式为只读,客户端root账户映射为服务端的nobody,同步读写
/home/public 192.168.88.0/24(rw,all_squash,anonuid=2000,anongid=2000) 意义:服务器共享/home/public目录中的数据,允许192.168.88.0网段所有主机访问,方式为可读可写,账户映射为nobody,uid为2000,gid为2000
实验1:建立NFS服务器,使客户端顺序共享数据
第一步:服务端及客户端的准备工作
[root@server ~]# setenforce 0
[root@server ~]# systemctl stop firewalld
[root@server ~]# yum install nfs-utils -y # 服务端及客户端都安装
第二步:服务端建立共享文件目录,并设置权限

第三步:服务端编辑配置文件
[root@server ~]# vim /etc/exports # 添加以下内容
/nfsfile 192.168.88.151/24(rw,sync,all_squash)-----客户端ip
第四步:服务端先启动rpc服务,在启动nfs服务

# 注意:若systemctl start rpcbind后报错,显示启动失败,应先停止服务,在重启服务
[root@server ~]# systemctl stop rpcbind
[root@server ~]# systemctl start rpcbind
第五步:客户端使用本地挂载方式访问远程共享目录
- 先查询有哪些远程目录可用,ip是服务端ip

新建本地挂载目录
# 使用mount远程挂载命令挂载服务器的目录到客户端本地目录,-t nfs 表示使用的文件系统类型


第六步:客户端使用开机挂载实现永久挂载
[root@node1 ~]# vim /etc/fstab


NFS账户映射
实验2:
基于上例,将/nfsfile权限修改后,查看客户端是否可以访问成功,是否可以修改数据
- 定位服务端
- 确认是否为rw可读可写的权限

- 设置新权限,没有wx

- 定位客户端
显示无权限,及时服务端exports中又rw权限最终还是以文件系统权限为准

实验3
- 客户端访问服务端,默认使用服务端的账户映射为nobody,uid与gid均为65534,其值可以修改
# 定位服务端
[root@server ~]# chmod -Rf 777 /nfsfile # 先将上例的权限修改回原样
[root@server ~]# ll -d /nfsfile/
drwxrwxrwx 2 root root 37 6月 1 14:56 /nfsfile/
[root@server ~]# vim /etc/exports # 修改映射方式为
![]()
[root@server ~]# systemctl restart rpcbind
[root@server ~]# systemctl restart nfs-server
定位客户端
[root@node1 ~]# cd /nfs1
[root@node1 nfs1]# touch test2.txt
[root@node1 nfs1]# ll
总用量 4
-rwxrwxrwx 1 root root 27 6月 1 14:43 readme
-rwxrwxrwx 1 nobody nobody 0 6月 1 14:56 test1.txt
-rw-r--r-- 1 nobody nobody 0 6月 1 15:15 test2.txt # root映射为nobody
[root@node1 nfs1]# su fox
[fox@node1 nfs1]$ touch test3.txt
[fox@node1 nfs1]$ ll
总用量 4
-rwxrwxrwx 1 root root 27 6月 1 14:43 readme
-rwxrwxrwx 1 nobody nobody 0 6月 1 14:56 test1.txt
-rw-r--r-- 1 nobody nobody 0 6月 1 15:15 test2.txt
-rw-rw-r-- 1 fox fox 0 6月 1 15:16 test3.txt # fox映射为fox
定位服务端
[root@server ~]# vim /etc/exports

定位客户端

autofs自动挂载服务
产生原因
-
在一般NFS文件系统的使用过程中,如果客户端要使用服务端所提供的文件系统,可以在
/etc/fstab中设置开机时自动挂载,也可以在登录系统后手动利用mount来挂载。 -
由于网络的问题,NFS服务器与客户端的连接不会一直存在,当我们挂载了NFS服务器之后,任何一方脱机都可能造成另外一方等待超时,如果在资源挂载后长期不使用,也会造成服务器硬件资源的浪费。
-
为了解决这样的问题,就出现了下面的想法:
-
当客户端在有使用NFS文件系统的需求时才让系统自动挂载。
-
当NFS文件系统使用完毕后(autofs默认自动卸载时间为300s即5分钟),让NFS自动卸载。
-
-
autofs 自动挂载服务可以帮我们解决这一问题,该服务是运行在客户端的一种 Linux 系统守护进程,在用户需要使用该文件系统时才去动态挂载,从而节约了网络资源和服务器的硬件资源。
安装
[root@node1 ~]# yum install autofs -y # 客户端安装
配置文件分析
配置文件路径:/etc/auto.master
-
作用:处于生产环境中的 Linux 服务器,一般会同时管理许多设备的挂载操作。如果把这些设备挂载信息都写入到 autofs 服务的主配置文件中,无疑会让主配置文件臃肿不堪,不利于服务执行效率,也不利于日后修改里面的配置内容,则需要将挂载的设备独立配置形成子文件,主配置文件只存储配置挂载设置的文件名
-
/etc/auto.master文件内容格式:挂载父目录 子配置文件
-
挂载目录:不需要事先存在,因为autofs会主动建立该目录
-
子配置文件:文件名可自定义
-
例:/nfs /etc/auto.nfs
-
/nfs : 监控这个父目录
-
/etc/auto.nfs:单独的挂载规则文件
-
注意:可以在后边增加
--timeout=60参数,即闲置 60 秒自动卸载
-
-
-
子配置文件由自己创建,内容格式:
-
本地挂载子目录 [-挂载参数] 服务器地址:目录
-
例:testmnt 192.168.48.130:/data
-
testmnt: 会在
/nfs下自动生成该目录,最终的路径为: /nfs/testmnt 目录
-
-
实验4
服务器端创建共享目录,客户端实现自动挂载
- 第一步:服务端及客户端都恢复快照,关闭安全软件,安装软件
# 恢复快照
[root@server ~]# setenforce 0
[root@server ~]# systemctl stop firewalld
[root@server ~]# yum install nfs-utils -y # 服务端及客户端都安装
[root@node1 ~]# yum install nfs-utils autofs -y # 客户端安装
- 第二步:定位服务端,编辑nfs配置文件,新建共享目录,并设置权限
[root@server ~]# mkdir /data
[root@server ~]# vim /etc/exports
/data *(rw,sync,all_squash)
[root@server ~]# chmod -Rf 777 /data
[root@server ~]# echo "this is test" > /data/file.txt
[root@server ~]# ls /data
file.txt
- 第三步:定位服务端,启动服务,必须先启动rpcbind服务
[root@server ~]# systemctl start rpcbind
[root@server ~]# systemctl start nfs-server
[root@server ~]# systemctl enable rpcbind
[root@server ~]# systemctl enable nfs-server
Created symlink /etc/systemd/system/multi-user.target.wants/nfs-server.service → /usr/lib/systemd/system/nfs-server.service.
- 第四步:定位客户端,编辑自动挂载配置文件
# 设计自动挂载本地目录:/nfs/testmnt
[root@node1 ~]# vim /etc/auto.master # 编辑自动挂载配置文件,定位第7行,输入
/nfs /etc/auto.nfs
# /nfs为本地挂载路径的父目录,可以不用创建,autofs回自动创建,auto.nfs为自配置文件,名称自定义

# 查看共享信息
[root@node1 ~]# showmount -e 192.168.48.130
Export list for 192.168.48.130:
/data *
# 编辑自动挂载的子配置文件
[root@node1 ~]# vim /etc/auto.nfs # 书写本地挂载目录的子目录及远程共享目录
testmnt 192.168.48.130:/data
- 第五步:定位客户端,启动服务
[root@node1 ~]# systemctl start autofs
[root@node1 ~]# systemctl enable autofs
Created symlink /etc/systemd/system/multi-user.target.wants/autofs.service → /usr/lib/systemd/system/autofs.service.
- 第六步:定位客户端,测试
[root@node1 ~]# df -h # 查看挂载信息
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 968M 0 968M 0% /dev/shm
tmpfs 388M 9.4M 378M 3% /run
/dev/mapper/rhel-root 16G 4.2G 12G 27% /
/dev/nvme0n1p1 395M 235M 160M 60% /boot
tmpfs 194M 92K 194M 1% /run/user/0
/dev/sr0 8.5G 8.5G 0 100% /run/media/root/RHEL-9-1-0-BaseOS-x86_64
[root@node1 ~]# cd /nfs # 进入本地挂载目录,会自动新建
[root@node1 nfs]# ls
[root@node1 nfs]# cd testmnt # 进入本地挂载目录的下级目录,会触发自动挂载
[root@node1 testmnt]# ls
file.txt
[root@node1 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 968M 0 968M 0% /dev/shm
tmpfs 388M 9.4M 378M 3% /run
/dev/mapper/rhel-root 16G 4.2G 12G 27% /
/dev/nvme0n1p1 395M 235M 160M 60% /boot
tmpfs 194M 92K 194M 1% /run/user/0
/dev/sr0 8.5G 8.5G 0 100% /run/media/root/RHEL-9-1-0-BaseOS-x86_64
192.168.48.130:/data 16G 4.2G 12G 27% /nfs/testmnt
实验5
本地自动挂载光盘
- 第一步:定位服务端恢复快照,关闭安全软件,安装软件
# 恢复快照
[root@server ~]# setenforce 0
[root@server ~]# systemctl stop firewalld
[root@server ~]# yum install autofs -y # 客户端安装
- 第二步:修改autofs主配置文件
# 设计本地自动挂载目录路径:/media/cdrom
# 定位第7行,输入本地挂载路径的父目录和自配置文件
[root@server ~]# vim /etc/auto.master
/media /etc/iso.aa
- 第三步:编写autofs子配置文件
[root@server ~]# vim /etc/iso.aa
cdrom -fstype=iso9660,ro,nosuid,nodev :/dev/sr0 # 冒号前有空格
# 注意cdrom为挂载路径/media/cdrom的子目录
# -ftype:为文件系统格式
# iso9660:为光盘设备格式
# ro:以只读模式挂载文件系统
# nodev:不解析文件系统上的块特殊设备
# nosuid:禁止suid操作和设定sgid位(SUID 是 Set User ID, SGID 是 Set Group ID的意思)
- 第四步:启动服务
[root@server ~]# systemctl start autofs
[root@server ~]# systemctl enable autofs
Created symlink /etc/systemd/system/multi-user.target.wants/autofs.service → /usr/lib/systemd/system/autofs.service.
- 第五步:测试
[root@server ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 968M 0 968M 0% /dev/shm
tmpfs 388M 9.7M 378M 3% /run
/dev/mapper/rhel-root 16G 4.2G 12G 27% /
/dev/nvme0n1p1 395M 235M 160M 60% /boot
tmpfs 194M 104K 194M 1% /run/user/0
/dev/sr0 8.5G 8.5G 0 100% /run/media/root/RHEL-9-1-0-BaseOS-x86_64
[root@server ~]# cd /media/
[root@server media]# cd cdrom # 触发自动挂载
[root@server cdrom]# ls
AppStream EFI extra_files.json images media.repo RPM-GPG-KEY-redhat-release
BaseOS EULA GPL isolinux RPM-GPG-KEY-redhat-beta
[root@server cdrom]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 968M 0 968M 0% /dev/shm
tmpfs 388M 9.7M 378M 3% /run
/dev/mapper/rhel-root 16G 4.2G 12G 27% /
/dev/nvme0n1p1 395M 235M 160M 60% /boot
tmpfs 194M 104K 194M 1% /run/user/0
/dev/sr0 8.5G 8.5G 0 100% /media/cdrom # 已经自动挂载
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐



所有评论(0)