V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
nutting
V2EX  ›  Linux

有没有办法把一个正在跑的 Linux 直接迁移到 pve 的一个 vm

  •  
  •   nutting · 4 天前 · 2228 次点击

    如题,就是普通 pc 上跑的 centos7 server ,大概 200G ,有几个分区,home var 啥的。新装复制是不太方便,很多细节都要保证迁移过来。

    第 1 条附言  ·  2 天前
    各位,成功了,我是先顺带用 clonezilla 备份镜像到移动硬盘。后来 pve 创建了虚拟机,用命令直通挂载了移动硬盘,live 启动 clonezilla ,恢复到虚拟磁盘。
    遇到几个坑,我的物理机磁盘已经有坏道了,备份时候 clonezilla 需要选 expert 模式选上 rescue 选项,否则备份不出来镜像。
    然后 pve 的虚拟机我按网上的调整了一点设置,主要是硬盘选 stata ,网卡选 e1000 ,模式 kvm64 。另外,虚拟磁盘要弄成和被迁移的物理一样的大小,别怕 pve 宿主机的磁盘不够,这个镜像是虚的
    24 条回复    2025-04-04 15:00:21 +08:00
    2Nfree
        1
    2Nfree  
       4 天前   ❤️ 1
    云服务器还是本地服务器,云服务器可以打包 AMI 导出本地运行,本地服务器可以看看 Clonezilla ,但我没用过
    2Nfree
        2
    2Nfree  
       4 天前
    @2Nfree #1 一开始没仔细看,pc 的话感觉只能 Clonezilla 或者 rsync 了
    ihainan
        3
    ihainan  
       4 天前   ❤️ 1
    最简单的办法估计是把硬盘接到 PVE Host 上然后直通。
    HFX3389
        4
    HFX3389  
       4 天前
    能关机的话办法很多,不能关机的话我就不知道了...
    defunct9
        5
    defunct9  
       4 天前
    dd
    moefishtang
        6
    moefishtang  
       4 天前
    @2Nfree #2 Clonezilla 要关机才能吧?能在系统运行时操作?
    2Nfree
        7
    2Nfree  
       4 天前
    @moefishtang #6 是要关机
    nutting
        8
    nutting  
    OP
       4 天前
    感谢各位,可以关机。这个 Clonezilla 就是跑 live 版本,得到镜像,然后 pve 机器也跑 live ,再恢复? pve 上 live 到时候怎么选备份镜像呀?
    Ipsum
        9
    Ipsum  
       4 天前
    v2v 有软件可以直接生成虚拟机镜像,前提是生成镜像的硬盘得是原来的 2 倍以上,并且硬盘可以拆下来连接生成镜像的机器。
    bjzhou1990
        10
    bjzhou1990  
       4 天前
    rsync 或者 Clonezilla ,前者可以不停机后者需要停机,具体操作找 AI 问下就行
    chuyin01
        11
    chuyin01  
       4 天前 via Android   ❤️ 1
    找个移动硬盘,创建一个 qcow2 格式,大于 200G 的虚拟硬盘。用 qemu-ndb 挂载 qcow2 镜像,然后再用 dd 命令直接把物理设备拷贝到虚拟硬盘
    k9982874
        12
    k9982874  
       4 天前 via Android
    5 楼已经给方案了,dd 老机器,dd 到新 vm ,改 bootloader
    Xenos
        13
    Xenos  
       4 天前
    蹲一手方案,最近也有这个需求。
    daimaosix
        14
    daimaosix  
       4 天前 via Android
    @defunct9 还得是老运维,ssh 哥
    fuzzsh
        15
    fuzzsh  
       4 天前 via Android
    进 live ,挂个 NFS samba
    dd if=/dev/nvme0 of=/path/of/nfs
    ...
    去新的 live 用 dd 恢复到磁盘上,注意下 fstab 挂载用 uuid 还是/dev/***,bios 还是 uefi 改下虚拟机设置
    dd if=/path/of/nfs of=/dev/sda
    ...
    nicefrp
        16
    nicefrp  
       4 天前
    能关机那办法就多了,dd
    longsays
        17
    longsays  
       4 天前 via Android
    dd 或者 rsync 吧
    2022study
        18
    2022study  
       3 天前   ❤️ 1
    需要看下现在的系统内核里面有没有 virto 的驱动不,主要是 block 和 net 只要有就 ok ,不然无论是 dd 还是 p2v 大概率启动不了。
    nutting
        19
    nutting  
    OP
       3 天前
    @2022study 你说对了,我现在正在实验,似乎启动不了。那提前给物理机的装一下?
    2022study
        20
    2022study  
       3 天前
    @nutting #19 源物理盘先做个备份,然后重新编译下内核驱动,然后再迁移到 pve 下
    shangyu7
        21
    shangyu7  
       3 天前
    能关机直接 dd 到虚拟磁盘就行了啊
    jamos
        22
    jamos  
       3 天前
    群晖的 abb 可以实现
    qqjt
        23
    qqjt  
       3 天前
    这是物理机转虚拟机吗?可以试试 vmware 的 vconverter 。
    或者就是单独把硬盘拆下来,在挂到其他机器上,用工具转为虚拟硬盘,再用虚拟硬盘建个虚拟机。可以试试 StarWind V2V Converter / P2V Converter 。也可以用 vmware workstation 里带的 vmware-vdiskmanager ,我之前试过把笔记本硬盘转为虚拟硬盘,再用它建虚拟机。
    nutting
        24
    nutting  
    OP
       2 天前
    @defunct9 请教一下,磁盘分区是用了 lvm ,1T 的硬盘用了 200G ,dd 恢复时候目标虚拟机是不是必须是 1T 的虚拟磁盘?如果必须是的话,那个 home 分区比较大,实际没用满,是不是给他调整缩一下后再 dd ?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1586 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 58ms · UTC 00:00 · PVG 08:00 · LAX 17:00 · JFK 20:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.