二叉树树

二叉树树

瞎几吧写

N100 - PVE(fnOS+Debian)基建记录

配置 & 需求#

  • N100 CPU 频率:最小 700 Mhz, 最大 3400 Mhz | TDP:6 W

  • 8G RAM

  • 128G M.2 NVme SSD

  • 512G SATA HDD

  • Realtek R8168 有线网卡

  • USB 有线网卡

  • U 盘(作 PVE 引导盘)

目标#

  1. 所有系统通过 PVE 管理

  2. PVE 下安装 fnOS,作 NAS 并配置自动追番(直通:N100核显 512G SATA HDD

  3. PVE 下安装 Debian,搭建 QQBot、博客、AList


1. PVE#

安装#

  • 下载 Ventoy 最新版可执行文件:

    https://www.ventoy.net/cn/download.html

    • 使用 GPT 分区表,NTFS 格式将 Ventoy 写入 U 盘
  • 下载 PVE 最新版 ISO(使用 USTC 镜像源):

    https://mirrors.ustc.edu.cn/help/proxmox.html

    • 将 PVE 的 ISO 文件放入 U 盘根目录
  • 插入 USB 网卡,U 盘连接到到 N100,开机从 U 盘启动,进入 PVE 安装界面,安装 PVE。网络配置选择 USB 网卡

  • 重启,进入 PVE,通过 IP+8006 端口进入 WebUI,登录进去

配置#

安装 PVE 快捷管理脚本#

配置 Realtek R8168 网卡#

由于 Debian 系默认安装 R8169 驱动,我们需要手动安装 R8168 驱动,否则无法使用 N100 小主机自带的有线网口上网

24da6bc57d5578cc0571e94eb86e4fc5

  • 解压,安装:sh autorun.sh

  • 查看是否有新的网络接口:ip a

  • root@n100-pve:~# ip a
    ...
    2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master vmbr1 state UP group default qlen 1000
        link/ether 00:e0:4c:08:91:a6 brd ff:ff:ff:ff:ff:ff
    ...
    
  • 配置网络配置文件:nano /etc/network/interfaces

    # network interface settings; autogenerated
    # Please do NOT modify this file directly, unless you know what
    # you're doing.
    #
    # If you want to manage parts of the network configuration manually,
    # please utilize the 'source' or 'source-directory' directives to do
    # so.
    # PVE will preserve these directives, but will NOT read its network
    # configuration from sourced files, so do not attempt to move any of
    # the PVE managed interfaces into external files!
    
    auto lo
    iface lo inet loopback
    
    iface wlp1s0 inet manual
    
    iface enp3s0 inet manual
    
    auto vmbr1
    iface vmbr1 inet static
            address 192.168.124.25/24
            gateway 192.168.124.1
            bridge-ports enp3s0
            bridge-stp off
            bridge-fd 0
    
    iface vmbr1 inet6 auto
            dhcp 1
            accept_ra 2
            request_prefix 1
    
    source /etc/network/interfaces.d/*
    
  • 重启网络服务:systemctl restart networking

  • 查看 ip:ip a

    root@n100-pve:~# ip a
    ...
    2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master vmbr1 state UP group default qlen 1000
        link/ether 00:e0:4c:08:91:a6 brd ff:ff:ff:ff:ff:ff
    ...
    4: vmbr1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
        link/ether 00:e0:4c:08:91:a6 brd ff:ff:ff:ff:ff:ff
        inet 192.168.124.25/24 scope global vmbr1
           valid_lft forever preferred_lft forever
        inet6 2409:8a30:320:7fc0:2e0:4cff:fe08:91a6/64 scope global dynamic mngtmpaddr
           valid_lft 2763sec preferred_lft 2762sec
        inet6 fe80::2e0:4cff:fe08:91a6/64 scope link
           valid_lft forever preferred_lft forever
    
  • 卸除 USB 网卡

配置 STUN 穿透#

路由器设置 DMZ 主机为 PVEIP#

f4fcc13244db91fb4773e7b91198cef7

安装 Lucky#

  • 执行:curl -o /tmp/install.sh http://6.666666.host:6/files/golucky.sh && sh /tmp/install.sh http://6.666666.host:6/files 2.13.4

  • 通过host:16601 进入 Lucky 后台,设置 STUN 穿透

2a5defd3efb24997c36a051026d000bb

2. fnOS#

安装#

  • 前往官网下载最新版 ISO:

    https://www.fnnas.com/

  • 上传至 PVE:
    3bc8c47a8dca327915eabe6b090d7b76

  • 创建 fnOS 虚拟机,CPU 类型选择 host,步骤略

  • 直通核显和硬盘:
    195f08668628d2316f72d364acbc374f

  • 如果你不知道你的核显和 SATA 控制器的 PCI ID:lspci

    • 可见核显为00:02.0,SATA 控制器为00:17.0

      root@n100-pve:~# lspci
      00:00.0 Host bridge: Intel Corporation Device 461c
      00:02.0 VGA compatible controller: Intel Corporation Alder Lake-N [UHD Graphics]
      00:0a.0 Signal processing controller: Intel Corporation Platform Monitoring Technology (rev 01)
      00:14.0 USB controller: Intel Corporation Alder Lake-N PCH USB 3.2 xHCI Host Controller
      00:14.2 RAM memory: Intel Corporation Alder Lake-N PCH Shared SRAM
      00:16.0 Communication controller: Intel Corporation Alder Lake-N PCH HECI Controller
      00:17.0 SATA controller: Intel Corporation Alder Lake-N SATA AHCI Controller
      00:1a.0 SD Host controller: Intel Corporation Device 54c4
      00:1c.0 PCI bridge: Intel Corporation Device 54be
      00:1d.0 PCI bridge: Intel Corporation Alder Lake-N PCI Express Root Port
      00:1d.1 PCI bridge: Intel Corporation Alder Lake-N PCI Express Root Port
      00:1e.0 Communication controller: Intel Corporation Alder Lake-N Serial IO UART Host Controller
      00:1e.3 Serial bus controller: Intel Corporation Device 54ab
      00:1f.0 ISA bridge: Intel Corporation Alder Lake-N PCH eSPI Controller
      00:1f.3 Audio device: Intel Corporation Alder Lake-N PCH High Definition Audio Controller
      00:1f.4 SMBus: Intel Corporation Alder Lake-N SMBus
      00:1f.5 Serial bus controller: Intel Corporation Alder Lake-N SPI (flash) Controller
      01:00.0 Network controller: Intel Corporation Wireless 3160 (rev 83)
      02:00.0 Non-Volatile memory controller: Realtek Semiconductor Co., Ltd. RTS5765DL NVMe SSD Controller (DRAM-less) (rev 01)
      03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 2b)
      
  • 启动虚拟机,安装 fnOS

配置#

  • 前往飞牛设置,创建储存空间,Linear 模式,选择刚才直通的硬盘
    a616ed93f86e853a5096faa3fe3eef8e

  • 前往飞牛应用中心安装 qBittorrent、影视,并且在设置给予目录读取权限
    6ebae0d77d061aa2923d906de311dc4e

  • 配置 qBittorrent 的用户名和密码

  • 打开飞牛 Docker,初始化

  • 拉取并运行 AutoBangumi Docker 镜像:

    docker run -d \
    --name=AutoBangumi \
    -v /vol1/1000/AutoBangumi/config:/app/config \
    -v /vol1/1000/AutoBangumi/data:/app/data \
    -p 7892:7892 \
    -e TZ=Asia/Shanghai \
    -e PUID=$(id -u) \
    -e PGID=$(id -g) \
    -e UMASK=022 \
    --network=bridge \
    --dns=8.8.8.8 \
    --restart unless-stopped \
    ghcr.onani.cn/estrellaxd/auto_bangumi:latest
    
  • 进入host:7892 让 AutoBangumi 连接 qBittorrent 并配置下载地址
    f4dfff19eb123558f04f2633aa5fa876

  • 添加 RSS。可前往蜜柑计划 - Mikan Project获得各个字幕组的 RSS

6b3627a855c7424e502a42dcd0b3fb1a

注意:使用蜜柑计划 - Mikan Project时,请订阅单个字幕组的 RSS,不要使用个人的 RSS,会导致只能获取到你所有追番的最新一集而不是单个番的全部剧集

  • 打开飞牛影视,初始化并设置媒体库
    d1615135a5a5d2673a7058eff7db445e

    • 注意:如果要刮削旧集旧番,请规范重命名,可以使用自动化工具:Episode-ReName.zip | AcoFork-AList

      • 一级目录:即 qb 下载目录,无需重命名

      • 二级目录:番剧名称

      • 三级目录:季,如Season 1

      • 四级目录:集和字幕,如S01E01.mp4 S01E01.chs.ass

3. Debian#

安装#

安装 1Panel:#

https://1panel.cn/docs/installation/online_installation/

  • 在 1Panel 中安装Openresty MySQL Halo AList Cloudflared 配置步骤略

搭建 QQBot#

安装 OneBotv11 协议实现:Lagrange.OneBot#

  • Docker Run:docker run -td -p 8081:8081 -v /root/qqbot/lo:/app/data -e UID=$UID -e GID=$(id -g) ghcr.onani.cn/lagrangedev/lagrange.onebot:edge

  • 修改配置文件:appsettings.json

    {
        "Logging": {
            "LogLevel": {
                "Default": "Information",
                "Microsoft": "Warning",
                "Microsoft.Hosting.Lifetime": "Information"
            }
        },
        "SignServerUrl": "",
        "SignProxyUrl": "",
        "MusicSignServerUrl": "",
        "Account": {
            "Uin": 0,
            "Password": "",
            "Protocol": "Linux",
            "AutoReconnect": true,
            "GetOptimumServer": true
        },
        "Message": {
            "IgnoreSelf": true,
            "StringPost": false
        },
        "QrCode": {
            "ConsoleCompatibilityMode": false
        },
        "Implementations": [
            {
                "Type": "ReverseWebSocket",
                "Host": "192.168.124.34",
                "Port": 9090,
                "Suffix": "/onebot/v11/ws",
                "ReconnectInterval": 5000,
                "HeartBeatInterval": 5000,
                "AccessToken": ""
            }
        ]
    }
    
  • 重启容器,扫码登录

安装 NoneBot2#

  • 安装 pip:apt install python3-pip

  • 配置 pip USTC 源:pip config set global.index-url https://mirrors.ustc.edu.cn/pypi/simple

  • 安装 pipx:apt install pipx

  • 安装 nb-cli:pipx install nb-cli

  • 设置 pipx 变量:pipx ensurepath

  • 安装 nb bootstrap:nb self install nb-cli-plugin-bootstrap

  • 创建新 NoneBot2 项目:nb bs

  • root@n100-debian:~# nb bs
    加载适配器列表中……
    请输入项目名称
    [?] 请输入 > onani
    [?] 请选择你想要使用的适配器 OneBot V11 (OneBot V11 协议)
    请输入 Bot 超级用户,超级用户拥有对 Bot 的最高权限(如对接 QQ 填 QQ 号即可)(留空回车结束输入)
    [?] 第 1 项 > 666
    [?] 第 2 项 >
    请输入 Bot 昵称,消息以 Bot 昵称开头可以代替艾特(留空回车结束输入)
    [?] 第 1 项 >
    请输入 Bot 命令起始字符,消息以起始符开头将被识别为命令,
    如果有一个指令为 查询,当该配置项中有 "/" 时使用 "/查询" 才能够触发,
    留空将使用默认值 ['', '/', '#'](留空回车结束输入)
    [?] 第 1 项 >
    请输入 Bot 命令分隔符,一般用于二级指令,
    留空将使用默认值 ['.', ' '](留空回车结束输入)
    [?] 第 1 项 >
    请输入 NoneBot2 监听地址,如果要对公网开放,改为 0.0.0.0 即可
    [?] 请输入 > 0.0.0.0
    请输入 NoneBot2 监听端口,范围 1 ~ 65535,请保证该端口号与连接端配置相同,或与端口映射配置相关
    [?] 请输入 > 9090
    [?] 是否在项目目录中释出快捷启动脚本? Yes
    [?] 是否将 localstore 插件的存储路径重定向到项目路径下以便于后续迁移 Bot? Yes
    [?] 是否使用超级用户 Ping 指令回复插件? Yes
    [?] 是否安装 logpile 插件提供日志记录到文件功能? Yes
    [?] 是否在启动脚本中使用 webui 插件启动项目以使用网页管理 NoneBot?(该插件仍在开发中,不推荐用于生产环境) No
    成功新建项目 onani
    [?] 是否新建虚拟环境? Yes
    正在 /root/onani/.venv 中创建虚拟环境
    创建虚拟环境成功
    [?] 是否需要修改或清除 pip 的 PyPI 镜像源配置? No
    [?] 是否立即安装项目依赖? Yes
    正在安装项目依赖
    依赖安装成功
    [?] 请选择需要启用的内置插件
    项目配置完毕,开始使用吧!
    

成果展示(域名已弃用 虽然能用但跟 N100 已经没关系了🤔)#

d46ceef7a4ab36e7f86a1e9e307e469d

https://blog.onani.cn

https://alist.onani.cn

b79f3e8446380b473ce52bda7557c50a

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。