UNRAID下安装Virtual DSM

news/2024/10/10 0:42:56/文章来源:https://www.cnblogs.com/drcode/p/18455468

本文基于【完结】Virtual DSM 逆向笔记 (基于libvirt的安装及升级) (jxcn.org)

感谢chk-jxcn的分享!

一、安装镜像的准备

链接:https://pan.baidu.com/s/16I89NHPTW6TDx7ACh67yiA

提取码:7hkq

下载下来的镜像是原作者chk-jxcn(jxcn.org)从 DSM 中提取出的 VDSM 7.0 的安装镜像,未做任何修改。感谢chk-jxcn的无私分享!

该镜像比较大,两个都是20g,不太方便复制,所以自己提取安装镜像

在实体机或者虚拟机安装的DSM系统中,安装Virtual Machine Manager套件
image

在下载中心 - VirtualDSM | Synology 群晖科技 中,下载7.1.1-42962-up1映像到本地
image

打开VMM套件,点映像-DSM映像-新增-从计算机-选择下载好的VDSM映像,之后一直点下一步,最后显示状态良好就说明映像安装成功了
image

点虚拟机-新增-Synology Virtual DSM-下一步
image
image

名称、CPU、内存自定义
image

新建一个虚拟盘,容量填10GB,后面点下一步,等待虚拟机创建好

点击操作-导出-选择一个文件夹,导出模式默认是常规OVA,导出成功后,可以得到一个ova文件:
image

将该文件下载到本地计算机,使用解压软件解压,可得到vdsm-disk1.vmdk、vdsm-disk2.vmdk、vdsm-disk3.vmdk、vdsm-disk4.vmdk 4个Virtual Disk文件,将vdsm-disk1.vmdk、vdsm-disk2.vmdk 这2个文件上传到UNRAID目录中(自定义)

image

打开UNRAID终端,cd到存放vmdk的目录下,执行

qemu-img info vdsm-disk1.vmdk

得到如下输出,所以需将该文件转换为qcow2文件

image: vdsm-disk1.vmdk
file format: vmdk
virtual size: 10 GiB (10737418240 bytes)
disk size: 18.5 MiB
cluster_size: 65536
Format specific information:cid: 3271625478parent cid: 4294967295create type: streamOptimizedextents:[0]:compressed: truevirtual size: 10737418240filename: vdsm-disk1.vmdkcluster size: 65536format: 

输入如下命令,将vmdk文件转换成qcow2文件

qemu-img convert -c -O qcow2 vdsm-disk1.vmdk vdsm-disk1.qcow2

qemu-img convert -c -O qcow2 vdsm-disk2.vmdk vdsm-disk2.qcow2

二、创建用户数据盘

truncate -s 100G /opt/vdsm/user_data.img

三、导入xml

将vdsm_template.xml复制到该目录下,执行如下命令:

virsh define vdsm_template.xml

vdsm_template.xml内容如下:值得注意的是,引入vdsm-disk1.qcow2的时候,需要修改format=qcow2

<qemu:arg value='file=/mnt/user/domains/VDSM/vdsm-disk1.qcow2,if=none,id=drive-synoboot,format=qcow2,cache=none,aio=native,detect-zeroes=on'/>
<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' id='28' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'><name>VDSM</name><uuid>45b0c861-2ca3-4717-aee0-0d5255d23eed</uuid><title>DSM instance: test</title><memory unit='KiB'>1048576</memory><currentMemory unit='KiB'>1048576</currentMemory><vcpu placement='static'>1</vcpu><resource><partition>/machine</partition></resource><os><type arch='x86_64' machine='pc-i440fx-2.2'>hvm</type><boot dev='hd'/></os><features><acpi/><apic/><pae/><hap state='on'/></features><cpu mode='host-passthrough' check='none' migratable='on'><topology sockets='1' dies='1' cores='1' threads='1'/></cpu><clock offset='variable' adjustment='-13' basis='utc'><timer name='rtc' tickpolicy='catchup' track='guest'/><timer name='pit' tickpolicy='delay'/><timer name='hpet' present='no'/></clock><on_poweroff>destroy</on_poweroff><on_reboot>restart</on_reboot><on_crash>destroy</on_crash><devices><emulator>/usr/bin/qemu-system-x86_64</emulator><controller type='usb' index='0' model='piix3-uhci'><alias name='usb'/><address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/></controller><controller type='pci' index='0' model='pci-root'><alias name='pci.0'/></controller><controller type='virtio-serial' index='0'><alias name='virtio-serial0'/><address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/></controller><interface type='bridge'><mac address='52:54:00:18:1c:84'/><source bridge='br0'/><target dev='vnet27'/><model type='virtio'/><alias name='net0'/><address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/></interface><serial type='pty'><source path='/dev/pts/23'/><target type='isa-serial' port='0'><model name='isa-serial'/></target><alias name='serial0'/></serial><console type='pty' tty='/dev/pts/23'><source path='/dev/pts/23'/><target type='serial' port='0'/><alias name='serial0'/></console><channel type='tcp'><source mode='connect' host='127.0.0.1' service='12345' tls='no'><reconnect enabled='yes' timeout='10'/></source><protocol type='raw'/><target type='virtio' name='vchannel' state='connected'/><alias name='channel0'/><address type='virtio-serial' controller='0' bus='0' port='1'/></channel><input type='mouse' bus='ps2'><alias name='input0'/></input><input type='keyboard' bus='ps2'><alias name='input1'/></input><audio id='1' type='none'/><memballoon model='virtio'><alias name='balloon0'/><address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/></memballoon><rng model='virtio'><backend model='random'>/dev/random</backend><alias name='rng0'/><address type='pci' domain='0x0000' bus='0x00' slot='0x1c' function='0x0'/></rng></devices><seclabel type='dynamic' model='dac' relabel='yes'><label>+0:+100</label><imagelabel>+0:+100</imagelabel></seclabel><qemu:commandline><qemu:arg value='-device'/><qemu:arg value='virtio-scsi-pci,id=hw-synoboot,bus=pci.0,addr=0xa'/><qemu:arg value='-drive'/><qemu:arg value='file=/mnt/user/domains/VDSM/vdsm-disk1.qcow2,if=none,id=drive-synoboot,format=qcow2,cache=none,aio=native,detect-zeroes=on'/><qemu:arg value='-device'/><qemu:arg value='scsi-hd,bus=hw-synoboot.0,channel=0,scsi-id=0,lun=0,drive=drive-synoboot,id=synoboot0,bootindex=1'/><qemu:arg value='-device'/><qemu:arg value='virtio-scsi-pci,id=hw-synosys,bus=pci.0,addr=0xb'/><qemu:arg value='-drive'/><qemu:arg value='file=/mnt/user/domains/VDSM/vdsm-disk2.qcow2,if=none,id=drive-synosys,format=qcow2,cache=none,aio=native,detect-zeroes=on'/><qemu:arg value='-device'/><qemu:arg value='scsi-hd,bus=hw-synosys.0,channel=0,scsi-id=0,lun=0,drive=drive-synosys,id=synosys0,bootindex=2'/><qemu:arg value='-device'/><qemu:arg value='virtio-scsi-pci,id=hw-userdata,bus=pci.0,addr=0xc'/><qemu:arg value='-drive'/><qemu:arg value='file=/mnt/user/domains/VDSM/user_data.img,if=none,id=drive-userdata,format=raw,cache=none,aio=native,detect-zeroes=on'/><qemu:arg value='-device'/><qemu:arg value='scsi-hd,bus=hw-userdata.0,channel=0,scsi-id=0,lun=0,drive=drive-userdata,id=userdata0,bootindex=3'/></qemu:commandline>
</domain>

四、启动虚拟机

virsh start VDSM

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/810866.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

house_of_muney [2023CISCN]

house_of_muney 首先介绍一下house of muney 这个利用原理: 在了解过_dl_runtime_resolve的前提下,当程序保护开了延迟绑定的时候,程序第一次调用相关函数的时候会执行下面的命令 push n push ModuleID jmp _dl_runtime_resolve 这里的n对应的是这个符号在rel.plt重定位表中…

C#|.net core 基础 - 删除字符串最后一个字符的七大类N种实现方式

分享删除字符串最后一个字符的多种实现方法,包括字符串、StringBuilder、Array、Linq等方式,并进行性能测试。结果显示字符串方式性能最优,但了解多种方法有助于选择最合适的方法。今天想通过和大家分享如何删除字符串最后一个字符的N种实现方法,来回顾一些基础知识点。 01…

NET Core 基础 - 删除字符串最后一个字符的七大类N种实现方式

分享删除字符串最后一个字符的多种实现方法,包括字符串、StringBuilder、Array、Linq等方式,并进行性能测试。结果显示字符串方式性能最优,但了解多种方法有助于选择最合适的方法。今天想通过和大家分享如何删除字符串最后一个字符的N种实现方法,来回顾一些基础知识点。 01…

003、v3admin学习,修改全局配置如去掉水印等

1、v3admin打开之后的界面如下 2、修改一下全局通用设置 3、界面如下 4、把app.vue中的这一段注释掉 5、浏览器也就没有弹窗显示了。

在VMware中安装CentOS7(保姆级教程)

centos7下载地址:https://mirrors.aliyun.com/centos/7/isos/x86_64/1、打开“VMware Workstation“软件,选择”创建新的虚拟机 ![ 2、选择“典型”选项,然后下一步。3、选择“稍后安装操作系统”,点击下一步。4、客户机操作选择“Linux”,版本选择“CentOS 7 64位”,点击…

002、v3admin学习,设置npm的端口和ip

1、使用命令行npm run dev启动v3admin的时候,会有多个ip地址以及端口 2、在vite.config.ts中,修改host为false和port为1314 3、ctrl+c结束端口,并运行npm run dev来启动。可以看到只有一个 http://localhost:1314/ 端口启动了。 4、浏览器打开,可以正常显示。5、效果如下:…

001、v3admin学习,下载并这次启动运行v3admin

1、下载github,并放到自己的项目工程中2、确保直接电脑按照了node.js,输入cmd命令行看node,可以看到node版本是v20 3、在工程目录用命令行输入 npm update 4、在命令行继续输入 npm run dev5、可以正常登录了。 6、界面内容如下:

《花100块做个摸鱼小网站! 》第七篇—谁访问了我们的网站?

⭐️基础链接导航⭐️ 服务器 → ☁️ 阿里云活动地址 看样例 → 🐟 摸鱼小网站地址 学代码 → 💻 源码库地址一、前言 大家好呀,我是summo,最近发生了些事情(被裁员了,在找工作中)导致断更了,非常抱歉。刚被裁的时候还是有些难受,而且我还有房贷要还,有些压力,不过…

001、下载并运行

1、下载github,并放到自己的项目工程中 2、在工程目录用命令行输入 npm update 3、在命令行继续输入 npm run dev 4、可以正常登录了。

Day 3 2024年10月9日

1. 螺纹钢多单波段机会 准备介入5-3。 螺纹看好走出5波牛市黎明的曙光。

cf2009 Codeforces Round 971 (Div. 4)

A. Minimize! 签到题。计算\((c-a)+(b-c)\)的最小值,其实值固定的,等于\(b-a\)。 int a, b;void solve() {cin >> a >> b;cout << b - a << endl; }B. Osu!mania 签到题。给定一个4k下落式的网格,求#下落顺序。直接数组记录就好了。 int n; const i…

KMP循环节

KMP循环节 在icpc 2019 China Collegiate Programming Contest Qinhuangdao Onsite J. MUV LUV EXTRA由题易得,要求这个数的小数部分的\(S=a循环长度−b循环节的长度\),让这个S尽可能的大。 又因为对于循环长度我们可以用kmp算法来求出最小循环节,所以我们可以枚举循环长度去…