【问题】实验室服务器恢复记录,一个主板挂两张显卡,

一、情况

电脑是电脑换了新主板,主板MSIB450M MORTAR MAX 。之所以选这个主板是因为这个主板可以支持两张显卡,实验室一张显卡16G的4080显卡,一张是24G的3090显卡,并且需要装最新的ubuntu系统

二、遇到的问题

2.1 关于硬件问题

初次安装操作系统之后,进去之后安装anaconda之后。使用命令查看两张显卡情况

bash 复制代码
watch -n -1 nividia-smi

此时发现只出现一张4080显卡,此时我初步判断认为可能是3090显卡出问题了。于是我将3090和4080显卡的位置对调。发现第一个卡槽可以使用,第二个卡槽没办法使用

2.1.1 解决办法

针对微星 B450M 迫击炮(Mortar)主板无法识别第二张显卡的问题,通常不是因为 BIOS 中有一个

简单的"开启/关闭"开关,而是涉及硬件通道冲突或特定的 BIOS 设置。

以下是导致第二个卡槽无法使用的最常见原因及解决办法

1、 原理 :这块主板的第二个显卡插槽(PCI E4,即底部的长插槽)与第二个M.2硬盘接口

(M2 2,即靠近底部的那个 M.2接口)是共享带宽的。

2、冲突 :如果在 M2_2插槽上安装了 SSD 固态硬盘,第二个显卡插槽(PCIE4)会自动失效

(被禁用)。

3、操作步骤

  • 首先重启电脑,按住del键,进入BIOS简易模式下,点击存储,发现确实显示M2_2上有一块1TB固态硬盘
  • F7进入高级模式,点击 Settings(设置)>Advanced(高级)
  • 找到PCl Subsystem Settings(PCl 子系统设置)
  • Above 4G Decoding(大于 4G 地址空间解码)设置为 [Enabled]

以上设置好之后,我就拆开电脑,将压在第二个卡槽上的显卡拔出,就在第二张显卡的边上有一个1TB固态硬盘,拆下丢掉

进入系统后,使用命令发现两张显卡都可以使用

2.2 关于电脑电脑硬盘挂载问题

首先电脑有一张额外的2TB固态,我希望这个固态挂在指定目录,这样的话大家根据指定目录就可以上传代码

2.2.1 挂载步骤

1、先查看2TB固态挂载名称,找到了/dev/sda1

bash 复制代码
df -h

2、 卸载当前挂载。因为 /dev/sda1 已经被系统自动挂载了,我们需要先卸载它。

bash 复制代码
sudo umount /dev/sda1

3、 创建新的挂载点

bash 复制代码
sudo mkdir /student

4、 获取硬盘 UUID(重要) Linux 中使用 UUID 挂载比使用 /dev/sda1 更稳定(防止插拔设备后盘符变动)。 UUID 很可能就是那个长字符串 107fXXXX-7XX-4XX-aXX-fcfXXXXXXX

bash 复制代码
sudo blkid /dev/sda1

输出 UUID="xxxx-xxxx..." 部分

5、修改 /etc/fstab 实现开机自动挂载

bash 复制代码
sudo nano /etc/fstab

在文件末尾添加下面这一行(请将 UUID 替换为刚才确认的真实 UUID):

bash 复制代码
UUID=107fXXXX-7XX-4XX-aXX-fcfXXXXXXX /student ext4 defaults 0 2

注意:这里按 Ctrl+O -> 写入,然后按 Ctrl+M -> 追加内容进去 最后按 Ctrl+X 退出。

6、立即挂载并测试

bash 复制代码
sudo mount -a

如果没有报错,说明配置正确。你可以再次输入df -h,应该能看到 /dev/sda1 挂载到了 /student

2.2.2 关于加载问题

因为2TB固态硬盘比较大,电脑重启的时候可能会进入Emergency Mode(紧急模式)

  • 主要原因可能是系统在启动过程中可能因为"硬盘响应慢"或者"UUID有细微错误",导致系统找不到那个 /student 对应的硬盘,为了保护数据,它就卡在这里不让你进系统了。
  • 以上第五步步骤需要添加nofail参数
bash 复制代码
UUID=107fXXXX-7XX-4XX-aXX-fcfXXXXXXX /student ext4 defaults,nofail 0 2
  • 立即激活并验证
bash 复制代码
sudo mount -a

2.3 关于软链接问题

首先实验室有4个组,每组都有很多学生需要上传代码。为了保证数据安全,工整等问题,我创建4个组。每个组代码放在创建在/home/下,只是用户自己操作的时候只需要把代码放到/student

2.3.1 创建4个账户并赋予权限

1、创建账户

bash 复制代码
sudo adduser stu1
sudo adduser stu2
sudo adduser stu3
sudo adduser stu4

2、确保 /student 基础权限正确

bash 复制代码
sudo chown root:root /student
sudo chmod 755 /student

3、为 stu1 配置

bash 复制代码
# 1. 在大硬盘创建目录
sudo mkdir /student/stu1
# 2. 设置权限:只有 stu1 能看能写 (700)
sudo chown stu1:stu1 /student/stu1
sudo chmod 700 /student/stu1
# 3. 在用户家目录创建一个叫 "workspace" 的链接指向大硬盘
sudo ln -s /student/stu1 /home/stu1/workspace
# 4. 修正链接的归属权
sudo chown -h stu1:stu1 /home/stu1/workspace

4、为 stu2 配置

bash 复制代码
sudo mkdir /student/stu2
sudo chown stu2:stu2 /student/stu2
sudo chmod 700 /student/stu2
sudo ln -s /student/stu2 /home/stu2/workspace
sudo chown -h stu2:stu2 /home/stu2/workspace

5、为 stu3 配置

bash 复制代码
sudo mkdir /student/stu3
sudo chown stu3:stu3 /student/stu3
sudo chmod 700 /student/stu3
sudo ln -s /student/stu3 /home/stu3/workspace
sudo chown -h stu3:stu3 /home/stu3/workspace

6、 为 stu4 配置

bash 复制代码
sudo mkdir /student/stu4
sudo chown stu4:stu4 /student/stu4
sudo chmod 700 /student/stu4
sudo ln -s /student/stu4 /home/stu4/workspace
sudo chown -h stu4:stu4 /home/stu4/workspace

7、锁定 /home 隐私(重要)

bash 复制代码
sudo chmod 700 /home/stu1
sudo chmod 700 /home/stu2
sudo chmod 700 /home/stu3
sudo chmod 700 /home/stu4

2.4 配置conda环境

先使用root账户下载一个anaconda的sh安装包

1、 安装anaconda

bash 复制代码
# 1. 运行安装脚本
# -b 代表 batch 模式(自动同意协议,不问问题)
# -p 代表指定安装路径
sudo bash Anaconda3-2025.06-0-Linux-x86_64.sh -b -p /opt/anaconda3

2、配置公共权限

bash 复制代码
# 赋予所有用户读取和执行权限
sudo chmod -R o+rX /opt/anaconda3

3、配置环境变量

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

4、写入内容

bash 复制代码
export PATH=/opt/anaconda3/bin:$PATH

同理Ctrl + O -> Ctrl + M 追加内容。按 Ctrl + X 退出

5、验证配置

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

6、测试conda环境

bash 复制代码
conda --version

存在一个比较重要的问题

一般情况下,安装好conda之后,账户前面会出现(base)
关于没有 "(base)":是因为 Linux 的环境变量只在 "开启新终端"或"用户登录"的一瞬间加载。你当前的黑底白字窗口是配置之前打开的,它还不知道配置变了

2.4.1 没有base情况下写配置文件

bash 复制代码
# 1. 覆盖写入新的配置脚本
echo '. /opt/anaconda3/etc/profile.d/conda.sh' | sudo tee /etc/profile.d/conda.sh

# 2. 追加一行自动激活 base 的命令
echo 'conda activate base' | sudo tee -a /etc/profile.d/conda.sh

2.4.2 切换用户执行命令

此时每个用户没有执行配置,所以还是没有(base)窗口

  • 先切换各自用户
bash 复制代码
su - stu1
su - stu2
su - stu3
su - stu4
  • 强制初始化 Conda(每切换一个用户执行以下命令)
bash 复制代码
/opt/anaconda3/bin/conda init bash
source ~/.bashrc
相关推荐
S***q19230 分钟前
DevOps在云中的云计算
运维·云计算·devops
h***01542 小时前
Docker启动安装nacos(详情讲解,全网最细)
运维·docker·容器
z***94842 小时前
Linux下安装Nginx服务及systemctl方式管理nginx详情
linux·运维·nginx
默恋~微凉2 小时前
Nginx(十一)——反向代理与负载均衡
运维·nginx·负载均衡
凉晓风2 小时前
Linux上TCP通信异常排查工具命令
linux·运维·tcp/ip
w***4242 小时前
SQL-Server链接服务器访问Oracle数据
服务器·sql·oracle
孟先生丨2 小时前
PVE 系统 2.5G网卡驱动从 r8169 切换到 r8125
服务器·5g
折翅嘀皇虫2 小时前
fastdds.type_propagation 详解
java·服务器·前端
码龄3年 审核中2 小时前
Linux record 03
java·linux·运维