如何解决虚拟机频繁分离和附加磁盘导致的识别错误
问题描述
CentOS 6.5 (2.6.32-431.29.2.el6.x86_64)中正常启动时附带两块数据磁盘 A 和 B,大小为 10G 和 50G,分别对应 OS 中的 sdc 和 sdd。开机状态下,在很短时间内先后将磁盘 A 和 B 分离,再将磁盘 B 附加上去。此时系统中使用 fdisk,看到磁盘 B(50G)已经映射为盘符 sdc,但磁盘信息还是磁盘 A(10G)的信息。且无法对 B 磁盘的文件系统进行正常操作,如 mount。
操作前
从平台层面观察数据磁盘信息,注意磁盘名,LUN ID 和 Disk size 的对应。
#fdisk -l
系统层面扫描到的磁盘信息
#dumpe2fs
文件系统信息。
#lsblk
查看块设备。注意 MAJ:MIN 和 SIZE 代表的主要:次要驱动号和磁盘尺寸。
操作后
在门户中连续执行分离磁盘 A 和 B,再附加磁盘 B 的操作。
从平台层面观察数据磁盘信息,注意磁盘名,LUN ID 和 Disk size 的变化,这表示该虚拟机只有一块 50GB 的数据磁盘。
系统内运行 mount
和 fdisk
查看挂载和磁盘信息。
sdd 还挂载在 /data 上。但已经无法正常工作,任何操作会报 IO 错误。
fdisk
显示数据磁盘 sdc 的大小还是磁盘 A 的信息(我们挂载的是磁盘 B)。 立即访问http://market.azure.cn
而对应该成为 sdc 的 B 磁盘进行挂载会发现读取不到文件系统信息。
#lsblk
信息也未更正。
问题分析
对磁盘进行分离和附加的操作间隔时间太小,该案例中 3 分钟内完成了三次操作;导致内核对磁盘的信息未得到及时更新。误认为被附加回的磁盘还是原来的磁盘,但因为磁盘的几何构造发生了变化,因此导致冲突。文件系统也无法正确识别出来。
解决方法
通过下面命令强制对该设备进行刷新,使内核重新读取其构造信息。
echo 1 > /sys/class/scsi_device/<device>/device/rescan
Note
device 为磁盘的 SCSI 地址。
这里我们的测试结果。
转载于:https://www.cnblogs.com/zangdalei/p/7693624.html
如何解决虚拟机频繁分离和附加磁盘导致的识别错误相关推荐
- Nginx完美解决前后端分离端口号不同导致的跨域问题
Nginx完美解决前后端分离端口号不同导致的跨域问题 参考文章: (1)Nginx完美解决前后端分离端口号不同导致的跨域问题 (2)https://www.cnblogs.com/PyKK2019/p ...
- 接上文 ,解决 虚拟机VM,U盘(磁盘)装有系统,将其中系统安装到另外一块磁盘的具体操作
问题原因:接上文,将生成的vsdk格式的磁盘导入VM创建镜像,相关于U盘装载系统镜像,将U盘其中的镜像导入到磁盘里边,U盘是引导,会将系统最终装载到磁盘 出错原因是因为 没有新建第二块磁盘 解决 新增 ...
- 如何解决vscode频繁唤起git for Windows 导致电脑内存占用多大,cpu占用率飙升、风扇狂转问题
亲爱的小伙伴,你是不是发现最近电脑风扇狂转,在打开任务管理器后发现 git for window 占用了大量的cup和内存.不要担心,一招教你解决这个问题. 1.打开vscode点齿轮图标,选择设置 ...
- Vmware 虚拟机提示:无法打开磁盘***.vmdk 无法启动虚拟机 解决办法
Vmware 虚拟机提示:无法打开磁盘***.vmdk,导致无法启动虚拟机 原因: 之前挂载了多VMDK硬盘文件 解决办法如下: 在确定不需要挂载多余的VMDK硬盘文件情况下操作. 首先找到.vmx文 ...
- sql数据库分离附加_使用分离和附加方法移动SQL数据库
sql数据库分离附加 This article explores the process of moving a SQL database using the detach and attach me ...
- 如何给DPM服务器附加磁盘?
我们在这里只讨论DPM安装在Hyper-V的情况下如何附加磁盘 1. 首先将Hyper-V关机. 2. 在物理机上脱机一个磁盘 3. 给Hyper-V添加SCSI磁动器 4. 添加硬盘驱动器 5. 选 ...
- mysql数据库的分离_数据库分离和附加 (SQL Server)
数据库分离和附加 (SQL Server)Database Detach and Attach (SQL Server) 06/30/2020 本文内容 适用于:Applies to: SQL Ser ...
- 诊断虚拟机频繁 OOM 的问题
女主宣言 本文作者霍明明负责 360 HULK 云平台虚拟化和容器化服务的技术布道和解决方案推广等工作.本文主要探究的 OOM Killer 是一个内核功能,当宿主机内存不足时,会使用一系列启发式技术 ...
- linux 附加数据库文件,SQL Server 数据库分离与附加图文详解
SQL Server 数据库分离与附加图文教程,需要的朋友可以参考一下. 一.概述 SQL Server提供了"分离/附加"数据库."备份/还原"数据库.复制数 ...
最新文章
- java oracle数据库高效分页查询_oracle高效分页查询总结
- Flutter 基础布局Widgets之Baseline、AspectRatio详解
- 什么是拉电流和灌电流?
- zabbix 监控 elasticsearch
- python dlib学习(二):人脸特征点标定
- eclipse为什么导入不了awt_为什么选择javafx?
- 启动mac版docker自带的k8s
- (软件工程)用例说明模板
- 【Flink】SASL encryption trust check: localHostTrusted = false, remoteHostT
- 拖拽 开发 easyui php,Easyui-Builder
- 礼物帮手项目(3) - 传id跳转详情页(尝试2种方法)
- 基于JAVAWeb美食网站设计计算机毕业设计源码+数据库+lw文档+系统+部署
- 2023常见的前端面试题(附加解答)
- 苹果电脑与xcode的快捷键
- 4种常见的鉴权方式及说明
- 读曾仕强《管理的方与圆》笔记三
- HyperAttentionDTI:基于注意机制的序列深度学习改进药物-蛋白质相互作用预测
- Ubuntu使用笔记——Synaptic
- 记一次CH552不识别无法下载解决办法
- Snort 预处理器 ——portscan
热门文章
- 学习动态性能表(3)--v$sqlv$sql_plan
- 技术随笔 查找速度最快的Google IP
- 整数行hdu 1244 Max Sum Plus Plus Plus(dp)
- oracle普通用户使用dbms函数,oracle使用DBMS_SCHEDULER调度作业
- python程序加密license_怎么解决pycharm license Acti的方法
- python unicodeencodeerror_解决 Python UnicodeEncodeError 错误
- python requests_Python爬虫之requests模块
- 如何给安卓应用添加权限
- HALCON选择标定板文件
- python网站设计开题报告_XX网站设计开题报告范文