在Linux系统中,管理磁盘空间的工具十分重要,其中LVM(逻辑卷管理)是一种常用的磁盘管理方式。然而,在使用LVM的过程中,有时候出现了一些问题,比如“删除VG(卷组)后重启,出现只读的情况”,给使用者带来诸多不便。那么,我们该如何解决这个问题呢?以下从如下三个方面进行分析解答:
一、问题的原因
在问题出现之前,我们先来了解一下LVM的一个基本概念——VG(卷组),它代表硬盘上整块区域的磁盘空间。当我们通过LVM来管理硬盘空间时,通常会将硬盘划分成多个PV(物理卷),然后将几个PV合并成一个VG,最后使用LV(逻辑卷)对这个VG进行划分,从而使得数据在硬盘上的存储管理更加灵活。
而我们的问题就出在删除VG时。在删除VG时,有一些数据依然存储在硬盘上,在重启系统之后,就会发现磁盘空间变成了只读状态,这是因为这些未清除的数据作系统误认为已经存在于VG中,因此在启动时被自动挂载,导致了磁盘空间的只读状态。
二、解决方案
要解决这个问题,我们需要以下步骤:
1. 打开系统,进入单用户模式。
在单用户模式下,系统不会挂载硬盘,这样我们就可以在不被系统干扰的情况下操作硬盘。
2. 删除残余的VG。
使用vgdisplay命令查看已有的VG,找到需要删除的VG对应的VG UUID(通常以vg开头,由一串数字组成),然后在终端中使用vgremove命令将其删除。
3. 清除挂载信息。
使用mount命令查看已经挂载的文件系统,找到与之前的VG有关的文件系统,使用umount命令将其解挂载。
4. 清除LVM缓存。
使用lvmdiskscan命令清除LVM缓存,防止删除VG后系统误认为其依然存在。
5. 重启系统。
使用reboot命令重启系统,此时磁盘空间应该已经变为可读写状态。如果还有问题,可以使用fsck等命令检查并修复文件系统,使其重新可读写。
三、预防措施
为了避免类似这样的问题再次出现,我们可以在删除VG之前先确认一下操作是否正确,并检查是否有未清除的数据等问题。另外,建议多备份一些重要的数据,以避免数据损失。
以上,就是解决Linux系统删除VG后重启只读的问题的方法以及一些预防措施。希望这篇文章对大家有所帮助。
相关问题拓展阅读:
什么情况会导致虚拟机的文件系统变成只读权限
虚拟机linux在svn checkout代码过程中出现错误,“/”文件系统突然变成只读,羡梁dmsg可以看到内核出现IO错误。重启虚拟机表示磁盘错误,用命令“fsck / -y”修复磁盘错误。这种情况出现过几次,有时修复磁盘之后可以继续启动,后来干脆就无法启动了。重新安装虚拟机并checkout代码,也很容易出现这个问题。宿主系统运行任务比较多,系统比较慢。有一次svn checkout出错,在宿主系统(Ubuntu)用iotop看进程IO状况,发现updatedb.mlocate写入速度很大,达到10M/s以上。这个页面解析了原因:High I/O causing filesystem corruption当宿主系统和虚拟机的IO都比较繁忙时,虚拟机的IO请求得不到及时的响应。虚拟机linux不知道自己运行在虚拟机里面,会认为是磁盘IO错误,为了保护磁盘数据会remount分区为只读。李键解决方法见上面的链接,不过都比较高级(使用直接IO、修改内核参数、使用LVM分区等)。简单解决办法:1) 不要在宿主系统和虚拟机同时运行高IO任务(别以为你的i7电脑很厉害);2) 备份虚拟机(复制vmdk文件或使用兄扰运VirtualBox快照),就算出错了也容易恢复。
linux操作系统里.bashrc变成只读文件了怎么办?
变成只读文件了,怎么办呢?这个的话给它转换一下格式就可以了,就可以变成又可以读又可以写的文件。
关于linux系统删除vg后重启变为只读的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
香港服务器首选树叶云,2H2G首月10元开通。树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云 服务器 和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
在linux系统中,启动是自动运行的命令可将其放在什么配置文件中
展开全部.开机启动时自动运行程序Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init。 init根据配置文件继续引导过程,启动其它进程。 通常情况下,修改放置在 /etc/rc或 /etc/rc.d 或 /etc/rc?.d 目录下的脚本文件,可以使init自动启动其它程序。 例如:编辑 /etc/rc.d/ 文件,在文件最末加上一行xinit或startx,可以在开机启动后直接进入X-Window。 2.登录时自动运行程序用户登录时,bash首先自动执行系统管理员建立的全局登录script :/ect/profile。 ...
如何排除linux系统的读写缓存进行磁盘性能测试
1、先熟悉两个特殊的设备:(1)/dev/null:回收站、无底洞。 (2)/dev/zero:产生字符。 2、测试磁盘写能力代码如下:time dd if=/dev/zero of=/ bs=4k count=因为/dev//zero是一个伪设备,它只产生空字符流,对它不会产生IO,所以,IO都会集中在of文件中,of文件只用于写,所以这个命令相当于测试磁盘的写能力。 命令结尾添加oflag=direct将跳过内存缓存,添加oflag=sync将跳过hdd缓存。 3、测试磁盘读能力代码如下:time dd if=/dev/sdb of=/dev/null bs=4k因为/dev/sdb是一个物理分区,对它的读取会产生IO,/dev/null是伪设备,相当于黑洞,of到该设备不会产生IO,所以,这个命令的IO只发生在/dev/sdb上,也相当于测试磁盘的读能力。 (Ctrl+c终止测试)4、测试同时读写能力代码如下:time dd if=/dev/sdb of=/ bs=4k在这个命令下,一个是物理分区,一个是实际的文件,对它们的读写都会产生IO(对/dev/sdb是读,对/是写),假设它们都在一个磁盘中,这个命令就相当于测试磁盘的同时读写能力。
如何设置linux中的机器名
两种方法:1:修改/etc/sysconfig/network文件和/etc/hosts文件;重启后依然后生效,但是能保存在你的系统中!(注:修改文件可以用系统自带的vi编辑器来修改!)2:用hostname命令经行修改,改后立即生效,但是重启后则又回复到以前的名字!
发表评论