折腾m910x - All In One(PVE + OpenWRT + DSM7.01)

目录:

一. 硬件软件

 

二. 资源及链接

  1. 软件资源

  2. 一些步骤

    2.1 群晖同步阿里云盘

    2.2 ESXI 识别USB硬盘并直通群晖

    2.3 群晖配置SSL证书

    2.4 群晖FRP穿透

    2.5 PVE下USB硬盘直通群晖

    2.6 使用PVE直通需要了解的几件事(无关技术)

    2.7 PVE开启显卡虚拟化 Intel GVT-G

    2.8 PVE下解决DSM7人脸识别问题(需先开启显卡虚拟化)

    2.9 PVE修改为国内源

    3.0 PVE显示硬件温度

    3.1 解决群晖Video Station “该视频不支持该格式” 的问题

 

 

 

一. 硬件软件

 

  准系统:联想m910x(魔改BIOS,开始打算上魔改U),

  CPU:i5 7500    魔改U QNCT(懒得折腾是BIOS还是U的原因,不识别PCI,一个DP口无输出)

  显卡:核显

  内存:16G(暗影精灵4换下来的三星2666 8G + 光威3200 8g)

  硬盘:128g SSD系统盘(暗影精灵2遗留)

     6T HDD 希捷银河 + 绿联USB硬盘底座(挖Chia无果后的产物)

  显示器:无显示器,PD转HDMI线(新购)+ HDMI转Type-C视频采集卡(树莓派遗留)+ Type-C转USB(新购) + OBS软件 在笔记本输出

  网卡:i350-t4 v2(需配转接版,装上去盖后盖的话会高1毫米多导致后盖盖不上,要用工具把网卡接口上的凸起压平才勉强可以盖上,盖上又会导致网卡移位,还需要先用704胶固定一下网卡)

  其他:35W铝单铜管散热(→_→),90W电源

  虚拟机:PVE,满速下载(百兆网速跑满)时cpu31%,内存39%(只装OpenWrt和群晖),DSM7.0人脸识别完美

      ESXI,满速下载(百兆网速跑满)时cpu20%,内存40%(硬件直通有锁定内存),因为核显直通也无法使用DSM7.0的人脸识别,随弃用

  阿里云:一台2U 2G 峰值80M按量付费带宽的抢占式实例(当然最高出价要设定最大避免被释放)用作FRP穿透,稳定用了1个月,每小时3分钱

  

二. 资源及链接(下载链接及其他博客中的下载链接均为直接下载,不需要关注微信,不需要付费)

 

  1. 软件资源

  PVE:V7.0-2 PVE官网

  ESXI:6.7各版本  吴昊博客 ,下载链接在该博客中,百度网盘直接下

  OpenWRT:eSir编译版本 高大全V9.1

  群晖:DSM7.01  DS918+  骑猪看月亮的博客,下载链接在该博客中,百度网盘直接下

 

  2. 一些步骤

    2.1 群晖同步阿里云盘链接

      2.1.1 套件中心下载cloud sync 和 docker

      2.1.2 获取阿里云盘refresh-token

        

      2.1.3 设置docker

        2.1.3.1 打开群晖file station ,找到docker文件夹(文件夹随意,放docker里面好管理),创建一个文件夹,名称随意

          

        2.1.3.2 打开docker,选择注册表,搜索webdav-aliyundriver

          

        2.1.3.3 双击运行镜像,容器名称随意,选择高级设置

        2.1.3.4 高级设置内,勾选启动自动重新启动

        2.1.3.5 存储空间,添加文件夹,左边为宿主机路径,点击刚刚创建的文件夹即可;右边是容器内路径,填入/etc/aliyun-driver/

           

        2.1.3.6 端口设置,本地端口随意输入,默认为8080,容器端口不要修改,使用默认值8080

          

        2.1.3.7 环境设置,添加如下内容

                  

          # 修改时区为上海 

          可变:TZ 值:Asia/Shanghai

          # 添加token 

          可变:ALIYUNDRIVE_REFRESH_TOKEN 值:refresh_token 填入第1步查询到的refresh_token的值

          # 设置webdav密码 

          可变:ALIYUNDRIVE_AUTH_PASSWORD 值:输入你要设置的密码(默认为admin)

          # 设置webdav用户名 

          可变:ALIYUNDRIVE_AUTH_USER-NAME 值:输入你要设置的用户名(默认为admin)

      2.1.4 设置cloud sync

        2.1.4.1 打开cloud sync,选择webdav

        2.1.4.2 填入webdav地址、端口号、用户名、密码

        2.1.4.3 设置任务,完成

 

    2.2 ESXI 识别USB硬盘并直通群晖链接1(识别)   链接2(直通)

      2.2.1 拔U盘(?)并输入如下命令

            1.  /etc/init.d/usbarbitrator stop
            2.  chkconfig usbarbitrator off

        

       2.2.2 插U盘(?)并输入如下命令,当看到(Is USB:true)说明的usb硬盘已经被识别出来,可以在ESXI中 存储 - 设备 里看到USB硬盘

            1. esxcli storage core device list |grep -i usb

        

         

       2.2.3 直通

        2.2.3.1 查找硬盘标识符

          存储 -> 设备 -> 找到自己磁盘的id(在括号中的)

          

        2.2.3.2 找到系统盘路径

          存储 -> 数据存储 -> 复制 位置 后面地址

          

           

        2.2.3.3 直通命令 

                    vmkfstools -z /vmfs/devices/disks/未格式化硬盘标识符 /vmfs/volumes/ESXI系统盘路径/自定义名称.vmdk

                    例如:
                    vmkfstools -z /vmfs/devices/disks/naa.5xxxxxxxxxx9 /vmfs/volumes/5xxxxxxxx2-4xxxxa-0xx6-4xxxxxxxxxxc/nas.vmdk

         2.2.3.4 群晖虚拟机 添加硬盘 - 现有硬盘

          

 

    2.3 群晖配置SSL证书链接

      2.3.1 阿里云证书申请

        

 

       2.3.2 证书下载,选择其他

        

 

       2.3.3 群晖内配置,控制面板 - 安全性 - 证书 - 新增 - 添加新证书 - 导入证书(勾选:设为默认证书)

        私钥:.key文件

        证书:.pem文件

       2.3.4 控制面板 - 安全性 - 证书 - 设置,将配置内的所有证书选择为刚才导入的证书

        

 

 

    2.4 群晖FRP穿透链接

      2.4.1 根据需要下载一个版本,官方github地址

      2.4.2 服务端配置:解压后将 frps、frps.ini两个文件上传到服务器 /root 目录下(自行根据情况替换)并赋予frps执行权限,frps.ini内容如下,token自行定义

[common]
bind_port = 7000
token =
3xxxxxxxxxxxxxxxx8

      

        启动:
        ./frps -c ./frps.ini
        后台启动:
        nohup ./frps -c ./frps.ini &

        配置开机启动:
        sudo vi /lib/systemd/system/frps.service

添加:
[Unit]
Description=frps daemon
After=syslog.target  network.target
Wants=network.target

[Service]
Type=simple
ExecStart=/root/frps -c /root/frps.ini
Restart= always
RestartSec=1min

[Install]
WantedBy=multi-user.target


        #启动  frps systemctl start frps
        #停止  systemctl stop frps
        #将frps设置为开机启动  systemctl enable frps

      2.4.3 服务器安全组按需开启端口

      2.4.4 客户端配置:

        2.4.4.1 在群晖docker文件夹内创建frp文件夹,将frpc.ini放进去,frpc.ini内容如下,token同frps.ini中token

[common]
server_addr = xxx.xxx.xxx.xxx
server_port = 7000
token = 3xxxxxxxxxxxxxxxx8

[http]
type = tcp
local_ip = xxx.xxx.xxx.xxx
local_port = 5000
remote_port = 80

[https]
type = tcp
local_ip = xxx.xxx.xxx.xxx
local_port = 5001
remote_port = 443

[ssh]
type = tcp
local_ip = xxx.xxx.xxx.xxx
local_port = 22
remote_port = 2222

[ds_file_http]
type = tcp
local_ip = xxx.xxx.xxx.xxx
local_port = 5000
remote_port = 5000

[ds_file_https]
type = tcp
local_ip = xxx.xxx.xxx.xxx
local_port = 5001
remote_port = 5001

          xxx.xxx.xxx.xxx:服务器ip

          xxx.xxx.xxx.xxx:群晖内网ip,也可用127.0.0.1

        2.4.4.2 路由器内按需开启端口映射

        2.4.4.3 在docker注册表内搜索 frpc 并下版,且选择与frps对应版本安装

          

        2.4.4.4 双击运行镜像,容器名称随意,选择高级设置

        2.4.4.5 高级设置内,勾选启动自动重新启动

        2.4.4.6 存储空间,添加文件,左边为宿主机路径,点击刚刚创建的frpc.ini文件;右边是容器内路径,填入/etc/frp/frpc.ini

          

         2.4.4.7 运行

 

    2.5 PVE下USB硬盘直通群晖链接

      2.5.1 找到需要直通的硬盘id

                ls /dev/disk/by-id/

      2.5.2 直通命令

                qm set 101 -sata2 /dev/disk/by-id/xxx-XXXX_XXXX_XXXX_XXXX

        101:表示几号虚拟机,根据自己情况替换

        sata2:表示通给该虚拟机的第2块(从0块开始)硬盘,根据自己情况替换

        xxx-XXXX_XXXX_XXXX_XXXX:硬盘id

 

    2.6 使用PVE直通需要了解的几件事(无关技术)链接

 

    2.7 PVE开启显卡虚拟化 Intel GVT-G链接

      2.7.1 开启iommu和GVT-g支持

        #开启iommu和gvt内核 
        #编辑grub
        vi /etc/default/grub
        在里面找到:GRUB_CMDLINE_LINUX_DEFAULT="quiet"
        然后修改为:
        GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on i915.enable_gvt=1"

        #update grub
        update-grub

      2.7.2 加载直通内核模块

        echo vfio >> /etc/modules
        echo vfio_iommu_type1 >> /etc/modules
        echo vfio_pci >> /etc/modules
        echo vfio_virqfd >> /etc/modules
        echo kvmgt >> /etc/modules
        update-initramfs -u 

      2.7.3 重启

      2.7.4 验证是否开启GVT

        ls /sys/bus/pci/devices/0000:00:02.0/mdev_supported_types/  #自觉将00:02换成自己的。
        #出现下面4个选项或者类似的即成功。
        i915-GVTg_V5_1    i915-GVTg_V5_2    i915-GVTg_V5_4    i915-GVTg_V5_8

 

    2.8 PVE下解决DSM7人脸识别问题(需先开启显卡虚拟化)链接

      2.8.1 创建虚拟机

        

 

       2.8.2 手动创建mdev(uuid可自行替换)

        echo 604e42e4-2e90-11ec-8861-037c58d42915 > /sys/bus/pci/devices/0000:00:02.0/mdev_supported_types/i915-GVTg_V5_2/create

      2.8.3 查看是否创建成功

        ls /sys/bus/mdev/devices/

      2.8.4 修改虚拟机配置文件

        vi /etc/pve/qemu-server/104.conf (104自行替换为对应虚拟机编号)

        添加字段(注意修改vbios路径):
        args: -device vfio-pci,sysfsdev=/sys/bus/mdev/devices/604e42e4-2e90-11ec-8861-037c58d42915,romfile=/root/i915ovmf.rom,addr=02.0,x-igd-opregion=on,driver=vfio-pci-nohotplug

        vbios下载地址: 链接: https://pan.baidu.com/s/1d8TD3ENvJcEpLNceoyzdbw 提取码: aszm

        如果使用seabios,可以去掉args中romfile字段(未经严格测试)

      2.8.5 手动创建的mdev重启就没了,需要配置开机自启

        1. vi /etc/systemd/system/rc-local.service

        内容如下:

[Unit]
Description=/etc/rc.local
ConditionPathExists=/etc/rc.local

[Service] Type
=forking ExecStart=/etc/rc.local start TimeoutSec=0 StandardOutput=tty RemainAfterExit=yes SysVStartPriority=99 [Install] WantedBy=multi-user.target
        
        2. vi /etc/rc.local
        加入之前的创建mdev命令
        echo 604e42e4-2e90-11ec-8861-037c58d42915 > /sys/bus/pci/devices/0000:00:02.0/mdev_supported_types/i915-GVTg_V5_2/create
        注意修改uuid和i915-GVTg_V5_2字段为个人所使用的

         3、赋予权限并开启服务

         chmod +x /etc/rc.local
         systemctl enable rc-local
         systemctl start rc-local.service

    

    2.9 PVE修改为国内源链接

 

    3.0 PVE显示硬件温度链接

 

    3.1 解决群晖Video Station “该视频不支持该格式” 的问题,链接

 

posted @ 2021-11-10 22:46  面向bug编程  阅读(4788)  评论(0编辑  收藏  举报