一、准备工作:租用海外 VPS 并搭建 Squid 代理
1. 选择与配置 VPS
- 推荐区域:香港、日本或新加坡(延迟低,下载速度快)。
- 操作系统:任意 Linux 发行版均可,本指南以openEuler为例(与 AlmaLinux 操作习惯一致)。
- 安全组/防火墙:在 VPS 控制台放行代理端口(例如
18888)。
2. 登录 VPS 并安装 Squid
# 登录 VPS(替换为你的 IP) ssh root@<VPS_IP> # 安装 Squid sudo dnf install -y squid3. 配置 Squid 代理
编辑配置文件/etc/squid/squid.conf:
sudo vi /etc/squid/squid.conf进行以下修改:
- 修改端口(可选,增加安全性):
http_port 18888 - 临时允许所有 IP 访问(仅用于测试,稍后会限制):
找到http_access deny all,改为:http_access allow all - 调整缓存大小(可选):
4096单位是兆,建议改为1024,具体更具服务器内存选择cache_dir ufs /var/spool/squid 4096 16 256
保存并退出。
4. 初始化并启动 Squid
sudo squid -z # 初始化缓存目录 sudo systemctl enable --now squid sudo systemctl status squid # 检查状态5. 配置防火墙放行代理端口
sudo firewall-cmd --zone=public --add-port=18888/tcp --permanent sudo firewall-cmd --reload6. 测试代理连通性
在本地 AlmaLinux 终端执行(替换 IP 和端口):
curl -x http://<VPS_IP>:18888 https://ifconfig.me若返回 VPS 的 IP 地址,则代理搭建成功。
二、配置本地dnf使用代理
1. 编辑dnf配置文件
sudo vi /etc/dnf/dnf.conf在[main]段落中添加:
proxy=http://<VPS_IP>:188882. 验证代理生效
sudo dnf clean all sudo dnf makecache如果元数据下载顺利,说明dnf已通过代理工作。
三、安装 NVIDIA 驱动与 CUDA 工具包
1. 安装依赖并添加 NVIDIA 仓库
sudo dnf install -y epel-release sudo dnf config-manager --set-enabled crb sudo dnf install -y almalinux-release-nvidia-driver2. 配置 GSP 固件(重要!RTX 30/40 系列必需)
sudo tee /etc/dracut.conf.d/nvidia-gsp.conf > /dev/null <<'EOF' install_items+=" /lib/firmware/nvidia/595.58.03/gsp_ga10x.bin " EOF sudo dracut --force注意:固件路径中的版本号
595.58.03可能随驱动版本变化,请根据实际安装的驱动版本调整。可先安装驱动,然后查看/lib/firmware/nvidia/下的目录名。
3. 安装驱动核心包
sudo dnf install -y nvidia-open-kmod nvidia-driver4. 安装nvidia-smi工具
sudo dnf install -y nvidia-driver-cuda5. 启用内核模式设置(KMS)
sudo grubby --update-kernel=ALL --args="nvidia_drm.modeset=1"6. 重启系统
sudo reboot7. 验证驱动安装
nvidia-smi若正常显示 GPU 信息(如RTX 3080 Ti)和驱动版本,则驱动安装成功。
注:此处如果你电脑有核显的话可能重启后会出现卡顿掉帧,需要设置为全局独显模式
四、让整个桌面强制使用 NVIDIA 显卡(全局独显)(注:这一块的成功率不是很高,装过四次只成功了两次,如有大佬优化感激不尽)
如果你的显示器已连接到 NVIDIA 显卡,但桌面渲染仍由 Intel 核显负责,导致画面卡顿、glxinfo | grep "OpenGL renderer"显示为Mesa Intel,可执行以下步骤强制系统以 NVIDIA 作为唯一渲染显卡。
准备工作:安装必要工具
# 安装 glx-utils 用于后续验证 sudo dnf install -y glx-utils完整操作步骤
写入内核引导参数
首先创建所需目录,并写入 NVIDIA 显示模式与屏蔽核显的参数。
# 创建目录(如果不存在) sudo mkdir -p /etc/kernel/cmdline.d # 写入配置文件 sudo tee /etc/kernel/cmdline.d/99-nvidia-primary.conf > /dev/null <<'EOF' nvidia_drm.modeset=1 rd.driver.blacklist=i915 EOF重建 GRUB 引导配置
sudo grub2-mkconfig -o /boot/grub2/grub.cfg备选命令:如果上述方式未生效,可使用
grubby直接注入参数(二选一即可):sudo grubby --update-kernel=ALL --args="nvidia_drm.modeset=1 rd.driver.blacklist=i915"
写入系统级环境变量(防止 Wayland 回退)
这一步能确保桌面会话强制选择 NVIDIA 渲染器。
sudo tee /etc/environment.d/nvidia-prime.conf > /dev/null <<'EOF' __GLX_VENDOR_LIBRARY_NAME=nvidia __NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only EOF重启系统
# 若提示被 PackageKit 阻塞,可先停止该服务 sudo systemctl stop packagekit # 重启(忽略抑制剂) sudo systemctl reboot -i验证结果
重启并登录桌面后,打开终端运行:
glxinfo | grep "OpenGL renderer"预期输出:OpenGL renderer string: NVIDIA GeForce RTX 3080 Ti/PCIe/SSE2
若输出如上所示,则全局独显设置成功,桌面渲染与 AI 计算均会使用 NVIDIA 显卡,画面卡顿问题彻底解决。