CentOs 服务器重启后,找不到之前挂载的磁盘?

文章描述了一种情况,即CentOS服务器重启后找不到数据盘的挂载信息。通过`fdisk-l`和`blkid`命令确认磁盘存在并获取UUID,然后在`/etc/fstab`中添加丢失的挂载信息,最后使用`mount-a`命令重新挂载,成功解决问题。

问题描述

CentOs 服务器重启后,找不到之前挂载的数据盘磁盘

问题分析

  1. 可能是磁盘损坏,断电。 这种问题直接排查硬件问题即可。
  2. 可能分区表有问题,丢失了数据盘的挂载信息。

解决方案 - 修复分区表丢失数据盘挂载信息的问题

  1. 先看下磁盘是否存在

    fdisk -l
    [root@TEST-ecs01 ~]# fdisk -l
    
    Disk /dev/vda: 21.5 GB, 21474836480 bytes, 41943040 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk label type: dos
    Disk identifier: 0x000d9a78
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/vda1   *        2048    41943039    20970496   83  Linux
    
    Disk /dev/vdb: 322.1 GB, 322122547200 bytes, 629145600 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    
    
    • 可以看到磁盘依然存在,只是通过 df -h 命令看不到磁盘信息。
  2. 查看分区表

    [root@TEST-ecs01 ~]# cat /etc/fstab
    
    #
    # /etc/fstab
    # Created by anaconda on Tue May 19 03:50:16 2020
    #
    # Accessible filesystems, by reference, are maintained under '/dev/disk'
    # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
    #
    UUID=5f56c9a9-0b5f-428b-b092-7cc41e7c4a93 /                       ext4    defaults        1 1
    
    • 可以看到分区表中没有了数据盘的挂载信息
  3. 获取磁盘的硬件UUID

    # blkid 是定位或打印块设备属性的命令行实用工具。它利用 libblkid 库在 Linux 系统中获得到磁盘分区的 UUID。
    [root@TEST-ecs01 ~]# blkid
    /dev/vdb: UUID="40cf2200-65f2-4da7-acdf-dc1015fce2fb" TYPE="xfs"
    /dev/vda1: UUID="5f56c9a9-0b5f-428b-b092-7cc41e7c4a93" TYPE="ext4"
    
    • 可知 /dev/vdb 的UUID 为 40cf2200-65f2-4da7-acdf-dc1015fce2fb
  4. 修复分区表

    vim /etc/fstab
    ## 在文件中追加这一行即可
    UUID=40cf2200-65f2-4da7-acdf-dc1015fce2fb /home/work xfs defaults 0 0
    
  5. 重新执行挂载命令即可

    mount -a
    
  6. 验证效果

    [root@TEST-ecs01 ~]# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    devtmpfs        3.7G     0  3.7G   0% /dev
    /dev/vda1        20G   16G  3.4G  83% /
    /dev/vdb        300G   51G  250G  17% /home/work
    tmpfs           756M     0  756M   0% /run/user/0
    
### 如何在 CentOS 7 虚拟机中挂载磁盘 #### 准备工作 为了成功完成操作,确保虚拟机处于关机状态并已通过 VMware 添加新的硬盘设备[^1]。 --- #### 查看新增加的硬盘 启动虚拟机后,使用 `lsblk` 或者 `fdisk -l` 命令查看系统中的所有磁盘以及分区情况。如果发现了一个未被使用的磁盘(例如 `/dev/vdb`),则说明新硬盘已经成功添加到虚拟机中[^3]。 ```bash lsblk ``` 或者: ```bash sudo fdisk -l ``` 上述命令会显示当前系统的磁盘列表及其对应的分区信息。 --- #### 对新硬盘进行分区 如果没有预先创建好分区,则需要手动对其进行分区处理。以下是具体方法之一——利用 `parted` 工具快速建立 GPT 类型的新分区表,并分配整个空间作为单一主分区: ```bash sudo parted /dev/vdb mklabel gpt sudo parted /dev/vdb mkpart primary xfs 0% 100% ``` 这里假设目标磁盘路径为 `/dev/vdb`;实际应用时应替换为你自己的设备名。 完成后再次运行 `lsblk` 验证是否产生了名为类似 `vdb1` 的新分区节点。 --- #### 格式化分区 接着要对该分区设置文件系统格式,默认推荐选用 XFS 文件系统,因为它适合现代 Linux 发行版并且性能较好: ```bash sudo mkfs.xfs /dev/vdb1 ``` 注意:此过程不可逆,请确认无误后再继续执行以上指令! --- #### 创建挂载点目录 决定将该分区挂载至哪个位置之前先定义一个合适的空闲目录充当挂载点角色。比如我们打算将其放置于 `/mnt/data` 下面: ```bash sudo mkdir -p /mnt/data ``` 这样就完成了初步准备工作。 --- #### 实现临时挂载测试 尝试把刚刚准备好的分区暂时连接起来看看效果如何吧? ```bash sudo mount /dev/vdb1 /mnt/data/ ``` 进入指定目录验证一下内容是否存在异常状况即可得知结果啦~ ```bash cd /mnt/data && ls ``` 假如一切正常的话应该能够看到里面没有任何东西存在哦~ 这代表我们的努力初见成效咯!不过此时重启之后还是会丢失关联关系哟,所以下一步就是永久生效方案了。 --- #### 修改 FSTAB 达成持久化设定 编辑 `/etc/fstab` 文件,在最后一行追加上如下形式的一条记录实现开机自动加载功能: ```plaintext /dev/vdb1 /mnt/data xfs defaults 0 0 ``` 保存退出后记得检验语法准确性以防万一发生错误影响正常使用体验呢😊 ```bash mount -a ``` 若没有报错提示即表明配置正确无疑问啦🎉 --- #### 使用 NFS 挂载远程存储 (可选扩展) 对于某些场景可能还需要支持网络共享服务之类的高级需求,这时候就可以考虑采用NFS协议来达成目的啰~下面简单介绍一下基本流程供大家参考学习哈~ 首先得保证服务器端已经开启了相应的服务程序才行呀,然后客户端这边按照常规方式安装必要组件软件包: ```bash yum install nfs-utils rpcbind -y systemctl start rpcbind systemctl enable rpcbind ``` 最后参照官方文档或者其他资料调整参数选项直至满足业务要求为止😄[^4]。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值