V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
jecvay
V2EX  ›  问与答

如何创建一个 kvm ,用来跑外接硬盘上的 Linux 系统,却不修改硬盘上的任何文件?

  •  
  •   jecvay · 2022-08-06 01:06:57 +08:00 · 1284 次点击
    这是一个创建于 841 天前的主题,其中的信息可能已经有所发展或是发生改变。

    [由于不熟悉 kvm ,下面可能有各种术语用错]

    现有一台 debian 系统,以及一个装了 centos 的移动硬盘, 这个移动硬盘插在 debian 系统上,

    是否存在这样一种方法:

    • 在 debian 上安装一套 kvm 环境
    • 使用 OverlayFS 的方式吧 centos 硬盘作为 lower 层,debian 系统下找个地方做 upper 层,给 qemu 虚拟机使用
    • 启动这台虚拟机,则跑起来了这个 centos
    • 而在虚拟机里,做的任何修改,都因为 overlayfs 的特性,不会写入到移动硬盘,而是写入到 debian 机器内置硬盘

    如果存在这样的方法,应该如何创建这个虚拟硬盘?

    6 条回复    2022-08-06 17:37:42 +08:00
    ltkun
        1
    ltkun  
       2022-08-06 01:17:29 +08:00 via Android
    不需要啊 直接移动硬盘就能启动了 或者 chroot 也可以 但是功能应该不全
    ltkun
        2
    ltkun  
       2022-08-06 01:18:35 +08:00 via Android
    哦 还不能修改文件 那做成 livecd 模式
    jecvay
        3
    jecvay  
    OP
       2022-08-06 01:22:20 +08:00 via iPhone
    @ltkun 不行哦 不能修改这个 debian 启动器 去直接启动移动硬盘,debian 他有服务在跑
    msg7086
        4
    msg7086  
       2022-08-06 05:37:59 +08:00
    正常创建这个分层块设备,然后用命令行 qm set 把块设备写到 kvm 小鸡的硬件配置上。
    msg7086
        5
    msg7086  
       2022-08-06 05:46:15 +08:00   ❤️ 1
    https://gist.github.com/coderjo/c8de3ecc31f1d6450254b5e97ea2c595

    这是我搜到的创建分层块设备的脚本,你可以参考。

    创建出 /dev/mapper/$dmname 以后,用比如说 qm set 102 -scsi0 /dev/mapper/$dmname 应该就可以挂上了。
    jecvay
        6
    jecvay  
    OP
       2022-08-06 17:37:42 +08:00
    @msg7086 非常感谢,方法可行好用
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2701 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 10:33 · PVG 18:33 · LAX 02:33 · JFK 05:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.