• DIY-NAS-2020-04-23


    前言

    先说一点题外话,最近发现自己工作中出的很多问题都是因为不够细心和不够耐心,有的时候很鄙视人家的东西但是做都做不好。做不好,又拿什么鄙视人家呢?所以既然现在拒绝不了,那我就拥抱它,做到最好,才有机会证明自己的想法是对的,不然①直这个态度应该还会有什么好处吧。这也是今天写这篇文章的原因,从现在的每一件事情做起,做到耐心细心。不可能百分之百圆满,但要有因有果。

    认识NAS

    很遇然的知道了NAS这种神奇的东西,了解了一翻大概知道他的结构和用途。

    NAS(Network Attached Storage:网络附属存储)按字面简单说就是连接在网络上,具备资料存储功能的装置,因此也称为“网络存储器”。它是一种专用数据存储服务器。它以数据为中心,将存储设备与服务器彻底分离,集中管理数据,从而释放带宽、提高性能、降低总拥有成本、保护投资。其成本远远低于使用服务器存储,而效率却远远高于后者。

    我的理解是

    • 结构:一台低功耗一直运行的服务器。
    • 用途:日常家用服务器。

    看了网上大佬们组装NAS的方法大概有两种

    1. 直接买NAS主机,买回来之后开机即用就好了。
    2. 自己利用旧电脑,闲置硬盘等设备组装。

    为了了解NAS,所以我在油管上丘看了很多视频,印象最深的是一个美女UP主,她有一台Gen8并做作为自己的NAS,关于NAS她前后出了两个视频,时间跨度大概一年。

    第二个视频中明显感觉她在这方面的理论知识上有了更深刻的见解,这也促使我想更快一点拥有一台属于自己的NAS主机,至少在这方面的知识上有一定积累。

    其实台如果自己也买①台NAS主机意义不大,虽然有了NAS可以有很多便利,但是还不至于到买一台主机的地步。

    现有NAS和我不选择现有NAS系统的原因

    看了很多关于NAS的文章或者视频 ,这其中有很多非常优秀的NAS系统,比如群晖、FreeNAS等等。

    我的DIY NAS组成是:旧电脑+Win Server+虚拟机

    其实最初的想法是得用自己的旧电脑,刷一个NAS系统就好了,但是那样真的就把①台电脑做成服务器了。这样做的话我的PC就只剩一台了,并不是很爽,其实我同时用两台电脑的刚需就是想在一台电脑睡写东西另①台看视频。

    而且最让人绝望的事情是,没有一个我喜欢的NAS系统。

    • 群晖

    黑群晖,一开始完全不明白这是个什么概念,后来才知道这个和黑苹果是一个意思。而且完全不想用所谓破解的东西,也就放弃了。

    • FreeNAS

    学习NAS的时候知道了众多开源系统中评价比较高的就是FreeNAS, 这个系统真的应该是不错的了,但是在墙内还是有很多问题,比如装完系统之后刷新页面是很费劲的,因为有大量请求去了不存在的地方。而且这个系统最主要的要求是最低4G运存。

    虚拟平台的选择

    • Hyper-V 为啥先说这个呢,因为我用的就是这个。没什么特别的对微软自家的系统直持一如既往的好,其它系统也可以。

    • ESXI 和KVM 说实话这两个真的没玩过,所以不评价。

    Windows Server

    所以接下来要做的就是重新考虑给自己装一个什么系统,经过一翻思想斗争之后我装了Windows Server 2019,就算是给自己一个学习Windows Server 的机会吧。

    • SMB:有了这个在文件共享方面可以说解决了日常中的很多问题。
    • 操作简单,可以满足我平常对另一块屏幕的很多需要。

    Manjaro

    这个是我比较喜欢的Linux发行版了,虽然现在对Arch整个生态还不是很了解,但是觉得这是个可以折腾的完意。

    即然体验不错,足够稳定,那么Manjaro就作为自己的开发平台及服务吧。开发时要用到的东西基本上都装在这里了,数据库,Nginx, Git项目,博客等等。

    • 开机自动挂载Windows Server 的SMB,这样就可以在虚机中操作硬盘中的文件。
    • 可以安装Docker 满足我我以服务器的需要。
    • 还可以部署离线下载,下载目录就用挂载的SMB就可以了。

    OpenWRT

    这个是LEDE固件,说白了就是一个可以实现路由器功能,并且可以开启更多扩展,安装更多插件的轻量级Linux系统。考虑到之前自己遇到的情况觉得装这个软路由是非常必要的。

    之前其实就折腾过这个东东,但是那个时候没有搞明白,可以实现独臂路由,但是不是特别稳定。

    所以这一次又折腾了一次。

    • 虚路由是对外的唯一设备,可以实现Windows Server和各个虚拟主机与其它局域网的完全隔离,并不是为的所谓的安全,只是想玩一玩。
    • 不确定未来是否会实现访问不存在网站的功能, 但是现在还没有必要。
    • 端口映射可以实现外部局域网访问内部应用(远程桌面也是通过这个实现的,Windows Server 和 Manjaro都可以的)

    OpenWRT安装过程

    安装就比较常规操作了,下载支持uefi的虚拟机镜像,WinServer的Hyper-v中导入镜像,关闭微软安全。

    给这个虚机要配置两个网卡, 一个做LAN口,一个做WAN口,LAN口网卡应该为内部网络并且这个应该是先接入的,在虚拟机的设置里应该在上面,WAN口网卡应该是外部网络就是缩主机连接网络的实体网卡,并且要在Hyper-v的虚拟交换机中将这个网卡的允许管理操作系统共享此网络适配器 勾掉。这样做的用途就是将这个OpenWRT虚机作为路由器,将外部网络接入路由器。

    接下来就是配置OpenWRT, 配置起来就比较简单了,主要是把外部端口转发给自己想用的虚拟机或宿主机就好了。

    其实之前想的是多装几个Linux虚拟机,来个多节点啥的。玩起来也是方便。但是最后还是放弃了,如果有什么需要就在Manjaro 中装Docker算了。

    遇到几个非常狗的问题

    1. FTP分主动模式和被动模式, 只映射21或22端口是不好用的。
    2. SMB也不是一个端口就可以搞定的,要好多接口。
    3. 使用WIFI情况下,访问FTP可能会跑断网,目前的方案就是用网线,或许可以搞一搞无线网卡双开工,上传限制,断点续传,但是目前还是网线最稳。
    4. Windows Server 如果用的评估版的话基本意味着阉割版,没什么意思。

    求救

    其实想用Mouse without border 但是并不知道端口使用范伟如有大神知道怎么调查Windows 程序的商品范围的话,请不啬赐教。

  • 相关阅读:
    Coursera机器学习week11 单元测试
    关于 TypeReference 的解释
    getModifiers 方法解释。
    instanceof isInstance isAssignableFrom 比较
    elasticsearch 基础 语法总结
    kibana 启动 关闭 和进程查找
    MD5 SHA1 SHA256 SHA512 SHA1WithRSA 的区别
    spring boot 项目 热启动
    java zip 压缩文件
    Packet for query is too large (1660 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.
  • 原文地址:https://www.cnblogs.com/hoyu/p/12839932.html
Copyright © 2020-2023  润新知