Ubuntu服务器 /data 盘需要手动挂载的解决方案

服务器 /data 盘需要手动挂载的解决方案

如果重启服务器后,发现 /data没有自动挂载,通常是因为:

  1. /etc/fstab 配置文件 没有正确设置 自动挂载。
  2. 该磁盘 没有被正确识别,需要手动挂载。
  3. 文件系统错误 导致挂载失败。

下面是解决方案,确保 /data 盘可以手动挂载,然后配置自动挂载


🔍 1. 确认 /data 盘是否存在

首先,使用 lsblkfdisk 检查当前磁盘情况:

lsblk

示例输出:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0   100G  0 disk /
sdb      8:16   0   500G  0 disk 

这里 sdb 可能是 /data 盘,但它还没有挂载

如果 lsblk 不能确认,可以使用:

sudo fdisk -l

或者:

sudo blkid

📌 2. 手动挂载 /data

2.1 确认 /data 目录是否存在

sudo mkdir -p /data

2.2 挂载磁盘

如果 lsblk 显示 /data 盘是 /dev/sdb1,手动挂载:

sudo mount /dev/sdb1 /data

然后检查是否成功挂载:

df -h

如果 /data 盘已挂载,说明手动挂载成功。


🔄 3. 配置开机自动挂载

如果 /data 盘需要 开机自动挂载,需要修改 /etc/fstab

3.1 获取磁盘 UUID

使用以下命令获取 /data 盘的 UUID:

sudo blkid

示例输出:

/dev/sdb1: UUID="1234-ABCD-5678-EFGH" TYPE="ext4"

3.2 编辑 /etc/fstab

打开 /etc/fstab

sudo nano /etc/fstab

添加一行:

UUID=1234-ABCD-5678-EFGH  /data  ext4  defaults  0 2

说明:

  • UUID=1234-ABCD-5678-EFGH:磁盘的 UUID(用你自己磁盘的 UUID 替换)。
  • /data:挂载点。
  • ext4:文件系统类型(如果你的磁盘是 xfs,改为 xfs)。
  • defaults:常规挂载选项,表示读写权限正常。
  • 0 2
    • 0:不进行 dump 备份(通常 0)。
    • 2:用于 fsck 检查磁盘错误,/ 盘用 1,其他盘一般用 2

保存文件(按 Ctrl + XYEnter)。

3.3 测试 /etc/fstab 是否正确

运行:

sudo mount -a

如果没有报错,说明 /etc/fstab 配置正确。

3.4 重启并检查

sudo reboot

重启后,检查 /data 是否成功挂载:

df -h

如果 /data 正常显示在列表中,说明 开机自动挂载成功! 🎉


🛠️ 4. 其他可能遇到的问题

❌ 问题 1:手动挂载时报错

如果 mount /dev/sdb1 /data 报错:

mount: unknown filesystem type 'ext4'

可能是文件系统未格式化,需要格式化:

sudo mkfs.ext4 /dev/sdb1

注意:这会清空 /dev/sdb1 磁盘上的所有数据!如果磁盘上有重要数据,不要执行这一步!


❌ 问题 2:挂载后 /data 为空

如果你之前存储的数据丢失,可能是 挂载了错误的分区,尝试:

lsblk
sudo blkid

找到正确的磁盘路径再挂载。


❌ 问题 3:/etc/fstab 配置错误,导致系统无法启动

如果 /etc/fstab 写错了,可能会导致 系统无法启动
解决方案:

  1. 进入恢复模式

    • 在开机引导时按 ESCShift 进入 GRUB 菜单。
    • 选择 Advanced optionsRecovery mode
    • 选择 Drop to root shell 进入命令行。
  2. 编辑 /etc/fstab 并修复错误

    mount -o remount,rw /
    nano /etc/fstab
    
    • 删除或修正错误的挂载行。
  3. 重新启动系统

    reboot
    

✅ 总结

步骤命令说明
检查磁盘lsblk / fdisk -l / blkid找到 /data 盘对应的设备
手动挂载sudo mount /dev/sdb1 /data临时挂载磁盘
开机自动挂载编辑 /etc/fstab添加 UUID=xxx /data ext4 defaults 0 2
测试 fstab 是否正确sudo mount -a检查配置是否正确
重启检查df -h确保 /data 盘开机自动挂载

🚀 现在,您的 /data 盘应该可以在服务器重启后自动挂载了! 🚀
如果还有问题,请提供 lsblkdf -h/etc/fstab 配置,我可以帮你进一步排查!😊

$ sudo lsblk -l
[sudo] password for:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
loop0 7:0 0 63.7M 1 loop /snap/core20/2434
loop1 7:1 0 63.7M 1 loop /snap/core20/2496
loop2 7:2 0 87M 1 loop /snap/lxd/29351
loop3 7:3 0 89.4M 1 loop /snap/lxd/31333
loop4 7:4 0 44.3M 1 loop /snap/snapd/23258
loop5 7:5 0 44.4M 1 loop /snap/snapd/23545
sda 8:0 0 447.1G 0 disk
sda1 8:1 0 1G 0 part /boot/efi
sda2 8:2 0 2G 0 part /boot
sda3 8:3 0 444G 0 part
sdb 8:16 0 29.1T 0 disk
ubuntu–vg-ubuntu–lv 253:0 0 100G 0 lvm /这里的sdb就是我要的盘,如何挂载

挂载 sdb 盘并设置开机自动挂载

你的 lsblk -l 输出中显示:

sdb                     8:16   0  29.1T  0 disk

这表示 sdb 是一块 未分区未挂载 的磁盘,总大小 29.1T

下面是完整的 挂载 sdb 的步骤,包括 手动挂载、格式化、分区、以及开机自动挂载


🔍 1. 检查 sdb 是否已有分区

运行:

sudo fdisk -l /dev/sdb

如果输出类似:

Disk /dev/sdb doesn't contain a valid partition table

说明 sdb 没有分区,需要格式化(如果有数据,请提前备份)。


📌 2. 挂载 sdb(如果已经格式化)

如果 sdb 已经格式化fdisk -l 显示有分区,如 /dev/sdb1),可以直接挂载:

sudo mkdir -p /data  # 创建挂载点
sudo mount /dev/sdb1 /data  # 挂载

然后检查是否挂载成功:

df -h

如果 /data 目录中可以看到磁盘空间,说明挂载成功。


🔄 3. 创建分区(如果 sdb 没有分区)

如果 fdisk -l /dev/sdb 显示 sdb 没有分区,则需要先创建分区。

3.1 使用 fdisk 创建分区

sudo fdisk /dev/sdb

fdisk 命令行:

  1. 输入 n(新建分区)
  2. Enter(默认主分区)
  3. Enter(使用默认起始扇区)
  4. Enter(使用整个磁盘)
  5. 输入 w(写入并退出)

3.2 格式化分区

假设分区名称为 /dev/sdb1,使用 mkfs.ext4 进行格式化:

sudo mkfs.ext4 /dev/sdb1

警告:格式化会清空所有数据!如果 sdb 里有数据,请先备份。


📌 4. 手动挂载 sdb1

创建挂载点:

sudo mkdir -p /data

挂载磁盘:

sudo mount /dev/sdb1 /data

检查是否成功:

df -h

如果 /data 显示 sdb1 的容量,说明挂载成功。


🔄 5. 设置开机自动挂载

5.1 获取 sdb1 的 UUID

运行:

sudo blkid /dev/sdb1

示例输出:

/dev/sdb1: UUID="1234-ABCD-5678-EFGH" TYPE="ext4"

5.2 编辑 /etc/fstab

sudo nano /etc/fstab

添加一行:

UUID=1234-ABCD-5678-EFGH  /data  ext4  defaults  0 2

解释:

  • UUID=1234-ABCD-5678-EFGH(用 blkid 输出的 UUID)。
  • /data(挂载点)。
  • ext4(文件系统类型)。
  • defaults(挂载选项)。
  • 0 2(文件系统检查顺序,2 代表非 / 分区)。

保存并退出(按 Ctrl + XYEnter)。

5.3 测试 /etc/fstab 是否正确

sudo mount -a

如果没有错误,则 /etc/fstab 配置正确。


📌 6. 重新启动并检查

sudo reboot

重启后检查:

df -h

如果 /data 仍然正确挂载,说明 挂载成功 🎉。


🚀 总结

步骤命令说明
检查磁盘lsblk / fdisk -l /dev/sdb确保 sdb 存在
手动挂载(已有格式)sudo mount /dev/sdb1 /data如果 sdb 已有格式
创建分区(若无)sudo fdisk /dev/sdbnw创建 /dev/sdb1
格式化(清空数据)sudo mkfs.ext4 /dev/sdb1格式化为 ext4
创建挂载点sudo mkdir -p /data确保 /data 存在
挂载磁盘sudo mount /dev/sdb1 /data手动挂载
获取 UUIDsudo blkid /dev/sdb1用于 /etc/fstab 持久挂载
配置 /etc/fstabsudo nano /etc/fstab设置开机自动挂载
测试挂载sudo mount -a检查 /etc/fstab 配置
重启检查sudo rebootdf -h确保 /data 盘自动挂载

🚀 现在你的 /data 盘应该可以 永久自动挂载 了!
如果还有问题,提供 lsblkdf -h/etc/fstab 配置,我可以继续帮你排查!😊

后记

2025年2月22日19点18分于上海,在GPT 4o大模型辅助下完成。确实完成了服务器挂载的任务。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/70585.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

输入搜索、分组展示选项、下拉选取,全局跳转页,el-select 实现 —— 后端数据处理代码,抛砖引玉展思路

详细前端代码写于上一篇:输入搜索、分组展示选项、下拉选取,el-select 实现:即输入关键字检索,返回分组选项,选取跳转到相应内容页 —— VUE项目-全局模糊检索 【效果图】:分组展示选项 >【去界面操作体…

【SpringBoot】_统一功能处理:统一数据返回格式

目录 1. 对所有返回类型方法进行统一数据返回类型处理 2. 部分返回类型方法存在的问题 3. 对两种有误的方法进行处理 仍以图书管理系统为例。 创建Result对后端返回给前端的数据进行封装,增加业务状态码与错误信息,将原本的数据作为data部分&#xff…

智能交通系统(Intelligent Transportation Systems):智慧城市中的交通革新

智能交通系统(Intelligent Transportation Systems, ITS)是利用先进的信息技术、通信技术、传感技术、计算机技术以及自动化技术等,来提升交通系统效率和安全性的一种交通管理方式。ITS通过收集和分析交通数据,智能化地调度、控制…

Unity百游修炼(1)——FootBall详细制作全流程

一、引言 游玩测试: Football 游玩测试 1.项目背景与动机 背景:在学习 Unity 的过程中,希望通过实际项目来巩固所学知识,同时出于对休闲小游戏的喜爱,决定开发一款简单有趣的小游戏加深自己的所学知识点。 动机&#…

QQ登录测试用例报告

QQ登录测试用例思维导图 一、安全性测试用例 1. 加密传输与存储验证 测试场景:输入账号密码并提交登录请求。预期结果:账号密码通过加密传输(如HTTPS)与存储(如哈希加盐),无明文暴露。 2. 二…

无人机实战系列(三)本地摄像头+远程GPU转换深度图

这篇文章将结合之前写的两篇文章 无人机实战系列(一)在局域网内传输数据 和 无人机实战系列(二)本地摄像头 Depth-Anything V2 实现了以下功能: 本地笔记本摄像头发布图像 远程GPU实时处理(无回传&#…

读取罗克韦尔AllenBradley Micro-Logix1400 罗克韦尔 CIP PCCC通信协议

通信协议实例下载 <-----实例下载 MicroLogix 1400的通信能力 MicroLogix 1400支持多种通信协议&#xff0c;包括CIP&#xff08;通过EtherNet/IP实现&#xff09;、Modbus RTU/TCP、DF1等4812。其硬件集成以太网端口&#xff0c;便于通过EtherNet/IP进行CIP通信15。 CIP…

Python游戏编程之赛车游戏6-5

1 碰撞检测 在显示了玩家汽车和“敌人”汽车之后&#xff0c;接下来就要实现玩家与“敌人”的碰撞检测了。 代码如图1所示。 图1 碰撞检测代码 第72行代码通过pygame.sprite.spritecollideany()函数判断P1和enemies是否发生了碰撞&#xff0c;如果发生碰撞&#xff0c;该函数…

【QT 网络编程】HTTP协议(二)

文章目录 &#x1f31f;1.概述&#x1f31f;2.代码结构概览&#x1f31f;3.代码解析&#x1f338;Http_Api_Manager - API管理类&#x1f338;Http_Request_Manager- HTTP请求管理类&#x1f338;ThreadPool - 线程池&#x1f338;TestWindow- 测试类 &#x1f31f;4.运行效果&…

保姆级! 本地部署DeepSeek-R1大模型 安装Ollama Api 后,Postman本地调用 deepseek

要在Postman中访问Ollama API并调用DeepSeek模型,你需要遵循以下步骤。首先,确保你有一个有效的Ollama服务器实例运行中,并且DeepSeek模型已经被加载。 可以参考我的这篇博客 保姆级!使用Ollama本地部署DeepSeek-R1大模型 并java通过api 调用 具体的代码实现参考我这个博…

在PHP Web开发中,实现异步处理有几种常见方式的优缺点,以及最佳实践推荐方法

1. 消息队列 使用消息队列&#xff08;如RabbitMQ、Beanstalkd、Redis&#xff09;将任务放入队列&#xff0c;由后台进程异步处理。 优点&#xff1a; 任务持久化&#xff0c;系统崩溃后任务不丢失。 支持分布式处理&#xff0c;扩展性强。 实现步骤&#xff1a; 安装消息…

算法15--BFS

BFS 原理经典例题解决FloodFill 算法[733. 图像渲染](https://leetcode.cn/problems/flood-fill/description/)[200. 岛屿数量](https://leetcode.cn/problems/number-of-islands/description/)[695. 岛屿的最大面积](https://leetcode.cn/problems/max-area-of-island/descrip…

网络空间安全(2)应用程序安全

前言 应用程序安全&#xff08;Application Security&#xff0c;简称AppSec&#xff09;是一个综合性的概念&#xff0c;它涵盖了应用程序从开发到部署&#xff0c;再到后续维护的整个过程中的安全措施。 一、定义与重要性 定义&#xff1a;应用程序安全是指识别和修复应用程序…

Plantsimulation中机器人怎么通过阻塞角度设置旋转135°

创建一个这样的简单模型。 检查PickAndPlace的角度表。源位于180的角位置&#xff0c;而物料终结位于90的角位置。“返回默认位置”选项未被勾选。源每分钟生成一个零件。启动模拟时&#xff0c;Plant Simulation会选择两个位置之间的最短路径。示例中的机器人无法绕135的角位…

Fisher信息矩阵(Fisher Information Matrix, FIM)与自然梯度下降:机器学习中的优化利器

Fisher信息矩阵与自然梯度下降&#xff1a;机器学习中的优化利器 在机器学习尤其是深度学习中&#xff0c;优化模型参数是一个核心任务。我们通常依赖梯度下降&#xff08;Gradient Descent&#xff09;来调整参数&#xff0c;但普通的梯度下降有时会显得“笨拙”&#xff0c;…

Spring Boot集成Swagger API文档:傻瓜式零基础教程

Springfox Swagger 是一个用于构建基于 Spring Boot 的 RESTful API 文档的开源工具。它通过使用注解来描述 API 端点&#xff0c;自动生成易于阅读和理解的 API 文档。Springfox 通过在运行时检查应用程序&#xff0c;基于 Spring 配置、类结构和各种编译时 Java 注释来推断 A…

接口测试基础 --- 什么是接口测试及其测试流程?

接口测试是软件测试中的一个重要部分&#xff0c;它主要用于验证和评估不同软件组件之间的通信和交互。接口测试的目标是确保不同的系统、模块或组件能够相互连接并正常工作。 接口测试流程可以分为以下几个步骤&#xff1a; 1.需求分析&#xff1a;首先&#xff0c;需要仔细…

kafka-集群缩容

一. 简述&#xff1a; 当业务增加时&#xff0c;服务瓶颈&#xff0c;我们需要进行扩容。当业务量下降时&#xff0c;为成本考虑。自然也会涉及到缩容。假设集群有 15 台机器&#xff0c;预计缩到 10 台机器&#xff0c;那么需要做 5 次缩容操作&#xff0c;每次将一个节点下线…

Spring Boot 概要(官网文档解读)

Spring Boot 概述 Spring Boot 是一个高效构建 Spring 生产级应用的脚手架工具&#xff0c;它简化了基于 Spring 框架的开发过程。 Spring Boot 也是一个“构件组装门户”&#xff0c;何为构件组装门户呢&#xff1f;所谓的“构件组装门户”指的是一个对外提供的Web平台&#x…

Linux 命令大全完整版(12)

Linux 命令大全 5. 文件管理命令 ln(link) 功能说明&#xff1a;连接文件或目录。语  法&#xff1a;ln [-bdfinsv][-S <字尾备份字符串>][-V <备份方式>][--help][--version][源文件或目录][目标文件或目录] 或 ln [-bdfinsv][-S <字尾备份字符串>][-V…