当前位置: 首页 > news >正文

昇腾机器节点磁盘状态检查与问题处理方法

一、问题背景

当我们需要在节点要拉取DeepSeek权重文件前,首先需要做的事情之一,是检查当前磁盘是否挂载到对应的目录下,正常情况下,执行命令:

lsblk

可以看到预期nvme0n1、nvme1n1、nvme2n1磁盘正常挂载home、docker目录,每一个磁盘都有MOUNTPOINT:
在这里插入图片描述
而如果是下面的情况,则是未挂载:
在这里插入图片描述

二、处理方法

针对未挂载的情况,我们需要执行自动化挂载脚本,将/dev/nvme0n1挂载到/home下,另外两个则合并挂载到/docker下供容器使用(如果不单独给/docker分配较大空间,当多人共用创建多个容器实例时容易将根目录占满):

cd /root/tools/
sh create_disk_partitions.sh

脚本执行成功后,磁盘就能够顺利分配、挂载了。

三、其他问题处理

3.1 /dev/nvme0n1 contains a mounted filesystem

在实际操作的过程中,出现了下面的问题:

  • /dev/nvme0n1 contains a mounted filesystem
    在这里插入图片描述
    这是因为nvme0n1已经挂载了/home路径,脚本中重复执行导致失败。

解决方法:

  • 修改脚本、将挂载/home的几行注释掉,然后再执行脚本。

针对上述问题,参考他人的结论,还有一种处理方法:

  • 将已挂载的/data0、1、2都手动卸载:
umount /data0
umount /data1
umount /data2

不过在卸载磁盘时,有很大概率会卸载失败,显示:

  • target is busy
    在这里插入图片描述
    说明有进程在使用该磁盘,此时我们可以执行命令:
fuser -kv /data0

该命令的作用:

查找所有正在使用 /home 挂载点下文件的进程,并向这些进程发送 SIGKILL 信号,强制终止这些进程。

此时再执行umount命令就能够成功了。
当我们完成所有磁盘的卸载、再执行磁盘初始化分配脚本,就能够达成目的了。

3.2 cannot open /dev/nvme0n1: Device or resource busy

拿到机器执行脚本,直接显示失败:

  • cannot open /dev/nvme0n1: Device or resource busy
    在这里插入图片描述

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

此时,我们执行命令:

df -h

可以看到当前机器磁盘名称并非脚本中所写的nvme0n1,而是nvme0n1p1
在这里插入图片描述

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
解决方法:

  • 修改脚本,将脚本中挂载磁盘名称改为nvme0n1p1:
    在这里插入图片描述

同时,还有一种情况,则是磁盘的名称与脚本一致,出现:

  • cannot open /dev/nvme0n1: Device or resource busy
    在这里插入图片描述

解决方法:

  • 参考对应脚本中的内容,选择对应的部分向下执行,最后重启机器即可:
    在这里插入图片描述

四、挂载脚本参考

#!/bin/bash
# Copyright 2024 Huawei Technologies Co., Ltd
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.# ============================================================================
# 将nvme0n1本地盘挂载到/home目录下,
# 将nvme1n1、nvme1n2本地盘合并作为逻辑卷统一挂载到/docker目录下,并设置开机自动挂载。
# ============================================================================set -ex# 将nvme0n1挂载到用户目录
mkfs -t xfs /dev/nvme0n1
mkdir -p /tmp/home
cp -r /home/* /tmp/home/
mount /dev/nvme0n1 /home
mv /tmp/home/* /home/
rm -rf  /tmp/home# 将nvme1n1、nvme1n2合并挂载到/docker目录
pvcreate /dev/nvme1n1
pvcreate /dev/nvme2n1
vgcreate nvme_group  /dev/nvme1n1 /dev/nvme2n1
lvcreate -l 100%VG -n docker_data nvme_group
mkfs -t xfs /dev/nvme_group/docker_data
mkdir /docker
mount /dev/nvme_group/docker_data /docker# 迁移docker文件到新的/docker目录
systemctl stop docker
mv /var/lib/docker/* /docker
sed -i '/"default-runtime"/i\        "data-root":     "/docker",' /etc/docker/daemon.json
systemctl start docker# 设置开机自动挂载
uuid=`blkid -o value -s UUID /dev/nvme_group/docker_data` && echo UUID=${uuid} /docker xfs defaults,nofail 0 0 >> /etc/fstab
uuid=`blkid -o value -s UUID /dev/nvme0n1` && echo UUID=${uuid} /home xfs defaults,nofail 0 0 >> /etc/fstab
mount -a
df -h

参考资料:

  1. NPU服务器上配置Lite Server资源软件环境
http://www.dtcms.com/a/264983.html

相关文章:

  • 智能攻击原理和架构
  • 深入Flink核心概念:解锁大数据流处理的奥秘
  • vue-36(为组件编写单元测试:属性、事件和方法)
  • 【Linux】Rocky Linux 安装教程
  • vscode基本使用
  • armv8汇编码分析
  • QGIS+CesiumIon
  • 多模态进化论:GPT-5V图文推理能力在工业质检中的颠覆性应用
  • 媲美 GPT-4o,Kontext 实现高效文本驱动图像编辑
  • vscode、openocd 使用
  • Excel 如何让数据自动按要求排序或筛选?
  • Learning PostgresSQL读书笔记: 第16章 Configuration and Monitoring
  • PostgreSQL大表创建分区实战
  • Arduino CH552 ADC的使用
  • NumPy 或 PyTorch/TensorFlow 中的张量理解
  • Servlet开发流程(包含IntelliJ IDEA项目添加Tomcat依赖的详细教程)
  • 【论文阅读】DeepEyes: Incentivizing “Thinking with Images” via Reinforcement Learning
  • 【新手小白的嵌入式学习之路】-STM32的学习_GPIO 8种模式学习心得
  • JavaWeb笔记03
  • GC393:一款低功耗双电压比较器芯片
  • 设计模式-责任链模式
  • SpringBoot控制反转
  • vue中的toRef
  • 【Redis】StringRedisTemplate 和 RedisTemplate 的区别
  • Python 数据分析与可视化 Day 14 - 建模复盘 + 多模型评估对比(逻辑回归 vs 决策树)
  • JavaEE==网站开发
  • Liunx 安装 MySQL 8.0
  • Selenium使用教程-爬虫版(超详细)
  • 数学建模_图论
  • 重塑智能体决策路径:深入理解 ReAct 框架