1
应用背景:
有时候系统崩溃无法修复,无法正常启动,而系统盘里面有需要的文件如log等需要拷贝出来,或者系统盘可以正常启动但是不方便用一台设备来启动这个系统盘。
而直接将Linux系统盘接到windowsUSB上是不会识别Linux分区的,接在Linux的USB上也只会识别EFI分区,其他分区看不到,读不了,而用户文件一般存储在根目录分区里面,这个时候可以用本文提供的方法,将linux系统盘(后面叫remote 系统盘)通过USB挂载到Linux系统(后面都叫local 系统盘),读取所有文件。
下面分两种情况讲述怎么在local 系统盘挂载remote系统盘:
情形一: remote系统盘和local系统盘安装了不同的系统。本文以local CentOS 和 remote Redhat 为例.
将Redhat 系统盘(remote)通过USB转SATA,接到CentOS 系统上(local),然后在Terminal窗口输入“lvdispaly”,即可查看到remote 系统盘的逻辑分区,如下图:
此时可以直接挂载,使用命令“mount /dev/rhel/root /mnt ”就可以读取相关文件了。
情形二:Remote 系统盘和local系统盘安装了相同的系统(不管版本),此时local系统就不能自动识别remote系统盘的常用分区了,remote盘的分区也会是NOT available 状态,因为它们的逻辑卷名一模一样,所以暂时不能使用上述方法,需要手动改一下remote系统盘的逻辑卷名称。
使用命令“vgdispaly”查看所有HDD的LVM卷组的信息,可以看到所有磁盘的“VG UUID”,如下图
使用命令”vgscan”或”vgrename + VG UUID + new_vgname” 使用这个命令将remote的系统盘的VG卷名重新命名
使用命令 lvdisplay 查看逻辑卷信息,可以看到 remote系统盘的LV Path名称也相应改变了,这样就与local 系统盘的卷名称区分开了。但是LV Status 还是 NOT available状态,所以此时还不能挂载,需要激活。
使用命令”vgscan” 扫描所有卷的活动状态, 可以看到remote 系统盘的三个分区都是 inactive 状态,所以前面不能挂载,使用命令”vgchange -ay /dev/cnetos-160G” 激活remote系统盘, 命令里面用卷名就可以代表整个remote盘,不需要具体到哪个分区。激活后在查看状态,可以看到已经ACTIVE 了。
用fidsk –l 命令也能看到激活后,remote系统盘的三个分区可以识别到了, lvdisplay 看到的逻辑卷LV Status 也是available 状态
这个时候就可以像挂载USB那样挂载这几个分区,读取里面的文件了。