kir*_*ran 7 kvm-virtualization
我有一台 KVM 服务器,我的一台客户机崩溃并提示表单 fsck 检查。现在我没有控制台访问权限或没有来宾 VM 的根访问权限。
有什么办法可以从管理程序运行 fsck 吗?
我使用 centos 6.1 作为我的管理程序
小智 13
安装 libguestfs:
# yum install libguestfs-tools
Run Code Online (Sandbox Code Playgroud)
使用 guestfish 打开磁盘镜像:
# guestfish -a /path/to/diskimage.img
Welcome to guestfish, the libguestfs filesystem interactive shell for
editing virtual machine filesystems.
Type: 'help' for help on commands
'man' to read the manual
'quit' to quit the shell
<fs> run
<fs> list-filesystems
/dev/vda1: ext4
/dev/system/lv_root: ext4
/dev/system/lv_swap: swap
Run Code Online (Sandbox Code Playgroud)
并 fsck 有问题的文件系统:
<fs> fsck /dev/system/lv_root
fsck should have 2 parameter(s)
type 'help fsck' for help on fsck
<fs> fsck ext4 /dev/system/lv_root
...
Run Code Online (Sandbox Code Playgroud)
祝你好运!
您也许可以将文件挂载到环回接口上并对其进行 fsck。从网站www.ingent.net/en/tag/kvm/中,使用:
losetup -f
/dev/loop0
Run Code Online (Sandbox Code Playgroud)
...看到这里的loop0是下一个空闲设备,然后将磁盘映像分配给该点。
losetup /dev/loop0 disk.raw
Run Code Online (Sandbox Code Playgroud)
kpartx 用于创建访问它的设备。
kpartx -av /dev/loop0
Run Code Online (Sandbox Code Playgroud)
然后你应该能够使用 fsck。
fsck.ext3 -f /dev/mapper/loop0p1
fsck.ext3 -f /dev/mapper/loop0p2
Run Code Online (Sandbox Code Playgroud)
...等等。该页面是关于将系统转换为在 KVM 上运行的,但是上面引用的这部分可能会让您走上进行 fsck 修复的轨道;我要注意的是,您应该使用图像文件的副本而不是基本图像文件来执行此操作,以防万一出现问题。
归档时间: |
|
查看次数: |
16788 次 |
最近记录: |