如何修复VirtualBox redhat-7 eth0 ONBOOT = vboxmange工具没有连接问题?

时间:2019-01-25 08:11:13

标签: networking virtualbox redhat pack

我正在使用带有以下模板的包装器来创建virtualbox redhat框。一切都很好,除了在创建并重新引导主机时,eth0网络适配器不会启动,因为它是在/ etc / sysconfig / network-scripts中使用ONBOOT = no创建的。但是,如果我打开框的UI并手动触发ifup eth0,它将正常启动,ssh可用,并且过程按预期完成。但是,我需要在jenkins管道中使用它,所以没有人可以手动启动网络接口。问题是,是否有任何方法可以使用virtualbox manage命令将网络适配器的ONBOOT选项更改为yes,或以某种方式触发ifup eth0命令。两种选择都可以解决问题。

  {
  "variables": {
    "build_base": ".",
    "isref_machine":"create-ova-caf",
    "build_name":"virtual-box-jenkins",
    "output_name":"packer-virtual-box",
    "disk_size":"40000",
    "ram":"1024",
    "disk_adapter":"ide"
  },  
  "builders":[
        {   
          "name": "{{user `build_name`}}",
          "type": "virtualbox-iso",
          "guest_os_type": "Other_64",
          "iso_url": "rhelis74_1710051533.iso",
          "iso_checksum": "",
          "iso_checksum_type": "none",
          "hard_drive_interface":"{{user `disk_adapter`}}",
          "ssh_username": "root",
          "ssh_password": "Secret1.0",
          "shutdown_command": "shutdown -P now",
          "guest_additions_mode":"disable",
          "boot_wait": "3s",
          "boot_command": [ "auto<enter>"],
          "ssh_timeout": "40m",
          "headless":
          "true",
          "vm_name": "{{user `output_name`}}",
                    "disk_size": "{{user `disk_size`}}",
          "output_directory":"{{user `build_base`}}/output-{{build_name}}",
          "format": "ovf",
          "vrdp_bind_address": "0.0.0.0",
          "vboxmanage": [
            ["modifyvm", "{{.Name}}","--nictype1","virtio"],
            ["modifyvm", "{{.Name}}","--memory","{{ user `ram`}}"]
          ],
          "skip_export":true,
          "keep_registered": true
        }   
  ],  
  "provisioners": [
    {
      "type":"shell",
      "inline": ["ls"]

    }
  ]

}

1 个答案:

答案 0 :(得分:0)

要将网络接口启动设置更改为onboot = yes,我们需要创建anaconda kickstart脚本或从现有计算机复制一个脚本并更改其中的配置并将其作为

传递
 "boot_command": [ "<esc><wait>",
        "vmlinuz initrd=initrd.img net.ifnames=0 biosdevname=0 ",
        "ks=hd:fd0:/anaconda-ks.cfg",
        "<enter>"
  ],

和anaconda文件中

network  --bootproto=dhcp --device=eth0 --onboot=on --ipv6=auto --activate