H20*8卡服务器装机指南

安装系统时的分区

bash 复制代码
挂载点       文件系统   大小
/boot/efi   FAT32     512MB
/boot       ext4      2GB
swap        swaparea  32GB
/           ext4      剩余

1. 网络配置

1.1 查看ip地址

bash 复制代码
ip addr

输出如下,打马赛克的地方是地址,比如192.xxx.xx.xxx

1.2 查看网关, 若有static建议删除

bash 复制代码
ip route show

显示如下

bash 复制代码
sudo ip route del default via 192.xxx.xx.x dev ens10f1 proto static

不删除的话,会出现能ping通,但是ssh不上服务器的情况

1.3 配置地址

bash 复制代码
sudo nano /etc/netplan/01-network-manager-all.yaml

文件内容如下

bash 复制代码
# Let NetworkManager manage all devices on this system
network:
  version: 2
  renderer: NetworkManager
  ethernets:
    ens10f1:
      dhcp4: no
      addresses:
        - 192.xxx.xx.xxx/24 # 静态ip地址
      routes:
        - to: default
          via: 192.xxx.xx.x # 网关地址
      nameservers:
        addresses: [114.114.114.114, 8.8.8.8, 223.5.5.5]

1.4 地址生效

bash 复制代码
sudo netplan generate
sudo netplan apply

1.5 重启网络服务

bash 复制代码
sudo systemctl restart NetworkManager
sudo systemctl enable NetworkManager

1.6 测试网络和网关

bash 复制代码
ping -c 4 8.8.8.8
ping 192.xxx.xx.x # 网关地址

2. 硬盘挂载

2.1查看所有磁盘

bash 复制代码
sudo lsblk -f
# 或
sudo fdisk -l

2.2 格式化磁盘

bash 复制代码
sudo mkfs.ext4 /dev/sdb

2.3 创建挂载点

bash 复制代码
sudo mkdir -p /data1

2.4 挂载磁盘到/opt

bash 复制代码
sudo mount /dev/sdb /data1

2.5 设置开机自动挂载(永久生效)

bash 复制代码
# 查看磁盘UUID(用于fstab,避免设备名变化导致挂载失败)
sudo blkid /dev/sdb
# 复制UUID(如UUID="xxxx-xxxx")
# 编辑fstab文件
sudo nano /etc/fstab
# 在文件末尾添加一行(替换为你的 UUID)
UUID=你的磁盘UUID /data1 ext4 defaults 0 2

2.6 重新挂载所有fstab中的设备,验证配置正确

bash 复制代码
sudo mount -a

2.7 查看挂载状态

bash 复制代码
df -h

3. 安装驱动

3.1. 更新软件源(确保源正常,避免安装失败)

bash 复制代码
sudo apt update && sudo apt upgrade -y

3.2. 安装驱动必备依赖(头文件、编译工具、DKMS等)

bash 复制代码
sudo apt install build-essential linux-headers-$(uname -r) dkms make gcc -y

3.3. 安装服务器版工具(适配数据中心GPU)

bash 复制代码
sudo apt install ubuntu-server linux-modules-extra-$(uname -r) -y

3.4.禁用 Nouveau 开源驱动

3.4.1. 创建禁用配置文件

bash 复制代码
sudo bash -c "echo 'blacklist nouveau' > /etc/modprobe.d/blacklist-nouveau.conf"
sudo bash -c "echo 'options nouveau modeset=0' >> /etc/modprobe.d/blacklist-nouveau.conf"

3.4.2. 更新initramfs生效

bash 复制代码
sudo update-initramfs -u

3.4.3. 重启系统(必须重启,否则禁用不生效)

bash 复制代码
sudo reboot

3.4.4 验证,没有输出就是成功

bash 复制代码
lsmod | grep nouveau

3.5 安装驱动

bash 复制代码
# 查看可安装的驱动版本
ubuntu-drivers devices
# 安装指定版本(以550为例,替换为你需要的版本)
sudo apt install -y nvidia-driver-570
# 或者自动检测并安装推荐驱动
sudo ubuntu-drivers autoinstall
sudo reboot
# 验证,输出显卡信息即可
nvidia-smi

3.6 多GPU服务机需要安装fabricmanager

3.6.1 查看驱动具体版本号

bash 复制代码
cat /proc/driver/nvidia/version

3.6.2 安装

fabricmanager不同版本

bash 复制代码
# 安装基础依赖
sudo apt update
sudo apt install -y gcc g++ make dkms linux-headers-$(uname -r)
# 从NVIDIA 官网下载一个密钥文件(安全证书)
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
# 添加NVIDIA-CUDA官方源
echo "deb [signed-by=/usr/share/keyrings/cuda-archive-keyring.gpg] https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /" | sudo tee /etc/apt/sources.list.d/cuda.list
sudo apt update
# 安装FabricManager(GPU 互联服务),找到驱动的对应版本
wget https://developer.download.nvidia.cn/compute/cuda/repos/ubuntu2204/x86_64/cuda-drivers-fabricmanager-570_570.211.01-1_amd64.deb
sudo apt install -y ./cuda-drivers-fabricmanager-570_570.211.01-1_amd64.deb
nvidia-smi
sudo reboot
# 设置开机自启动
sudo systemctl status nvidia-fabricmanager
sudo systemctl start nvidia-fabricmanager
sudo systemctl enable nvidia-fabricmanager

若出现错误UserWarning: CUDA initialization: Unexpected error from cudaGetDeviceCount().Error 802: system not,见我另外的文章

3.7 锁定内核版本

bash 复制代码
sudo apt-mark hold linux-image-generic linux-image-$(uname -r)
sudo apt-mark hold linux-image-generic linux-image-$(uname -r)
sudo apt-mark hold linux-headers-generic linux-headers-$(uname -r)
sudo apt-mark hold linux-modules-extra-$(uname -r)
sudo apt-mark hold linux-image-unsigned-$(uname -r)
sudo  apt-mark showhold
sudo reboot

4. 多账号管理

4.1 创建账号(/data1/user1可以为任意目录,建议选择最大的磁盘)

bash 复制代码
sudo useradd -m -d /data1/user1 -s /bin/bash -G sudo user1

4.2 设置user1用户密码

bash 复制代码
sudo passwd user1

4.3 测试是否设置好新用户

bash 复制代码
su - user1

输入user1账户的密码即可

4.4 其他环境配置

4.4.1 miniconda环境配置

miniconda已经设置好全局变量, 创建用户即可用,无需额外配置。

具体配置文件见bash/etc/profile.d/conda.sh

用户登录后bashconda activate base即可激活。

安装见[5. 安装miniconda](#5. 安装miniconda)

4.4.2 docker环境配置

配置公用docker, 防止多次安装

bash 复制代码
sudo usermod -aG docker user1

安装见[6. 安装docker](#6. 安装docker)

5. 安装miniconda

5.1 下载文件到指定目录

bash 复制代码
cd /your/miniconda3/path
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

5.2 安装到系统公共目录(建议/opt/miniconda3)

bash 复制代码
sudo bash Miniconda3-latest-Linux-x86_64.sh -b -p /opt/miniconda3

5.3 设置全局权限(所有人可使用)

bash 复制代码
sudo chmod -R 755 /opt/miniconda3
sudo chown -R root:root /opt/miniconda3

5.4 把conda加入系统全局环境

bash 复制代码
sudo nano /etc/profile.d/conda.sh

内容如下

bash 复制代码
if [ -d "/opt/miniconda3" ]; then
    export PATH="/opt/miniconda3/bin:$PATH"
    source /opt/miniconda3/etc/profile.d/conda.sh
fi

5.5 赋予执行权限

bash 复制代码
sudo chmod +x /etc/profile.d/conda.sh

立即生效

bash 复制代码
source /etc/profile

5.6 切换任意用户测试

bash 复制代码
su - user1 # 输入user1用户的密码
conda --version
conda info

6. 安装docker

6.1. 安装到指定目录

安装位置
bash 复制代码
sudo mkdir -p /data2/docker
直接创建配置文件
bash 复制代码
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json > /dev/null <<EOF
{
  "data-root": "/data2/docker",
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m",
    "max-file": "3"
  }
}
EOF

6.2. 卸载旧版本

bash 复制代码
sudo apt remove -y docker docker-engine docker.io containerd runc

第一次安装应该没有

6.3. 安装依赖

bash 复制代码
sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release

6.4. 官方GPG

bash 复制代码
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

6.5. 添加源

bash 复制代码
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

6.6. 安装 Docker(安装时自动读取 /data2 配置)

bash 复制代码
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

6.7. 开机自启

bash 复制代码
sudo systemctl enable docker
sudo systemctl start docker

6.8. 验证

bash 复制代码
sudo docker info | grep "Docker Root Dir"

6.9 所有用户配置docker

bash 复制代码
sudo usermod -aG docker user1 # user1为用户名
相关推荐
盘古信息IMS2 小时前
2026年WMS系统选型指南:制造企业如何构建高度适配的智能仓储中枢?
运维·制造·devops
Cyber4K2 小时前
【Nginx专项】基础入门篇-访问限制及访问控制
linux·运维·服务器·nginx
涛声依旧393162 小时前
创建新的虚拟主机
linux·服务器·网络
b***25112 小时前
锂电池自动化生产线的精密协同与效能提升
运维·自动化
云飞云共享云桌面2 小时前
制造研发降本新思路:云飞云共享云桌面集群如何将软硬件利用率提升至200%?
运维·服务器·网络·人工智能·3d·制造
爱喝水的鱼丶2 小时前
SAP-ABAP:深入浅出 SAP AFVC 表:生产订单工序的核心数据仓库
运维·服务器·数据仓库·sap·abap·pp
高斯的手稿08012 小时前
树莓派上更换镜像源的方法
linux·运维·windows
走向IT2 小时前
TS服务器故障码参考表
运维·服务器
Chuncheng's blog2 小时前
Mac ssh连接无操作自动断开异常
运维·macos·ssh