一. 前言
一些虚拟机的使用记录.
- exsi
- vm workstation
- hyperV
二. Hyper-V虚拟机
在 Windows 10 上启用 Hyper-V | Microsoft Learn, 这是windows原生的虚拟机支持, 基于该技术的几项主要支持:
- 虚拟机
- 沙盒
- wsl(Windows Subsystem for Linux)
- wsa(Windows Subsystem for Android)
hyper-v
虚拟机和VMware Workstation
有所差异, 一些使用上相对不是那么简单直接.
2.1 创建虚拟机
创建虚拟, 对于windows
没什么问题, 主要是创建linux(Ubuntu)
虚拟机.
hyper-V
配置虚拟机的过程并不是像vm
一条龙配置到底.
很多vm
的关键设置在hv
上都是不存在, 例如上面的选择系统.
假如不使用hv
预置的Ubuntu
的配置方式, 就会碰到以下的安装失败的问题.
这是因为hv
预置的启动引导是默认为windows
的, 当安装其他系统时就会出现问题.
这个关键的设置在配置过程是不会出现的.
2.2 磁盘管理
不知微软出于什么的考虑, 磁盘的管理被单独分离出来, 而不是集成在设置中完成.
需要找到对应的系统磁盘, 然后才能进行操作.
虚拟机还是存在一些问题, 如还原点反复弹窗出现.
进行系统扩容之后, 不要选择continue
, 而是要选择revert
, 否则磁盘操作会自动回滚.
三. Ubuntu磁盘管理
磁盘管理是相对麻烦的, 由于运行多个虚拟机, 磁盘空间有限, 为了方便后面管理磁盘, 预先分配的磁盘空间大小有所保留.
注意安装anaconda占用磁盘空间颇大, 初始设置较大的磁盘好一点.
需要注意重新(扩容)磁盘之前需要删除掉虚拟机创建的还原点, 否则无法进行操作.
windows
虚拟机的扩容磁盘, 由于保留分区将C
盘和新的磁盘空间间隔开, 所以无法直接合并到一个盘符之下.
由于windows
的磁盘扩容相当简单, 在虚拟机管理软件上调整了空间之后, 进入系统后, 打开磁盘管理即可看到新的磁盘空间(处于未分配的状态), 下面主要是Ubuntu
的磁盘扩容.
Linux
的文件系统和磁盘管理相对复杂, 检索相关信息, 可以看到各种五花八门的方式.
这里仅进行的操作是在上述的软件中进行扩容操作之后, 将上述新增的空间合并到现有的分区.
linux - How To Expand Ubuntu 20.04 LTS Filesystem Volume on Hyper-V - Super User
(base) lian@jarvis:~$ sudo fdisk -l
[sudo] password for lian:
Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors
Disk model: Virtual disk
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 1C644FA1-F6E6-4C19-9C59-85BE424A3D2D
Device Start End Sectors Size Type
/dev/sda1 2048 4095 2048 1M BIOS boot
/dev/sda2 4096 3719167 3715072 1.8G Linux filesystem
/dev/sda3 3719168 52428766 48709599 23.2G Linux filesystem
Disk /dev/mapper/ubuntu--vg-ubuntu--lv: 23.22 GiB, 24935137280 bytes, 48701440 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
(base) lian@jarvis:~$ sudo lvdisplay
--- Logical volume ---
LV Path /dev/ubuntu-vg/ubuntu-lv
LV Name ubuntu-lv
VG Name ubuntu-vg
LV UUID Xs4lZs-IJxD-9rxk-shKx-xoas-Uab1-LirDNN
LV Write Access read/write
LV Creation host, time ubuntu-server, 2024-04-06 10:18:54 +0000
LV Status available
# open 1
LV Size 23.22 GiB
Current LE 5945
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
sudo growpart /dev/sda 3
sudo pvresize /dev/sda3
sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv # 关键在于此
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
growpart(1) - Arch manual pages
growpart partition rewrite partition table so that partition takes up all the space it can
pvresize(8) - Arch manual pages
pvresize - Resize physical volume(s)
lvextend(8) - Arch manual pages
lvextend - Add space to a logical volume
resize2fs(8) - Arch manual pages
resize2fs - ext2/ext3/ext4 file system resizer
四. 其他问题
4.1 exsi安装Ubuntu Server失败
由于之前安装的Ubuntu
占用磁盘过于庞大, 删除这个虚拟机之后, 重新安装一直卡在死循环上(反复安装某些组件, 查看日志一段时间之后界面就失去响应, 但是没有崩溃或者报错), web端的管理界面会出现卡死的异常, 切换到其他版本的Ubuntu
也还是如此.
Ubuntu 22.04.4 LTS服务器版本安装选择最小化安装(磁盘占用约为4.4G).
最后使用vm workstation
远程连接, 通过这里的创建新虚拟机才最后安装成功.
不清楚和引导项是否有关, vm
上的安装默认使用的还是bios
.
但vm
上的安装过程提示过一次报错, web
端却没有类似的错误提示, 尽管在web端出现了多次死循环卡死, 但是却没有任何的弹窗提示错误.
4.2 hyper-V虚拟机IP
hv虚拟机和vm的虚拟机默认网络连接的差异, hv的虚拟机的默认模式下, IP并不是常见的192.168...
.
4.3 关于Windows精简版本
由于需要在16G硬盘, 2G内存相对有限的硬件条件下运行windows, 系统的选择上, 可选的已不多, 很多软件已经强制win10及以上系统.
经过多个测试, tiny10&tiny11不管是磁盘占用还是运行内存占用, 系统的稳定性等, 均具有较好的表现.
精简系统很容导致各种问题, 多数的所谓的精简系统名曰精简优化, 实则为负优化, 导致系统出现各种问题, 如精简掉webview(edge)导致需要的依赖的软件无法运行.
五. 小结
相对于vm workstation
, 不管是exsi
或者hyperV
使用体验相对一般.
exsi
要预留足够的内存(8G全部系统运行时需要预留大概2G)和磁盘空间作为交换区, 否则容易导致系统崩溃.