CentOS Stream 9入门学习教程,从入门到精通,CentOS Stream 9 配置网络功能 —语法详解与实战案例(10)

CentOS Stream 9 配置网络功能 ---语法详解与实战案例


一、了解 VMware 的网络工作模式

VMware 提供三种网络连接模式,适用于不同场景:

模式 说明 适用场景
桥接模式 虚拟机直接连接物理网络,获取独立 IP(如同真实主机) 服务器对外提供服务
NAT 模式 虚拟机通过宿主机 NAT 上网,IP 由 VMware 分配,外部不可直接访问 开发测试、上网
仅主机模式 虚拟机与宿主机组成私有网络,无法访问外网,仅主机间通信 安全隔离、内部集群测试

✅ 生产服务器推荐使用 桥接模式 ,开发测试可使用 NAT 模式


二、配置 VMware 虚拟网络(简要说明)

⚠️ 此部分在宿主机 VMware Workstation / Fusion 中操作:

  1. 打开 VMware → 编辑 → 虚拟网络编辑器
  2. 选择模式(如 VMnet0 桥接、VMnet8 NAT)
  3. 桥接模式:选择正确的物理网卡
  4. NAT 模式:可自定义子网和 DHCP 范围
  5. 仅主机模式:设置私有子网

📌 CentOS Stream 9 虚拟机设置 → 网络适配器 → 选择对应模式即可。


三、配置网络功能


3.1 打开有线连接(启用网卡)

CentOS Stream 9 默认使用 NetworkManager 管理网络,可通过 nmcli 或图形界面操作。

➤ 使用 nmcli 启用连接
bash 复制代码
# 查看所有连接
nmcli connection show

# 启用名为 "Wired connection 1" 的连接
sudo nmcli connection up "Wired connection 1"

# 禁用连接
sudo nmcli connection down "Wired connection 1"

✅ 案例:自动启用第一个有线连接

bash 复制代码
# 获取第一个有线连接名
CONN_NAME=$(nmcli -t -f NAME,TYPE connection show | grep ethernet | head -1 | cut -d: -f1)

if [ -n "$CONN_NAME" ]; then
    echo "🔌 启用连接:$CONN_NAME"
    sudo nmcli connection up "$CONN_NAME"
else
    echo "❌ 未找到有线连接"
fi

3.2 编辑网卡配置文件(静态 IP 配置)

配置文件路径:/etc/NetworkManager/system-connections/

⚠️ 不再使用 /etc/sysconfig/network-scripts/ifcfg-*(RHEL8+ 已废弃)

➤ 查看当前连接配置文件名
bash 复制代码
sudo ls /etc/NetworkManager/system-connections/
# 输出:Wired\ connection\ 1.nmconnection
➤ 手动编辑配置文件(推荐使用 nmcli

✅ 推荐方式:使用 nmcli 配置静态 IP(无需手动编辑文件)

bash 复制代码
# 设置静态 IP(替换为你的连接名、IP、网关、DNS)
CONN_NAME="Wired connection 1"
IP_ADDR="192.168.1.100/24"
GATEWAY="192.168.1.1"
DNS="8.8.8.8,8.8.4.4"

sudo nmcli connection modify "$CONN_NAME" \
    ipv4.addresses "$IP_ADDR" \
    ipv4.gateway "$GATEWAY" \
    ipv4.dns "$DNS" \
    ipv4.method manual

# 重启连接使配置生效
sudo nmcli connection down "$CONN_NAME" && sudo nmcli connection up "$CONN_NAME"

# 验证
ip addr show
nmcli device show

✅ 案例:完整静态 IP 配置脚本(带注释)

bash 复制代码
#!/bin/bash
# 文件名:set_static_ip.sh
# 功能:为指定连接设置静态 IP

CONN_NAME="Wired connection 1"  # 替换为你的连接名
STATIC_IP="192.168.1.100/24"
GATEWAY="192.168.1.1"
DNS_SERVERS="8.8.8.8,8.8.4.4"

echo "⚙️  正在配置静态 IP..."
echo "连接名:$CONN_NAME"
echo "IP地址:$STATIC_IP"
echo "网关:$GATEWAY"
echo "DNS:$DNS_SERVERS"

# 修改连接配置
sudo nmcli connection modify "$CONN_NAME" \
    ipv4.addresses "$STATIC_IP" \
    ipv4.gateway "$GATEWAY" \
    ipv4.dns "$DNS_SERVERS" \
    ipv4.method manual \
    ipv4.ignore-auto-dns yes

# 重启网络连接
echo "🔄 重启网络连接..."
sudo nmcli connection down "$CONN_NAME" 2>/dev/null
sudo nmcli connection up "$CONN_NAME"

# 验证配置
echo "🔍 验证 IP 配置..."
ip addr show | grep -A 2 "$(nmcli device status | grep ethernet | awk '{print $1}')"

echo "🎉 静态 IP 配置完成!"

💡 使用方法:

bash 复制代码
chmod +x set_static_ip.sh
sudo ./set_static_ip.sh

3.3 修改主机 IP 地址与域名快速解析文件

➤ 设置主机名
bash 复制代码
# 临时设置(重启失效)
sudo hostnamectl set-hostname webserver01

# 永久设置(写入 /etc/hostname)
sudo hostnamectl set-hostname webserver01 --static

# 查看当前主机名
hostnamectl
➤ 配置本地域名解析(/etc/hosts)

用于快速解析主机名到 IP,无需 DNS。

bash 复制代码
# 编辑 hosts 文件
sudo vi /etc/hosts

# 添加如下内容(示例):
192.168.1.100   webserver01.local
192.168.1.101   dbserver01.local
192.168.1.102   appserver01.local

✅ 案例:批量添加 hosts 记录脚本

bash 复制代码
#!/bin/bash
# 文件名:add_hosts.sh
# 功能:向 /etc/hosts 添加多条记录

HOSTS=(
    "192.168.1.100 webserver01.local"
    "192.168.1.101 dbserver01.local"
    "192.168.1.102 appserver01.local"
)

echo "📝 正在更新 /etc/hosts..."

for entry in "${HOSTS[@]}"; do
    IP=$(echo $entry | awk '{print $1}')
    HOST=$(echo $entry | awk '{print $2}')
    
    # 检查是否已存在
    if ! grep -q "$HOST" /etc/hosts; then
        echo "$entry" | sudo tee -a /etc/hosts > /dev/null
        echo "✅ 添加:$entry"
    else
        echo "⚠️  已存在:$HOST"
    fi
done

echo "🎉 /etc/hosts 更新完成!"

💡 验证:

bash 复制代码
ping -c 1 webserver01.local
# 应解析为 192.168.1.100

四、常用网络命令


4.1 ip 命令(取代 ifconfig)

功能 命令
查看 IP ip aip addr show
查看路由 ip rip route show
启用网卡 sudo ip link set eth0 up
禁用网卡 sudo ip link set eth0 down

✅ 案例:一键查看本机 IP(排除 lo)

bash 复制代码
ip -4 addr show scope global | grep inet | awk '{print $2}' | cut -d/ -f1

4.2 ping 测试连通性

bash 复制代码
ping -c 4 8.8.8.8
ping -c 1 google.com

4.3 ss 查看连接(取代 netstat)

bash 复制代码
ss -tuln          # 查看监听端口
ss -tulnp         # 显示进程
ss -o state established  # 查看已建立连接

4.4 nmcli 网络管理(推荐)

bash 复制代码
nmcli device status        # 查看设备状态
nmcli connection show      # 查看连接
nmcli general status       # 查看网络管理器状态

五、使用 systemctl 管理服务


5.1 常用命令

命令 说明
systemctl start service 启动服务
systemctl stop service 停止服务
systemctl restart service 重启服务
systemctl enable service 开机自启
systemctl disable service 禁用开机自启
systemctl status service 查看服务状态
systemctl is-active service 检查服务是否运行
systemctl list-unit-files 列出所有服务(含状态)

✅ 案例:管理 sshd 服务

bash 复制代码
# 启动并设置开机自启
sudo systemctl start sshd
sudo systemctl enable sshd

# 查看状态
sudo systemctl status sshd --no-pager

# 重启
sudo systemctl restart sshd

# 检查是否运行
if systemctl is-active --quiet sshd; then
    echo "✅ SSH 服务正在运行"
else
    echo "❌ SSH 服务未运行"
fi

✅ 案例:一键检查并启动多个服务

bash 复制代码
#!/bin/bash
# 文件名:check_services.sh
SERVICES=("sshd" "firewalld" "NetworkManager")

for svc in "${SERVICES[@]}"; do
    if systemctl is-active --quiet "$svc"; then
        echo "✅ $svc 正在运行"
    else
        echo "⚠️  $svc 未运行,正在启动..."
        sudo systemctl start "$svc" && sudo systemctl enable "$svc"
        echo "   → 启动成功"
    fi
done

六、配置和使用 SSH 服务


6.1 安装与启动 SSH 服务

bash 复制代码
# 安装(通常默认已安装)
sudo dnf install -y openssh-server openssh-clients

# 启动并开机自启
sudo systemctl start sshd
sudo systemctl enable sshd

# 防火墙放行
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

6.2 SSH 配置文件(/etc/ssh/sshd_config)

⚠️ 修改前备份!

bash 复制代码
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

常用安全配置项

bash 复制代码
# 禁用 root 登录(推荐)
PermitRootLogin no

# 修改默认端口(如 2222)
Port 2222

# 仅允许特定用户
AllowUsers alice bob

# 禁用密码登录(仅允许密钥)
PasswordAuthentication no

# 启用密钥登录
PubkeyAuthentication yes

# 限制最大认证尝试
MaxAuthTries 3

✅ 案例:一键加固 SSH 配置脚本

bash 复制代码
#!/bin/bash
# 文件名:harden_ssh.sh
# 功能:加固 SSH 服务配置

CONFIG="/etc/ssh/sshd_config"
BACKUP="$CONFIG.bak.$(date +%Y%m%d)"

echo "🔐 备份原始配置:$BACKUP"
sudo cp "$CONFIG" "$BACKUP"

# 设置安全参数
sudo sed -i 's/^#*PermitRootLogin.*/PermitRootLogin no/' "$CONFIG"
sudo sed -i 's/^#*PasswordAuthentication.*/PasswordAuthentication no/' "$CONFIG"
sudo sed -i 's/^#*PubkeyAuthentication.*/PubkeyAuthentication yes/' "$CONFIG"
sudo sed -i 's/^#*Port .*/Port 2222/' "$CONFIG"  # 取消注释并修改端口

# 添加允许用户(如存在)
if ! grep -q "^AllowUsers" "$CONFIG"; then
    echo "AllowUsers alice bob" | sudo tee -a "$CONFIG"
fi

# 重启服务
echo "🔄 重启 sshd 服务..."
sudo systemctl restart sshd

# 防火墙放行新端口
echo "🔥 防火墙放行端口 2222..."
sudo firewall-cmd --permanent --remove-service=ssh 2>/dev/null
sudo firewall-cmd --permanent --add-port=2222/tcp
sudo firewall-cmd --reload

echo "🎉 SSH 加固完成!请使用密钥登录,端口:2222"

💡 登录命令:

bash 复制代码
ssh -p 2222 alice@your-server-ip

七、远程连接 Linux 服务器


7.1 密钥验证方式实现免密登录

➤ 步骤 1:在客户端生成密钥对
bash 复制代码
# 在客户端(你的电脑)执行
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

# 默认保存在 ~/.ssh/id_rsa (私钥) 和 ~/.ssh/id_rsa.pub (公钥)
➤ 步骤 2:将公钥复制到服务器
bash 复制代码
# 方法一:使用 ssh-copy-id(推荐)
ssh-copy-id -i ~/.ssh/id_rsa.pub -p 2222 alice@your-server-ip

# 方法二:手动复制
cat ~/.ssh/id_rsa.pub | ssh -p 2222 alice@your-server-ip "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
➤ 步骤 3:设置权限(服务器端)
bash 复制代码
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
➤ 步骤 4:测试免密登录
bash 复制代码
ssh -p 2222 alice@your-server-ip
# 应直接登录,无需密码

✅ 案例:一键配置免密登录脚本(客户端执行)

bash 复制代码
#!/bin/bash
# 文件名:setup_ssh_key.sh
# 功能:生成密钥并配置免密登录到远程服务器

SERVER_IP="192.168.1.100"
SERVER_PORT="2222"
USERNAME="alice"

echo "🔑 生成 SSH 密钥对..."
ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa -N "" -C "$USERNAME@$SERVER_IP"

echo "📤 复制公钥到服务器..."
ssh-copy-id -i ~/.ssh/id_rsa.pub -p "$SERVER_PORT" "$USERNAME@$SERVER_IP"

echo "✅ 测试免密登录..."
ssh -p "$SERVER_PORT" "$USERNAME@$SERVER_IP" "echo '🎉 免密登录成功!主机名:$(hostname)'"

echo "🎉 SSH 免密登录配置完成!"

八、远程复制操作


8.1 scp ------ 安全复制文件

语法

bash 复制代码
scp [选项] 源 目标

常用选项

  • -P port:指定端口(注意是大写 P)
  • -r:递归复制目录
  • -C:压缩传输

✅ 案例:上传文件到服务器

bash 复制代码
scp -P 2222 myfile.txt alice@192.168.1.100:/home/alice/

✅ 案例:下载目录

bash 复制代码
scp -P 2222 -r alice@192.168.1.100:/var/log/ ./logs/

✅ 案例:带进度显示的复制脚本

bash 复制代码
#!/bin/bash
# 文件名:copy_with_progress.sh
SOURCE="$1"
DEST="$2"
PORT="${3:-22}"

echo "📤 正在复制:$SOURCE → $DEST"
scp -P "$PORT" -C -r "$SOURCE" "$DEST"

if [ $? -eq 0 ]; then
    echo "✅ 复制完成!"
else
    echo "❌ 复制失败!"
fi

8.2 rsync ------ 高效同步(推荐用于大文件/目录)

语法

bash 复制代码
rsync [选项] 源 目标

常用选项

  • -a:归档模式(保留权限、时间等)
  • -v:详细输出
  • -z:压缩
  • --progress:显示进度
  • -e "ssh -p 2222":指定 SSH 端口

✅ 案例:同步本地目录到服务器

bash 复制代码
rsync -avz --progress -e "ssh -p 2222" ./myapp/ alice@192.168.1.100:/var/www/html/

✅ 案例:从服务器拉取日志

bash 复制代码
rsync -avz --progress -e "ssh -p 2222" alice@192.168.1.100:/var/log/nginx/ ./nginx_logs/

九、常用 SSH 服务的客户端工具

平台 工具名称 说明
Windows PuTTY / MobaXterm 图形化 SSH 客户端
Windows Windows Terminal + OpenSSH 内置支持(Win10+)
macOS Terminal + ssh 原生命令行
Linux Terminal + ssh 原生命令行
跨平台 VS Code + Remote SSH 开发神器,远程编辑文件
跨平台 Tabby / Termius 现代化终端,支持多标签

✅ Windows 10/11 启用 OpenSSH 客户端:

powershell 复制代码
# 以管理员身份运行 PowerShell
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

✅ VS Code 远程开发:

  1. 安装 Remote - SSH 插件
  2. F1Remote-SSH: Connect to Host...
  3. 输入 alice@192.168.1.100:2222
  4. 输入密码或自动使用密钥登录
  5. 开始远程编辑文件!

十、综合性实战案例


🎯 综合案例 1:一键初始化新服务器网络与 SSH

功能:设置静态 IP、主机名、hosts、SSH 免密、防火墙、服务自启

bash 复制代码
#!/bin/bash
# 文件名:init_server.sh
# 功能:一键初始化 CentOS Stream 9 服务器

# ===== 配置参数 =====
STATIC_IP="192.168.1.100/24"
GATEWAY="192.168.1.1"
DNS="8.8.8.8,8.8.4.4"
HOSTNAME="web01.example.com"
SSH_PORT="2222"
ALLOWED_USER="admin"

echo "🚀 开始初始化服务器..."
echo "=================================="

# === 1. 设置主机名 ===
echo "📝 设置主机名:$HOSTNAME"
sudo hostnamectl set-hostname "$HOSTNAME"

# === 2. 配置静态 IP ===
CONN_NAME=$(nmcli -t -f NAME,TYPE connection show | grep ethernet | head -1 | cut -d: -f1)
if [ -z "$CONN_NAME" ]; then
    echo "❌ 未找到有线连接"
    exit 1
fi

echo "⚙️  配置静态 IP:$STATIC_IP"
sudo nmcli connection modify "$CONN_NAME" \
    ipv4.addresses "$STATIC_IP" \
    ipv4.gateway "$GATEWAY" \
    ipv4.dns "$DNS" \
    ipv4.method manual

sudo nmcli connection down "$CONN_NAME" && sudo nmcli connection up "$CONN_NAME"

# === 3. 更新 hosts ===
echo "📝 更新 /etc/hosts"
echo "127.0.0.1   localhost localhost.localdomain" | sudo tee /etc/hosts
echo "::1         localhost localhost.localdomain" | sudo tee -a /etc/hosts
echo "$STATIC_IP%/*" | cut -d/ -f1 | xargs -I {} echo "{} $HOSTNAME" | sudo tee -a /etc/hosts

# === 4. 安装并配置 SSH ===
echo "🔐 安装并加固 SSH..."
sudo dnf install -y openssh-server

# 修改 SSH 配置
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
sudo sed -i 's/^#*Port .*/Port '"$SSH_PORT"'/' /etc/ssh/sshd_config
sudo sed -i 's/^#*PermitRootLogin.*/PermitRootLogin no/' /etc/ssh/sshd_config
sudo sed -i 's/^#*PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo sed -i 's/^#*PubkeyAuthentication.*/PubkeyAuthentication yes/' /etc/ssh/sshd_config

# 创建允许用户
if ! id "$ALLOWED_USER" >/dev/null 2>&1; then
    sudo useradd -m "$ALLOWED_USER"
    echo "设置临时密码(请尽快更换)"
    echo "$ALLOWED_USER:TempPass123!" | sudo chpasswd
fi

echo "AllowUsers $ALLOWED_USER" | sudo tee -a /etc/ssh/sshd_config

# === 5. 防火墙配置 ===
echo "🔥 配置防火墙..."
sudo firewall-cmd --permanent --add-port="$SSH_PORT"/tcp
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

# === 6. 启动服务 ===
echo "🔄 启动服务..."
sudo systemctl enable --now sshd
sudo systemctl enable --now firewalld

# === 7. 输出完成信息 ===
echo
echo "🎉 服务器初始化完成!"
echo "📌 主机名:$HOSTNAME"
echo "📌 IP地址:$(echo $STATIC_IP | cut -d/ -f1)"
echo "📌 SSH端口:$SSH_PORT"
echo "📌 用户名:$ALLOWED_USER"
echo "📌 请将你的公钥添加到 /home/$ALLOWED_USER/.ssh/authorized_keys"
echo "📌 登录命令:ssh -p $SSH_PORT $ALLOWED_USER@$HOSTNAME"
echo "=================================="

🎯 综合案例 2:多服务器免密登录批量配置脚本

功能:为多个服务器配置同一客户端的免密登录

bash 复制代码
#!/bin/bash
# 文件名:batch_ssh_key.sh
# 功能:为多个服务器配置免密登录

# 服务器列表(IP 用户名 端口)
SERVERS=(
    "192.168.1.100 admin 2222"
    "192.168.1.101 admin 2222"
    "192.168.1.102 admin 2222"
)

# 生成密钥(如不存在)
if [ ! -f ~/.ssh/id_rsa ]; then
    echo "🔑 生成 SSH 密钥..."
    ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa -N "" -C "batch-deploy@$(hostname)"
fi

# 遍历服务器
for server in "${SERVERS[@]}"; do
    IP=$(echo $server | awk '{print $1}')
    USER=$(echo $server | awk '{print $2}')
    PORT=$(echo $server | awk '{print $3}')
    
    echo "📤 配置 $USER@$IP:$PORT..."
    
    # 复制公钥
    ssh-copy-id -i ~/.ssh/id_rsa.pub -p "$PORT" "$USER@$IP"
    
    # 测试登录
    if ssh -p "$PORT" -o ConnectTimeout=5 "$USER@$IP" "echo '✅ 连接成功'" 2>/dev/null; then
        echo "🎉 $IP 配置成功"
    else
        echo "❌ $IP 配置失败"
    fi
done

echo "✅ 所有服务器免密登录配置完成!"

🎯 综合案例 3:自动化部署脚本(本地 → 服务器)

功能:打包本地项目,通过 rsync 同步到服务器,重启服务

bash 复制代码
#!/bin/bash
# 文件名:deploy_app.sh
# 功能:自动化部署 Web 应用

PROJECT_DIR="./myapp"
SERVER="admin@192.168.1.100"
SERVER_PORT="2222"
DEPLOY_DIR="/var/www/html/myapp"
SERVICE="nginx"

echo "📦 开始部署应用..."
echo "=================================="

# === 1. 打包项目(可选)===
echo "📦 打包项目..."
tar -czf myapp.tar.gz -C "$PROJECT_DIR" .

# === 2. 同步到服务器 ===
echo "📤 同步文件到服务器..."
rsync -avz --progress -e "ssh -p $SERVER_PORT" \
    "$PROJECT_DIR/" "$SERVER:$DEPLOY_DIR/"

# === 3. 服务器上执行部署后操作 ===
echo "⚙️  在服务器上执行部署后操作..."
ssh -p "$SERVER_PORT" "$SERVER" << 'EOF'
    cd /var/www/html/myapp
    # 安装依赖(如 Node.js 项目)
    # npm install --production
    # 设置权限
    sudo chown -R nginx:nginx /var/www/html/myapp
    sudo chmod -R 755 /var/www/html/myapp
EOF

# === 4. 重启服务 ===
echo "🔄 重启 $SERVICE 服务..."
ssh -p "$SERVER_PORT" "$SERVER" "sudo systemctl reload $SERVICE"

# === 5. 验证部署 ===
echo "🔍 验证部署..."
ssh -p "$SERVER_PORT" "$SERVER" "curl -s http://localhost/ | head -5"

echo "🎉 部署完成!访问:http://$SERVER"

✅ 学习建议与最佳实践

  • 网络配置 :优先使用 nmcli,避免手动编辑文件。
  • SSH 安全:禁用 root 登录、改端口、用密钥、禁密码。
  • 免密登录:是自动化运维的基础,务必掌握。
  • rsync > scp:大文件/目录同步首选 rsync。
  • 防火墙:最小权限原则,只开放必需端口。
  • 脚本化:所有操作尽量脚本化,便于重复和审计。

📚 附录:命令速查表

功能 命令示例
查看 IP ip a
设置静态 IP sudo nmcli con mod "Wired" ipv4.addresses "192.168.1.100/24"
设置主机名 sudo hostnamectl set-hostname web01
编辑 hosts sudo vi /etc/hosts
启动 SSH sudo systemctl start sshd
生成密钥 ssh-keygen -t rsa -b 4096
复制公钥 ssh-copy-id -i ~/.ssh/id_rsa.pub user@host
远程复制文件 scp -P 2222 file user@host:/path/
同步目录 rsync -avz -e "ssh -p 2222" src/ user@host:dest/
查看防火墙 sudo firewall-cmd --list-all

这份文档覆盖了 CentOS Stream 9 网络配置与 SSH 管理的全部核心知识点 + 语法细节 + 实用案例 + 综合项目,所有代码均含详细注释,可直接用于教学、自学或生产环境参考。

相关推荐
专业开发者2 小时前
Wi-Fi®:可持续的优选连接方案
网络·物联网
瑶光守护者2 小时前
【学习笔记】5G RedCap:智能回落5G NR驻留的接入策略
笔记·学习·5g
你想知道什么?2 小时前
Python基础篇(上) 学习笔记
笔记·python·学习
SHOJYS2 小时前
学习离线处理 [CSP-J 2022 山东] 部署
数据结构·c++·学习·算法
GIS数据转换器3 小时前
综合安防数智管理平台
大数据·网络·人工智能·安全·无人机
weixin_409383123 小时前
简单四方向a*学习记录4 能初步实现从角色到目的地寻路
学习·a星
xian_wwq3 小时前
【学习笔记】可信数据空间的工程实现
笔记·学习
Li.CQ4 小时前
SQL学习笔记
笔记·sql·学习
jtymyxmz4 小时前
《Maya 2024 超级学习手册》3.4.8 实例:制作垃圾桶模型
学习·maya