本文于2018年2月4日发表于知乎专栏,查看原文
本文于2018年2月5日发表于微信公众号,查看原文
Seafile,是“开源的私有云存储”。
近日在家里的Windows台式机上的Ubuntu子系统配置了Seafile。为啥不直接拿台Linux电脑?当然是因为穷,交不起两台电脑的电费……
Ubuntu子系统,需要Windows 10 专业版 版本 1709以上,在控制面板->程序->启用或关闭 Windows 功能中打开适用于 Linux 的 Windows 子系统,然后在Microsoft 应用商店中下载Ubuntu即可。
安装 首先需要下载好Seafile的Linux 服务器端:下载 - Seafilewww.seafile.com
或者
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 cd mkdir seafilecd seafilewget http://seafile-downloads.oss-cn-shanghai.aliyuncs.com/seafile-server_6.2.5_x86-64.tar.gz tar -vxzf seafile-server_6.2.5_x86-64.tar.gz cd seafile-server_6.2.5``` 接着装好Python和SQLite: ```sh sudo apt-get updatesudo apt-get install pythonsudo apt-get install python2.7 libpython2.7 python-setuptools python-imaging python-ldap python-urllib3 ffmpeg python-pip sqlite3pip install pillow moviepy ``` 安装并启动: ```sh ./setup-seafile.sh ./seafile.sh start ./seahub.sh start ``` 浏览器打开[http://localhost:8000/](http://localhost:8000/),应该就可以看到Seafile界面。 ![](https://images.weserv.nl/?url=https%3A%2F%2Fpic.njzjz.win%2F1WRNQBGzeaEADah1ZlLVECMx-UUaMPXbK&default=https%3A%2F%2Fpic.njzjz.win%2F1WRNQBGzeaEADah1ZlLVECMx-UUaMPXbK) * * * 在高级安全 Windows Defender 防火墙中,创建入站规则,允许8000和8082两个端口通过。 * * * 由于关掉Bash后,里面所有进程都会结束,所以我们要让Seafile在后台静默运行。 首先创建seafile.sh: ```sh cd /home/njzjz/seafile/seafile-server-6.2.5/ ./seafile.sh start ./seahub.sh start $SHELL
然后在Windows 系统中创建Seafile.vbs:
Set ws = CreateObject("Wscript.Shell")
ws.run "bash -c 'sh /home/njzjz/seafile.sh'",vbhide
最后,在计划任务中让Seafile.vbs开机自动启动即可。
设置外网访问 首先确定有宽带有公网IP,如果没有,找运营商客服要。之前江苏电信把我的IP改成了100开头的内网IP,后来在微信上的江苏电信客服那里开通了一个名为“公网IPv4”的业务。
如果开通不了,就用ngrok穿透……这篇文章就不说了。
在路由器中设置好端口转发,8000和8082端口都要,8000端口用来打开网页(因为80端口被中国的运营商屏蔽了),8082端口用来上传和下载文件:
配置DDNS服务,这里推荐Dynu ,一个有中文的、免费的、非常稳定的DDNS服务商:
当然可以把自己的域名再设置CNAME记录。这时,在任何网络,打开http://cloud.njzjz.win:8000/ 就可以使用了。
Seafile有Windows、Mac、Linux、iOS、Android客户端,最良心的就是Linux客户端了。Onedrive因为没有Linux客户端,网页版又不能通过正常手段访问(IPv6下都不行),所以在Ubuntu下完全无法使用。