- 下载ubuntu镜像
我下载的是desktop桌面版,比较好操作。
- 烧录
我用的Mac,使用的是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系统:
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 镜像下载链接
- 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|/