利用闲置PC打造NAS

nas

最近折腾一下了NAS,最终探索出了一个利用闲置电脑打造nas的方案。

1. 使用nas的目的

仔细思索了下,使用一个nas主要出于以下目的:

  1. 作为媒体库,在各个客户端(如电视、手机、pad)播放电影。
  2. 作为下载机,全天在线下载各种网络资源。
  3. 作为大号硬盘,存储云盘中各种各样的文件,方便随时使用。
  4. 作为云盘,代替世面上各种XX云盘。

2. 当前市面上各种nas的痛点

  1. 比较好用的nas成本高。一个稍微好用点的nas投入要几千块。(如群晖ds218+ 价格2700,加上硬盘,总共差不多4000块)
  2. 便宜的nas不好用。
    1. 各种黑群晖,非常不稳定,而且还很折腾。
    2. 便宜的nas cpu弱,导致卡顿。
    3. 便宜的nas很多功能不支持。如玩物下载,docker等。
  3. nas的软件相比windows软件弱了很多。
    1. 比方说玩物下载是pc迅雷速度的十分之一不到。
    2. 比方说某些云盘客户端pc有,nas却没有。

3. 解决方案

  1. 闲置pc安装大硬盘。如果是笔记本,就插一块USB3.0移动硬盘。
  2. pc上安装plex server,做为媒体库服务端。ios客户端用infuse,电视盒子客户端用kodi
  3. pc安装各种常用软件,如迅雷,百度云盘等。
  4. pc安装向日葵,用于通过其他电脑远程控制pc。
  5. 宽带开通公网ip,然后在路由器映射端口到pc,用于公网访问各种pc上的服务。(如plex)
  6. win10 开启smb服务
    1. 控制面板 - 程序 - 开启关闭功能 - 勾选smb相关选项
    2. 需要共享的文件夹 - 右键 - 属性 - 共享tab页 - 高级共享
      • 共享此文件夹
      • 给所有用户添加权限

批注 2020-04-06 203144 批注 2020-04-06 203242批注 2020-04-06 203311批注 2020-04-06 203337批注 2020-04-06 203400
3. 参考
* http://blog.zivers.com/post/2193.html
* https://www.zhihu.com/question/51578219
7. mac (10.15版本)上设置netbios以访问smb服务
1. echo “[default]” | sudo tee -a /etc/nsmb.conf
2. echo “port445=both” | sudo tee -a /etc/nsmb.conf
3. 打开finder - 菜单栏 - Go - Connect to server - smb://x.x.x.x
4. 参考:https://medium.com/@gobinathm/how-to-access-smb-printer-shares-in-macos-catalina-10-15-17ea91d2c10b

4. 可能存在的疑虑

pc相比nas唯一的缺点可能是耗电量大一点。但是这点耗电量在今天显得微不足道。

比方说pc功率50w(我的是笔记本),那么一天电费是大概0.5元(峰电5毛,谷电3毛算),一年就是182元。

大概28年的电费花销抵得上一台nas花销加其对应的电费(nas算10w功耗)

计算方式:4000 / ((50 - 10) * 365 * 24 * (0.5 + 0.3) / 2) = 28

5. 该解决方案的优势

  1. 省钱。省了一台nas的钱,大概4000元。
  2. 性能强劲。pc的性能比nas强n倍,不会像nas那样有时很卡顿。
  3. 软件比nas好用。比方说迅雷下载速度是玩物下载的10多倍。
/** * RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS. * LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: https://disqus.com/admin/universalcode/#configuration-variables*/ /* var disqus_config = function () { this.page.url = PAGE_URL; // Replace PAGE_URL with your page's canonical URL variable this.page.identifier = PAGE_IDENTIFIER; // Replace PAGE_IDENTIFIER with your page's unique identifier variable }; */ (function() { // DON'T EDIT BELOW THIS LINE var d = document, s = d.createElement('script'); s.src = 'https://chenzz.disqus.com/embed.js'; s.setAttribute('data-timestamp', +new Date()); (d.head || d.body).appendChild(s); })();