记录在ubuntu 18.04系统上安装虚拟机的过程

- 下载ubuntu镜像

ubuntu镜像下载地址

我下载的是desktop桌面版,比较好操作。

- 烧录

我用的Mac,使用的是balenaEtcher软件进行磁盘烧录。

balenaEtcher下载地址

如果出现磁盘损坏或者无法再次使用,参考这里解决:进入

- 安装ubuntu操作系统

ubuntu系统安装过程还是比较顺利的~

- 安装QEMU/KVM

  • 查看是否有硬件虚拟化处理器,大于0则表示有,如果为0得百度下是不是没有开设置或者硬件本身不支持
bash 复制代码
grep -Eoc '(vmx|svm)' /proc/cpuinfo

或者
egrep -c '(svm|vmx)' /proc/cpuinfo

或者
lsmod | grep 'kvm'

或者
lsmod | grep -c 'kvm'
  • 开始安装
bash 复制代码
sudo apt-get update
sudo apt-get install qemu-kvm libvirt-bin bridge-utils virt-manager

不出意外的话就会出现意外,如果发现安装失败,检查下ubuntu系统的系统更新设置,将需要更新的东西都更新一番,系统就不要更新了.... 然后回过头重新执行一遍。

  • 开始使用
bash 复制代码
virt-manager

正常情况下使用virt-manager命令可以打开虚拟化管理工具的。可以使用 qemu-image 和 virsh 等命令。

  • 问题一:有关权限设置。只有 root 和 libvirtd 组里面的用户才有权限创建 KVM 虚拟机。所以要把自己的用户名加入到 libvirtd 组。具体的命令是:
bash 复制代码
sudo adduser <username> libvirtd

问题二:虚拟机网络配置。

  • 在终端中运行以下命令创建一个名为 br0 的桥接网络:

  sudo nano /etc/network/interfaces

  auto lo br0
  iface lo inet loopback
  iface enp0s3 inet manual
  iface br0 inet dhcp
      bridge_ports enp0s3

  sudo systemctl restart networking.service

修改配置文件,添加配置后重启使配置生效。enp0s3 是网卡名称,使用 ifconfig 查看。

- 安装OpenSSH

  • win10系统:

  • win10自动OpenSSH安装服务,进入"设置"搜索"可选功能",安装OpenSSH客户端和服务端。

  • win+R打开cmd命令行工具,以管理员身份运行net start sshd启动服务。

  • 或者搜索"service.msc"/系统服务,找到OpenSSH SSH Server右键属性,更改状态为启动。

  • 输入sc config sshd start= auto 设置为自启动,或者在服务列表里改为自动启动

  • 检查防火墙设置,确保可以使用ping 192.168.xx.xx -p 22 进行访问

  • win7系统:

  • OpenSSH下载地址

bash 复制代码
#解压至 C:\Program Files\OpenSSH(指定位置)
#打开 cmd,cd进入 C:\Program Files\OpenSSH(安装目录),执行安装 sshd 服务命令:
powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1


#开放22号端口(如果你在windows关闭了防火墙,并配置了入站规则可以不执行如下命令,多执行不影响):
netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22


#配置开机自启sshd服务,注意auto 前要空一格:
sc config sshd start= auto

#启动 ssh 服务:
net start sshd



#将 C:\Program Files\OpenSSH 添加到 path 中,以免每次都要切到 C:\Program Files\OpenSSH 才能使用 ssh。
#步骤:右键点击"计算机",选择"高级系统设置",点击"高级",选择"环境变量",在"系统变量"的 Path 里编辑增加 ";C:\Program Files\OpenSSH"。

- 安装过程中问题总结

  • iso镜像文件有问题:启动一直黑屏,提示No bootable device. / Could not boot from cdrom (code 0004)问题。

  • qcow2配置问题:启动后蓝屏或者一直提示更新修复启动程序,检查配置。下面是一个示例

    XML 复制代码
    "<domain type='kvm'>\n" +
    "  <name>"+ machineName +"</name>\n" +
    "  <memory>"+ memory +"</memory>\n" +
    "  <currentMemory unit='KiB'>"+ memory +"</currentMemory>\n" +
    "  <vcpu>"+ vcpu +"</vcpu>\n" +
    "  <os>\n" +
    "    <type arch='x86_64' machine='pc-i440fx-bionic'>hvm</type>\n" +
    "    <boot dev='hd'/>\n" +
    "    <boot dev='network'/>\n" +
    "    <boot dev='cdrom'/>\n" +
    "    <bootmenu enable='yes'/>\n" +
    "  </os>\n" +
    "  <features>\n" +
    "    <acpi/>\n" +
    "    <apic/>\n" +
    "  </features>\n" +
    "  <devices>\n" +
    "    <disk type='file' device='disk'>\n" +
    "      <driver name='qemu' type='qcow2'/>\n" +
    "      <source file='" + Constants.WORK_PATH + diskName + ".qcow2'/>\n" +
    "      <target dev='vda'  bus='ide'/>\n" +
    "    </disk>\n" +
    "    <interface type='network'>\n" +
    "      <source network='default'/>\n" +
    "      <model type='rtl8139'/>\n" +
    "    </interface>\n" +
    "    <graphics type='vnc' listen='0.0.0.0' autoport='yes'/>\n" +
    "  </devices>\n" +
    "</domain>";
  • Java使用ProcessBuilder执行脚本问题:1、检查.sh文件是否有执行权限 2、检查是否已经安装相关的库,比如expect 库。3、有时候sh xxx.sh 无法识别,可使用 ./xx.sh检查脚本执行情况。

    XML 复制代码
    #!/usr/bin/expect
    
    set password [lindex $argv 0]
    set transfer_type [lindex $argv 1]
    set originpath [lindex $argv 2]
    set targetpath [lindex $argv 3]
    
    set timeout 30
    
    if {$transfer_type == "1"} {
        spawn scp $originpath $targetpath
    } elseif {$transfer_type == "2"} {
        spawn scp -r $originpath $targetpath
    } else {
        puts "Invalid transfer type. Please provide 1 for file or 2 for folder."
        exit 1
    }
    
    expect {
        # 处理首次连接时的验证信息
        "Are you sure you want to continue connecting (yes/no)?" {
            send "yes\r"
            exp_continue
        }
        # 处理需要输入密码的情况
        "password:" {
            send "$password\r"
        }
    }
    
    interact
  • 虚拟机与宿主机通信问题:尝试使用ping 192.168.x.x 查看是否可以正常连接,如果无法上网或者无法ping通,检查虚拟网络配置。

  • 关于ssh和scp文件传输问题:

- win7 镜像下载链接

www.winwin7.com

知乎win7下载链接

  • Windows 7 Enterprise with Service Pack 1 (x86) - DVD (Chinese-Simplified) :(Win7 32位企业版)
  • ed2k://|file|cn_windows_7_enterprise_with_sp1_x86_dvd_620153.iso|2501507072|7788AED3A02EB99DE1341771950EB697|h=WBMUACNG33CACDQMCWTGFZFI4NCTN3IV|/
  • Windows 7 Enterprise with Service Pack 1 (x64) - DVD (Chinese-Simplified) :(Win7 64位企业版)
  • ed2k://|file|cn_windows_7_enterprise_with_sp1_x64_dvd_620654.iso|3264206848|FAEF3BD4D9AF6C529533CA6468E1911E|/
  • Windows 7 Professional with Service Pack 1 (x86) - DVD (Chinese-Simplified) :(Win7 32位专业版)
  • ed2k://|file|cn_windows_7_professional_with_sp1_x86_dvd_622569.iso|2651877376|56C4B513A6109715CD2BEBFBA80370A0|/
  • Windows 7 Professional with Service Pack 1 (x64) - DVD (Chinese-Simplified):(Win7 64位专业版)
  • ed2k://|file|cn_windows_7_professional_with_sp1_x64_dvd_621744.iso|3419052032|A14DCBDA295966DC95B74250595961AB|/
  • Windows 7 Home Premium with Service Pack 1简体中文家庭高级版:
  • ed2k://|file|cn_windows_7_home_premium_with_sp1_x86_dvd_620856.iso|2651877376|F0DCDB42A6A3F16C68898A6834521E47|/
  • Windows 7 Home Premium with Service Pack 1 (x64) - DVD (Chinese-Simplified)
  • ed2k://|file|cn_windows_7_home_premium_with_sp1_x64_dvd_620792.iso|3419052032|5696C317BE29542579A0E1DFC9FDCB7F|/
  • Win7 旗舰版 ISO 镜像英文版
  • ed2k://|file|en_windows_7_enterprise_with_sp1_x64_dvd_u_677651.iso|3182604288|E4D1A2A7BB46706F6545E713EA32A5F3|/
  • ed2k://|file|en_windows_7_enterprise_with_sp1_x86_dvd_u_677710.iso|2434502656|9B710D7876B754D5F96F72B4A7C9B9A8|/
相关推荐
炽天使2 分钟前
aws rds-mysql不支持性能详情监控
linux·数据库·mysql·云计算·aws·rds
追风赶月、21 分钟前
【Linux】线程同步与互斥
linux
Karoku0661 小时前
【docker集群应用】Docker网络与资源控制
运维·数据库·docker·容器
梦游钓鱼1 小时前
pyshark安装使用,ubuntu:20.04
linux·运维·ubuntu
火龙谷1 小时前
CentOS7将yum源更换为国内源教程
linux·centos
战族狼魂2 小时前
CentOS 上安装各种应用的命令行总结
linux·运维·centos
学Linux的语莫2 小时前
ansible变量
linux·运维·服务器·ansible
北京迅为2 小时前
【北京迅为】iTOP-4412全能版使用手册-第十二章 Linux系统编程简介
linux·嵌入式硬件·4412开发板
清源妙木真菌2 小时前
Linux:进程控制
linux
爱吃喵的鲤鱼2 小时前
Linux——文件系统清尾、动静态库
linux·运维·服务器