学习如何安全的从LVM中移除磁盘,当磁盘卷中有磁盘出现问题或是想把磁盘卷中的磁盘重新使用时就显得十分有用。本教程将重点关注以下问题:

  • 如何安全的从LVM中移除磁盘
  • 如何联机从VG中移除磁盘
  • 如何在物理层面进行磁盘数据拷贝
  • 如何联机替换LVM中的故障磁盘
  • 如何在物理层面将磁盘分区移动至另一磁盘
  • 如何释放磁盘以缩小VG容量
  • 如何安全的减少VG

首先, 我们需要了解一下服务器的情况。要了解服务器磁盘情况,可以使用lsblk命令,命令执行结果如下图所示:

可以看到,主机目前具有两个LVM,其中root是在安装系统时生成的,挂载到根目录;另一个Lv01是新添加的LVM,挂载到/mydata目录。另外,主机还安装了一块空白磁盘”sdc”,我们将要做的就是用”sdc”磁盘替换Lv01中的”sdb”磁盘,以达到安全移除LVM磁盘的目的。注意所有操作都是联机进行,并不会对系统产生任何影响。

要替换磁盘,那么很明显首先要把新磁盘”sdc”加入到vg01中。使用pvcreate命令可以将”/dev/sdc”生成一个新的pv,然后使用vgextend命令将”/dev/sdc”添加到vg01中。命令执行步骤如下图所示:

现在,我们将要移除的磁盘”/dev/sdb”和替换磁盘”/dev/sdc”都处于同vg01中,可以用pvs命令进行查看:

 

可以看到,”/dev/sdb”磁盘的一个分区”sdb1″加入到了vg01,现在需要做的就是将该分区移动到新安装磁盘”/dev/sdc”中。使用pvmove命令可以完成以上工作。

如图所示,”/dev/sdb1″的数据已经联机移动到了”/dev/sdc”,这样,就可以为移动磁盘做准备了。如果需要移动的数据较多,这条命令可能会执行很长时间,为了不影响其他操作,可以使用如下命令将其置于后台执行:

 pvmove /dev/sdb1 2>error.log >normal.log &

以上命令会将pvmove命令置于后台执行,并将执行的结果输出至”normal.log”,标准错误输出至”error.log”。

在移除原数据盘之前,还需要将该磁盘从其属于的VG中删除,这样才不会对系统产生影响。从vg01中删除从属磁盘,并不是使用”remove”命令,而是使用vgreduce命令,命令执行如下图所示:

现在,”/dev/sdb1″的分区已经从vg01中移除了,如果该磁盘的其他分区并没有被挂载,那么,这块磁盘就可以从系统中移除了。

以上就是我们使用pvmove命令完成移除LVM卷磁盘的全过程,这条命令可以方便的进行联机数据移动。当然,这条命令还提供了一些可选参数,”-v”参数可以输出更多的命令执行细节:

而”-i”参数可以让pvmove命令按”-i”后跟的秒数为间隔来显示命令的执行进度更新,命令示例如下:

# pvmove -i 1 /dev/sdc

转自:https://www.daehub.com/archives/8560.html

如何安全的从LVM中移除磁盘的更多相关文章

  1. Oracle Linux 6.4 LVM中误删VG之恢复过程

    一.项目背景描述 1.OSS现网测试数据库因大量小事物频繁提交运行非常缓慢.经分析为DS3950存储所在磁盘I/O存在瓶颈,大量等待事件,性能受限.另外,开发同事没有优化意识,没将小事物做成批量提交方 ...

  2. android studio 中移除module和恢复module

    一.移除Android Studio中module 在Android Studio中想要删除某个module时,在Android Studio中选中module,右键发现没有delete,如图: An ...

  3. 【python cookbook】【数据结构与算法】10.从序列中移除重复项且保持元素间顺序不变

    问题:从序列中移除重复的元素,但仍然保持剩下的元素顺序不变 解决方案: 1.如果序列中的值时可哈希(hashable)的,可以通过使用集合和生成器解决.

  4. 在Myeclipse中移除项目对Hibernate的支持

    在Myeclipse中移除项目对Hibernate的支持 在使用Hibernate框架进行开发时可能会遇到配置错误或者需要删除Hibernate支持的情况.下面就说一下如何彻底移除项目的Hiberna ...

  5. VMware Workstation与Hyper-V不兼容。请先从系统中移除Hyper-V角色,然后再运行VMware Workstation。

    VMware Workstation与Hyper-V不兼容.请先从系统中移除Hyper-V角色,然后再运行VMware Workstation. 今天在用win8.1的时候发现了这个问题,解决办法如下 ...

  6. 高效率遍历Map以及在循环过程中移除 remove指定key

    //高效率遍历Map以及在循环过程中移除 remove指定key //使用iter循环的时候 可以在循环中移除key,for在循环的过程中移除会报错哦 //本方法效率高 Iterator iter = ...

  7. Dynamics CRM 将实体从高级查找列表中移除不可见

    有时我们不需要将某个实体显示给一般用户比如配置实体,但是这种类型的实体有时候又需要给一般用户读权限ODATA的时候得能读,站点地图上的隐藏比较容易用工具配置下权限即可.其实做到这步一般就可以了但有的客 ...

  8. Git从库中移除已删除大文件

    写在前面大家一定遇到过在使用Git时,不小心将一个很大的文件添加到库中,即使删除,记录中还是保存了这个文件.以后不管是拷贝,还是push/pull都比较麻烦.今天在上传工程到github上,发现最大只 ...

  9. [翻译]LVM中逻辑卷的最大大小限制

    前言: 本文是对这篇博客Maximum Size Of A Logical Volume In LVM的翻译,敬请尊重原创和翻译劳动成果,那些随意转载的大爷们,好歹也自觉注明出处.谢谢! 英文原文地址 ...

随机推荐

  1. WUSTOJ的“讨论”和“私聊”功能如何使用

    反正我是过了1年多才知道有讨论这个功能,2年多才知道有私聊功能. 不知道大家都是什么时候发现的... 讨论还好,在FAQ界面的下边有提示,但是私聊我真没看到哪儿有提示...是我不小心点进去的. 讨论功 ...

  2. idea代码提示快捷键设置

    代码提示快捷键设置: keymap--Main Menu--Code--Completion--Basic

  3. 模拟费用流 & 可撤销贪心

    1. CF730I Olympiad in Programming and Sports 大意: $n$个人, 第$i$个人编程能力$a_i$, 运动能力$b_i$, 要选出$p$个组成编程队, $s ...

  4. 轻松玩转Ant Design Pro一

    ant design pro来源于ant design,其是一段自带样式的react组件,用于企业后台的漂亮的,可控的组件.ant design有很多组件和样式,不可能所有都记住,我们只要记住常用的, ...

  5. dfs的剪枝优化

    两个剪枝问题 1. 当两点的距离(需要走的步数)大于剩下的时间时 剪去 2.奇偶剪枝问题 如果起点到终点所需走的步数的奇偶性与时间奇偶性不同的时候 剪去 起点到终点步数的奇偶性的判断 首先 明确点的奇 ...

  6. vue的交互

    交互     Vue做交互需要引入一个库:vue-resouce.js     get:      post     jsonp   <script src="vue.js" ...

  7. ORA-01790 错误处理 SQL同一数据库中,两个查询结果数据类型不同时的union all 合

    转自: 出现这种错误,要先看一下是不是sql中有用到连接:union,unio all之类的,如果有,需要注意相同名称字段的数据类型一定要相同. 所以在union 或者union all 的时候造成了 ...

  8. 正padding负margin实现多列等高布局(转)

    转自: 巧妙运用CSS中的负值 (http://www.webhek.com/post/2345qwerqwer.html) 代码来自: https://codepen.io/Chokcoco/pen ...

  9. Redis for C#

    ServiceStack.Redis 初识Redis时接触到的.Net-Redis组件是 ServiceStack.Redis,其V3系列的最新版本是:ServiceStack.Redis.3.9.2 ...

  10. git命令——git commit

    功能 将暂存区中的更改记录到仓库. 加到staging area里面的文件,是表示已经准备好commit的.所以在commit修改之前,务必确定所有修改文件都是staged的.对于unstaged的文 ...