linux nas 性能,编辑中 把折腾进行到底——我的高性能家用NAS搭建之二:软...

本帖最后由 阿崔 于 2018-3-27 16:16 编辑

4 软件

4.1 前言

这篇文章作为硬件篇的后续,本来应该在去年完成,但是由于作者懒癌晚期,就算看到之前有坛友从自组服务器变成给群晖做贡献,依然怀着内疚之情拖到今年春节才算完成。当然了这期间系统也有了不少升级,性能和易用性都得到了不小的提升。

4.2 设计

这个在前文中已经介绍过了,在新系统中随着后续应用,一个是因为网络性能,使用proxmox替换掉了ESXi,iSCSI的4k性能提升了大约30%。另一个是发现了可以和OnlyOffice整合的Nextcloud。整体系统架构如下。

ea9bacb63dd599c53f2bb2560a557807.gif

HomeServer.png (209.84 KB, 下载次数: 9)

2018-2-25 06:16 上传

4.3 网络

从安全和易用性的角度,把家中的网络分为几大部分:

台式机

智能家居

网络设备管理

无线设备

访客网络

打印机

iSCSI存储网络结构如下:

ea9bacb63dd599c53f2bb2560a557807.gif

HomeNetwork.png (482.35 KB, 下载次数: 10)

2018-2-25 03:23 上传

4.4 虚拟机系统

4.4.1 简介

使用基于KVM的Proxmox VE。相比同样免费的VMWare的ESXi,尽管在易用性上有所缺失,但是在网络性能和功能上都要好于ESXi。

4.4.2 安装

从 https://www.proxmox.com/en/downloads/category/iso-images-pve 下载PVE的ISO,当前最新版本为5.1。

如果使用服务器主板,可以用管理界面自带的虚拟光驱远程安装。

首先选择第一项安装Proxmox VE。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_install.png (70.87 KB, 下载次数: 3)

2018-3-4 16:18 上传

然后选择系统安装位置。默认会把对应设备按ext4+LVM进行分区,如果需要其他选项(比如ZFS的Raid 1),请点击options按钮进行设置。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_install_disk.png (427.54 KB, 下载次数: 4)

2018-3-4 16:18 上传

之后会让你选择所在地区、系统时区和键盘设置。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_install_localization.png (428.33 KB, 下载次数: 3)

2018-3-4 16:18 上传

再下面是设置root密码和邮件地址。配置正确之后系统会向对应邮箱发送一些重要的事件提醒。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_install_admin.png (445.31 KB, 下载次数: 3)

2018-3-4 16:18 上传

最后是管理网络设置,这里是未来Proxmox VE Web管理界面的地址,推荐和常用网络分开。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_install_network.png (473.51 KB, 下载次数: 3)

2018-3-4 16:18 上传

全部完成后等待安装完成重启。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_install_finished.png (336.08 KB, 下载次数: 3)

2018-3-4 16:18 上传

然后前往之前配置的地址所在的Web管理界面进行后续配置(端口8006)

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_login.png (404.14 KB, 下载次数: 4)

2018-3-4 16:18 上传

登录后会提示没有订阅,不用管

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_subscription.png (22.12 KB, 下载次数: 4)

2018-3-4 16:18 上传

4.4.3 网络配置

根据我使用的主板和交换机,我使用LACP聚合NAS上的两个千兆端口来同时提供Web管理界面和FreeNAS上的存储以及Ubuntu Server提供的其他服务。万兆端口将直接把PCI设备Passthrough给FreeNAS,用于提供iSCSI服务。Ubuntu Server通过本地桥接访问FreeNAS。网络结构如下。Proxmox VE提供了Linux桥接和Open vSwitch两种方式配置网络。考虑到配置的方便性和扩展性,这里我使用Open vSwitch方式配置网络。

安装Open vSwitch

Debian自带的Open vSwitch据说基本不可用,所以我们需要使用Proxmox提供的版本。点击Shell(JS)进入Proxmox VE的命令行。依次执行如下命令:

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_shell.png (376.44 KB, 下载次数: 4)

2018-3-4 16:18 上传

wget -q -O- 'http://download.proxmox.com/debian/pve/dists/stretch/proxmox-ve-release-5.x.gpg' | apt-key add -复制代码

echo "deb http://download.proxmox.com/debian/pve stretch pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription.list复制代码

apt update复制代码

apt install -y openvswitch-switch复制代码

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_add_source.png (87.06 KB, 下载次数: 4)

2018-3-4 16:18 上传

创建网络

首先删除默认的 vmbr0

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_network.png (44.65 KB, 下载次数: 3)

2018-3-4 16:18 上传

建立两个OVS Bridge,一个 vmbr0 用于聚合的千兆端口,另外一个 vmbr1 用于同一物理节点下不同系统间的通信。除了名字的所有选项均先设为空。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_vmbr0.png (31.02 KB, 下载次数: 3)

2018-3-4 16:18 上传

然后建立一个OVS IntPort,用于管理端口的vlan tag为50的 vlan50 ,对应OVS Bridge为 vmbr0 ,地址为管理端口所需地址。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_vlan50.png (33.94 KB, 下载次数: 3)

2018-3-4 16:18 上传

之后再建立一个OVS IntPort,名字为 internal ,对应OVS Bridge为 vmbr1 ,用于该物理节点下不同系统间通信,地址和其他网络不重复即可。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_internal.png (35.07 KB, 下载次数: 3)

2018-3-4 16:18 上传

最后建立一个OVS Bond,名字为 bond0 ,聚合模式为 LACP(balance-slb) ,slaves一项填两个千兆网口对应的名字,中间用空格分开,这里为 ens18 ens19 ,对应OVS Bridge为 vmbr0 。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_bond0.png (30.38 KB, 下载次数: 4)

2018-3-4 16:18 上传

然后修改DNS设置,把DNS服务器的IP地址填对。重启物理机之后使用刚才配置的管理地址访问Web管理界面。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_dns.png (10.38 KB, 下载次数: 4)

2018-3-4 16:18 上传

4.4.4 开启PCI Passthrough

修改GRUB设置

先执行

nano /etc/default/grub复制代码

找到GRUB_CMDLINE_LINUX_DEFAULT="quiet" 一行,改为 GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"

如果是AMD CPU,改为GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on" 然后根据下方提示按 Ctrl+x 再按 y 键和回车键存盘并退出。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_grub.png (89.19 KB, 下载次数: 3)

2018-3-4 16:18 上传

之后执行

update-grub复制代码

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_update_grub.png (32.45 KB, 下载次数: 3)

2018-3-4 16:18 上传

增加需要的内核模块

执行

echo -e "vfio\nvfio_iommu_type1\nvfio_pci\nvfio_virqfd" >> /etc/modules复制代码然后重启即可

4.4.5 添加磁盘

通过节点的磁盘一项找到对应的设备名称,这里是 /dev/sdb 如果是NVMe设备,那么就是类似 /dev/nvme0n1 这种名字;

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_disks.png (51.48 KB, 下载次数: 4)

2018-3-4 16:18 上传

打开节点的命令行窗口;

执行

sgdisk -N 1 /dev/sdb复制代码

或者

sgdisk -N 1 /dev/nvme0n1复制代码

在新磁盘中创建分区;

执行

pvcreate -y -ff /dev/sdb1复制代码

或者

pvcreate -y -ff /dev/nvme0n1p1复制代码

创建LVM物理卷;

执行

vgcreate vmcache /dev/sdb1复制代码

或者

vgcreate vmcache /dev/nvme0n1p1复制代码

创建名为 vmcache 的LVM卷分组;

执行

lvcreate -L 400G -T -n cachepool vmcache复制代码

创建名为 cachepool 的大小为 400G 的LVM-thin存储池;

执行

pvesm add lvmthin cache-lvm --thinpool cachepool --vgname vmcache --content images,rootdir复制代码

创建名为 cache-lvm 的,用于存放虚拟机镜像和LXC容器的存储空间。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_lvm.png (57.02 KB, 下载次数: 3)

2018-3-4 16:18 上传

4.4.6 UPS配置

这里以APC支持USB通信的UPS为例,其他型号配置请参考NUT的文档。

执行

lsusb复制代码

确认UPS已经通过USB连接上;

执行

apt install -y nut复制代码

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_apt_nut.png (149.75 KB, 下载次数: 3)

2018-3-4 16:18 上传

安装NUT;

执行

nano /etc/nut/ups.conf复制代码在最后添加:

driver = usbhid-ups

port = auto复制代码

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_nut_ups_conf.png (2.82 KB, 下载次数: 3)

2018-3-4 16:18 上传

之后按下方提示退出并保存。执行

upsdrvctl start复制代码

,如果 ups.conf 没有问题的话,会显示驱动版本号并回到命令提示符。如果反复显示 Driver failed to start 那么就是配置有问题或者UPS不支持,按 Ctrl+c 终止执行。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_nut_ups_test.png (10.19 KB, 下载次数: 3)

2018-3-4 16:18 上传

执行

nano /etc/nut/upsd.conf复制代码

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_nut_upsd_conf.png (33.05 KB, 下载次数: 3)

2018-3-4 16:18 上传

找到 # LISTEN 127.0.0.1 3493 这样一行,去掉前面的 # ,然后按下方提示退出并保存;

执行

nano /etc/nut/upsd.users复制代码

在最后添加:

[upsmon]

password = blahblah

upsmon master复制代码

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_nut_upsd_users.png (22.36 KB, 下载次数: 3)

2018-3-4 16:18 上传

之后按下方提示退出并保存;

执行

nano /etc/nut/upsmon.conf复制代码

找到 # RUN_AS_USER nut 删除前面的 #。找到# MONITOR [email protected] 1 upsmon pass master  (or slave) 在下面一行添加MONITOR [email protected] 1 upsmon blahblah master 。然后按下方提示退出并保存。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_nut_upsmon_conf.png (48.51 KB, 下载次数: 3)

2018-3-4 16:18 上传

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_nut_upsmon_conf_1.png (34.97 KB, 下载次数: 3)

2018-3-4 16:18 上传

执行

nano /etc/nut/nut.conf复制代码

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_nut_nut_conf.png (18.05 KB, 下载次数: 3)

2018-3-4 16:18 上传

把 MODE=none 替换为MODE=standalone 。然后按下方提示退出并保存。

执行

systemctl start nut-server复制代码;

执行ups.conf 和 upsd.conf 都没问题就会显示相应的UPS信息,否则请修改配置文件。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_setup_nut_upsc.png (44.89 KB, 下载次数: 4)

2018-3-4 16:18 上传

4.5 操作系统

4.5.1 FreeNAS

安装

首先从 http://www.freenas.org/download 下载最新版的FreeNAS,目前最新版是11.1-U2。

然后在虚拟机环境的Web管理界面找到名为 local 的存储,点击上传按钮,上传内容选择 ISO image,文件选中刚才下载好的文件,开始上传。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_upload_iso.png (52.74 KB, 下载次数: 3)

2018-3-4 17:57 上传

然后开始创建FreeNAS的虚拟机,名字填freenas。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas.png (29.98 KB, 下载次数: 3)

2018-3-4 17:57 上传

这里ISO 映像选刚才上传好ISO文件,类型选 Other 。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_cdrom.png (40.16 KB, 下载次数: 3)

2018-3-4 17:57 上传

硬盘设置里面总线/设备选 SCSI ,存储选 local-lvm ,磁盘大小16G就够了。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_disk.png (42.53 KB, 下载次数: 4)

2018-3-4 17:57 上传

然后CPU核心数根据实际情况选填,一般4就可以了,我这里填成8。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_cpu.png (31.38 KB, 下载次数: 3)

2018-3-4 17:57 上传

内存大小填65536,也就是64G。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_memory.png (39.97 KB, 下载次数: 4)

2018-3-4 17:57 上传

网络设置使用桥接模式,网桥选之前建立的 vmbr0 。网卡型号更换成 VirtIO 以达到最高性能。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_nic.png (45.13 KB, 下载次数: 3)

2018-3-4 17:57 上传

确定全部配置正确之后就可以创建虚拟机了。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_review.png (42.02 KB, 下载次数: 3)

2018-3-4 17:57 上传

之后进入虚拟机的硬件设置,先把显示从默认改为 SPICE 。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_display.png (5.78 KB, 下载次数: 3)

2018-3-4 17:57 上传

然后添加用于节点内部通信的基于vmbr1 的网卡,网卡型号仍然使用 VirtIO 。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_nic1.png (34.3 KB, 下载次数: 3)

2018-3-4 17:57 上传

然后进入选项设置,把BIOS从 默认(SeaBIOS) 改为 OVMF(UEFI) 。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_bios.png (9.71 KB, 下载次数: 4)

2018-3-4 17:57 上传

然后回到硬件设置,添加一个 EFI Disk ,存储位置 local-lvm 。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_efi_disk.png (9.59 KB, 下载次数: 3)

2018-3-4 17:57 上传

之后回到节点的Shell界面,在里面执行

lspci复制代码

找到需要由FreeNAS直接控制的设备,我这里是一个NVMe的SSD,一个万兆网卡,和LSI的9211-8i接口卡。记下他们的所在行最前面的数字ID,这里分别是 01:00.0 、 03:00.1 和 05:00.0( 03:00.0 准备用在提供上层服务的ubuntu server上面)。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_lspci.png (51.22 KB, 下载次数: 4)

2018-3-4 17:57 上传

然后在节点的Shell里面执行

nano /etc/pve/qem-server/100.conf复制代码

编辑FreeNAS虚拟机的配置文件。在里面添加如下内容:

hostpci0: 05:00.0

hostpci1: 03:00.1

hostpci2: 01:00.0复制代码

这样这些设备就会在启动后由FreeNAS直接控制。

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_conf.png (40.85 KB, 下载次数: 3)

2018-3-4 17:57 上传

最后检查一下硬件设置

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_hw.png (64.22 KB, 下载次数: 3)

2018-3-4 17:57 上传

选项设置

ea9bacb63dd599c53f2bb2560a557807.gif

pve_vm_freenas_options.png (70.12 KB, 下载次数: 4)

2018-3-4 17:57 上传

然后点击 启动 就可以开始安装FreeNAS了,点击控制台进入操作界面。安装过程非常简单,这个大家可以在网上搜索教程,我就不特意写了。

网络配置

登录之后默认会开启向导,直接退出即可。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_localization.png (9.77 KB, 下载次数: 3)

2018-3-4 21:09 上传

先进入系统->常规里面更改语言选项。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_system.png (165.65 KB, 下载次数: 3)

2018-3-4 21:09 上传

然后在网络->网络接口->添加网络接口里面给各个网卡添加对应的IP地址,推荐写成固定的,避免DHCP服务器重启或者宕机时候影响整个系统。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_vtnet0.png (43.93 KB, 下载次数: 4)

2018-3-4 21:09 上传

推荐WebUI跑在独立VLAN上,减少安全风险。

使用网络->VLAN->添加VLAN给对应网卡添加VLAN。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_vlan50.png (14.54 KB, 下载次数: 3)

2018-3-4 21:09 上传

然后使用网络->网络接口->添加网络接口给新添加的VLAN指定IP地址。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_vlan50_ip.png (44.49 KB, 下载次数: 3)

2018-3-4 21:09 上传

最后在系统->常规里面,把WebGUI使用的IP地址修改成VLAN所在地址。

ZFS配置

使用存储器->卷->卷管理器创建新的存储池,对于小规模的NAS,推荐使用RaidZx形式。尤其是桌面/NAS硬盘,出于对数据安全的考虑y,超过4盘之后推荐使用RaidZ2以上的阵列形式。可以把额外的SSD作为读缓存(L2ARC)使用,以此做到对常用数据的快速访问。

注意,由于ZFS的工作原理,对于家庭应用,不推荐给阵列使用写缓存(ZIL)。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_base.png (54.21 KB, 下载次数: 4)

2018-3-4 21:09 上传

我的NAS最后的结构是一个使用6盘的RaidZ2+500G NVMe SSD的读缓存的主阵列 base。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_base_zpool.png (37.38 KB, 下载次数: 3)

2018-3-4 21:09 上传

一个使用双盘互为镜像的备份阵列 backup。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_backup_zpool.png (29.84 KB, 下载次数: 4)

2018-3-4 21:09 上传

SMB共享

SMB共享也就是Windows共享,由于不管是Linux、OSX、Windows还是手机,都对它有很好支持,

所以一般在家庭中作为主要共享方式使用。

使用存储器->卷->/mnt/base->创建数据集来创建共享所用的数据集,我这里有一个用于存放软件、游戏、文档之类的Public,一个用于存放多媒体文件的Multimedia,和一个用于存放用户数据的users。共享类型全部为windows。

然后使用共享->Windows(SMB)共享列表->添加Windows(SMB)共享来给每个数据集创建对应的SMB共享。

注意users要勾选用作主目录共享。这样会给每个用户在访问SMB的时候都会有一个专属于自己的共享目录。

然后使用账户->所有用户->添加用户来添加可以登陆的用户。

之后就可以使用任意一个地址和用户名/密码访问SMB共享目录了。

NFS共享

NFS主要用于Unix主机访问,性能要好于SMB,但是兼容性较差。我这里主要用于存储docker、sage和一个Linux桌面系统的数据。

还是先用存储器->卷->/mnt/base->创建数据集来创建NFS所用的数据集,注意这里共享类型要选成UNIX。

使用共享->Unix(NFS)共享列表->添加Unix(NFS)对象来创建NFS共享。

注意,对于需要支持root用户的NFS共享来说,由于FreeNAS和Linux的root不太一样,需要把高级模式里的Maproot用户设为root,Maproot组设为wheel。另外NFS是根据uid和gid来分配权限的,所以使用同一个NFS的不同主机,相同的用户需要有相同uid和gid。

iSCSI共享

和其他共享方式不一样,iSCSI是把存储作为块设备共享出去的。在使用iSCSI的系统中,iSCSI是作为一个类似硬盘的设备来使用的。所以iSCSI有着最高的性能,但是跨系统的兼容性也最差。比较适合给各种设备提供中心化的硬盘,比如家里的游戏电脑和HTPC,完全可以就装一个用来启动系统的小容量ssd,然后使用万兆网和iSCSI共享来为这些设备提供大容量存储,这样每个设备都有相当于有了一个大容量/高可靠性/高性能的ZFS阵列,减少了很多维护上的复杂性,设备也不用再考虑硬盘位的问题。

为了达到最高性能,iSCSI需要的在存储中建立zvol,使用存储器->卷->/mnt/base->创建zvol来完成。如果不是对性能有特别极端的需求,可以勾选松散卷一项,这样会根据实际使用情况来分配占用的存储空间。可以更有效的利用存储。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_iscsi_zvol.png (42.43 KB, 下载次数: 3)

2018-3-4 21:09 上传

iSCSI中有几个特别的名词,Initiator就相当于其他共享协议中的客户端,Target相当于一个共享对象,Portal是用来进行用户授权和列出所有可用Target的服务。所以一个简单的iSCSI共享需要至少一个Portal和至少一个Target,以及一个Initiator组用来确定可连接的设备。

使用共享->阻止(iSCSI)->Initiator->添加Initiator,来添加新的基于IP地址和名称的对iSCSI客户端的认证。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_iscsi_initiator.png (24.04 KB, 下载次数: 3)

2018-3-4 21:09 上传

然后使用共享->阻止(iSCSI)->Portals->添加Portal,来创建新的Portal。

之后使用共享->阻止(iSCSI)->Target->添加Target,来创建新的Target,Portal组ID和Initiator组ID分别使用刚才创建的两个。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_iscsi_target.png (31.4 KB, 下载次数: 3)

2018-3-4 21:09 上传

然后使用共享->阻止(iSCSI)->Extent->添加Extent,来创建新的Extent,Extent类型选设备,设备选刚才创建好的zvol共享。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_iscsi_extent.png (46.2 KB, 下载次数: 4)

2018-3-4 21:09 上传

最后用共享->阻止(iSCSI)->Target/Extent->添加Target/Extent来把Target和刚刚创建的Extent关联起来。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_iscsi_target_extent.png (9.89 KB, 下载次数: 4)

2018-3-4 21:09 上传

需要更灵活权限控制的情况下,可以使用共享->授权访问->添加授权访问来创建新的认证规则,然后把Portal的发现认证组以及Target的认证组编号设为对应的认证规则,Target的认证方式根据实际情况选择。

ea9bacb63dd599c53f2bb2560a557807.gif

freenas_setup_iscsi_auth.png (23 KB, 下载次数: 3)

2018-3-4 21:09 上传

维护任务

待完善

4.5.2 Ubuntu Server

安装

网络配置

挂载FreeNAS共享

4.6 应用

4.6.1 Docker

安装

Aria2

NextCloud

Onlyoffice整合

Draw.io整合

Plex

Ubnt Network Manage System

Home Assistance4.6.2 Sage

4.6.3 Ubnt UniFi Contoller

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值