之前因为Windows 10的虚拟机的各种bug和限制,包括但不限于IPV6 Bug,docker需要再在windows虚拟机上加一个WSL子系统之类的问题,加上微软对win10的入侵越来越严重,比如很多win11上的开机广告,在最近的更新中都加到win10里去了,系统臃肿不堪,加上win10这几年大限将至,
所以把win10上的影音服务迁移到ubuntu上的行动迫在眉睫。
整体上来说,这个过程比我想象中简单很多,当然也有一些坑,回顾一下,我的机子是铭凡的NAB7,i7-12700h CPU, 64GB 内存。
具体跑的服务如下:
话不多说,开整:
首先PVE怎么配置直通这块,网上太多教程,我就不复述了,正常配置完成之后,建议用TTeck大神的PVE helper script一键升级一下intel CPU的微码(AMD / intel cpu通用)。
https://tteck.github.io/Proxmox/(大神的网址)
bash -c "$(wget -qLO - https://github.com/tteck/Proxmox/raw/main/misc/microcode.sh)"
输入完之后按提示操作就可以了,操作完成重启,微码就更新完了。
升级完之后,我们需要准备一个ubuntu 24.04 LTS的镜像,一个之前从Up主爱折腾的老高群里薅来的intel 通用Vbios(好像linux直通没有这个文件也可以成功,不过我还是加了,没有的话可以加一下老高的群,还是挺不错的)并ssh连接pve主机,上传这个文件到/usr/share/kvm这个目录内,还需要一个HDMI输出的诱骗器,Gnome如果没有视频输出的话,远程桌面是连接不上去的。
我们先创建虚拟机,配置如下:
机型选择i440fx,7.2版本以上,OVMF的bios,以及VirtIO,硬盘按你需要的来给,给小了也没关系,ubuntu后续扩容也挺方便的。PCI设备这两条我们后续再加。
这几个地方设置好之后,按照ubuntu的引导安装系统就可以了,唯一需要注意的是,如果是用Gnome的远程桌面,是要登陆进去之后才能连接的。所以在创建用户的时候可以直接勾选启动后自动登录的选项。
安装完成之后在设置界面打开remote control和desktop sharing就可以用各种RDP客户端进行连接了,比如微软的RDP客户端。
这里有个新手会遇到的小坑,如果你用的是ubuntu 22 的话,远程桌面连接的密码是会每次启动之后重置的,需要取消掉Keyring,具体可以参考这个链接:
https://askubuntu.com/questions//22-04-remote-desktop-sharing-authentication-password-changes-every-reboot
安装完,测试到可以用远程连接登录之后,我们先更新一下系统,同时安装和配置一下openssh,然后再配置一下grub
sudo nano /etc/default/grub
然后在这里,我们要在这行加上
GRUB_CMDLINE_LINUX_DEFAULT="quiet i915.enable_hangcheck=N intel_idle.preferred_cstates=2 nosmt mitigations=off transparent_hugepage=always"
i915.alpha_support=1有些intel的核显需要开启这个,才能成功
i915.enable_hangcheck=N (GPU假死的话不挂起)
intel_idle.preferred_cstates=2 (GPU不工作的时候进入C2休眠)
nosmt (禁用SMT)
mitigations=off (解释起来有点长,系统安全相关的,禁用的话理论上可以提高性能,而且本身就是虚拟机,怕啥。)
transparent_hugepage=always(启用透明大页,chat GPT说是增加内存速度的)
这几条都是和功耗和运行速度相关的,可加可不加
完成之后我们按ctrl+x 然后 y保存退出,再输入
sudo update - grub
更新完grub之后我们就可以直接关机了。
下一步,来到PVE的Shell,这里输入
nano /etc/pve/qemu-server/虚拟机编号.conf
给配置文件加入下面的args
args: -set device.hostpci0.addr=02.0 -set device.hostpci0.x-igd-gms=0x4 -set device.hostpci0.x-igd-opregion=on
这里有一个避坑点,就是-set device.hostpci0.x-igd-gms=0x4 这一条记得改成0x4,这里的0x4的意思是显存给到256mb,一般windows的是-set device.hostpci0.x-igd-gms=0x2就可以了,显存给到64mb也不会出错,但是linux系统好像给64mb的话会出DAMR报错,虚拟机在高显卡负载的时候会随机性死机。
一般报错会是这个样子:
这里设置完之后,下面再加上这两条,按实际情况填写,配置文件里写和手动在webUI上加的效果是一样的:
hostpci0: 0000:00:02,romfile=vbios.rom,legacy-igd=1(显卡)
hostpci1: 0000:00:1f.3(声卡)
romfile这条名字输入你命名的vbios的名字,我就简单命名成vbios了
legacy-igd=1这条和x-vga=1意思是一样的,就是把这个设备作为主显示器的意思,但是intel核显好像用legacy-igd=1会稳定一些。
接下来,把虚拟显卡设置为none,就可以开机了。
一般这个时候,如果开机之后能远程桌面连接上去,就是直通成功了,24.04 LTS自带intel的显卡驱动,所以也不用另外安装,当然如果你是Ubuntu 22的话就需要再安装个显卡驱动。
这个时候基本就大功告成了。
后话:
ubuntu现在感觉除了打游戏不太好用之外(虽然也可以用lutris,但是操作起来还是不太方便的)其他服务器类型的工作还是很好用的。如果需要安装比如像tmm之类的服务的话,也可以直接用wine安装。
而且docker之类的应用是真的好用,如果不想买裙灰的话,推荐一下这几个应用:相册用immich,影音用jellyfin,笔记本用joplin都挺好用的。
docker管理的话用dockge,直接用docker-compose来管理,非常舒服,感觉和unraid不相上下了。
到此这篇ubuntu镜像站(ubuntu ports 镜像)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/rfx/50213.html