• OZ customize windows iamge


    1、之前通过修改auto文件和windows.py文件可实现自动安装OS,但是disk bus只能以IDE模式启动,进入系统自动下载运行bat文件,安装cloudbase-init和qga,及清理日志等操作

    2、winodws2008.tdl无法定义file注入系统

    3、通过Oz官方社区了解到,之前有人奉献过部分代码但是未合并,按照官方社区修改代码,测试报错

    参考链接:https://github.com/clalancette/oz/pull/54/commits

    4、找到Oz的windows的branch,代码比较老,2011年的。在物理机上搭建virtualenv测试,缺少各种包的依赖。

    按照提示按照各种依赖包,再进行测试报console port和key的问题,修改windows.py和Guest.py部分代码,修改disk bus在hd模式下为virtio启动。

    现在能够跑起来,但是卡在应答文件这块。修改windows2008.atuo也无济于事。

    附上安装输出的日志

    (oz-w2k8)[root@10e131e69e14 oz-win2k8customize]# oz-install -p -u -d3  win2008.tdl
    libvirt bridge name is virbr0, host_bridge_ip is 192.168.122.1
    Name: Windows-gushiren-2, UUID: 717e7faa-5e5a-4ffa-b886-c4bfbf6771fd
    MAC: 52:54:00:98:d0:80, distro: Windows
    update: 2008, arch: x86_64, diskimage: /data/nvme0n1/oz/images/Windows-gushiren-2.dsk
    nicmodel: rtl8139, clockoffset: localtime
    mousetype: usb, disk_bus: virtio, disk_dev: hda
    icicletmp: /var/lib/oz/icicletmp/Windows-gushiren-2, listen_port: 14028
    Original ISO path: /var/lib/oz/isos/Windows2008x86_64-iso.iso
    Modified ISO cache: /var/lib/oz/isos/Windows2008x86_64-iso-oz.iso
    Output ISO path: /data/nvme0n1/oz/images/Windows-gushiren-2-iso-oz.iso
    ISO content path: /var/lib/oz/isocontent/Windows-gushiren-2-iso
    Cleaning up guest named Windows-gushiren-2
    Generating install media
    Fetching the original media
    Original install media available, using cached version
    Copying ISO contents for modification
    Setting up guestfs handle for Windows-gushiren-2
    Adding ISO image /var/lib/oz/isos/Windows2008x86_64-iso.iso
    Launching guestfs
    Mounting ISO
    Checking if there is enough space on the filesystem
    Extracting ISO contents
    Modifying ISO
    /data/nvme0n1/oz-w2k8/lib/python2.7/site-packages/oz/Guest.py:969: RuntimeWarning: overflow encountered in ushort_scalars
      s = numpy.uint16(numpy.uint16(s) + numpy.uint16(w))
    Generating new ISO
    Cleaning up old ISO data
    Generating 10GB diskimage for Windows-gushiren-2
    Running install for Windows-gushiren-2
    Generate XML for guest Windows-gushiren-2 with bootdev cdrom
    Generated XML:
    <?xml version="1.0"?>
    <domain type="kvm">
      <name>Windows-gushiren-2</name>
      <memory>1048576</memory>
      <currentMemory>1048576</currentMemory>
      <uuid>717e7faa-5e5a-4ffa-b886-c4bfbf6771fd</uuid>
      <clock offset="localtime"/>
      <vcpu>1</vcpu>
      <features>
        <acpi/>
        <apic/>
        <pae/>
      </features>
      <os>
        <type>hvm</type>
        <boot dev="cdrom"/>
      </os>
      <on_poweroff>destroy</on_poweroff>
      <on_reboot>destroy</on_reboot>
      <on_crash>destroy</on_crash>
      <devices>
        <graphics port="-1" type="vnc" listen="0.0.0.0"/>
        <interface type="bridge">
          <source bridge="virbr0"/>
          <mac address="52:54:00:98:d0:80"/>
          <model type="virtio"/>
        </interface>
        <input type="tablet" bus="usb"/>
        <console type="pty">
          <target port="0"/>
        </console>
        <disk device="disk" type="file">
          <target dev="hda" bus="virtio"/>
          <source file="/data/nvme0n1/oz/images/Windows-gushiren-2.dsk"/>
        </disk>
        <disk type="file" device="cdrom">
          <source file="/data/nvme0n1/oz/images/Windows-gushiren-2-iso-oz.iso"/>
          <target dev="hdc"/>
        </disk>
      </devices>
    </domain>
     
    Waiting for Windows-gushiren-2 to finish installing, 6000/6000
    Waiting for Windows-gushiren-2 to finish installing, 5990/6000
    Waiting for Windows-gushiren-2 to finish installing, 5980/6000
    Waiting for Windows-gushiren-2 to finish installing, 5970/6000
    Waiting for Windows-gushiren-2 to finish installing, 5960/6000
    Waiting for Windows-gushiren-2 to finish installing, 5950/6000
    Waiting for Windows-gushiren-2 to finish installing, 5940/6000
    ^CCleaning up guest named Windows-gushiren-2
    Cleaning up after install
    Removing modified ISO
    ^CTraceback (most recent call last):
      File "/data/nvme0n1/oz-w2k8/bin/oz-install", line 140, in <module>
        guest.cleanup_install();
      File "/data/nvme0n1/oz-w2k8/lib/python2.7/site-packages/oz/Guest.py", line 1084, in cleanup_install
        os.unlink(self.output_iso)
    KeyboardInterrupt

    https://github.com/clalancette/oz/tree/win2k8customize

  • 相关阅读:
    PAT1066(AVL树)
    判断是对象,还是数组对象
    electron打包成.exe后限制只启动一个应用
    electron启动出现短暂的白屏
    js sort方法根据数组中对象的某一个属性值进行排序
    VUE DIV模拟input框的基本处理
    vue 设置 input 为不可以编辑
    VUE实现限制输入框最多输入15个中文,或者30个英文
    electron 点击事件无效
    electron监听系统托盘,electron是否最小化到系统托盘
  • 原文地址:https://www.cnblogs.com/gushiren/p/9512104.html
Copyright © 2020-2023  润新知