平时用百度盘同步手机的相片,前几天不小心操作把计算机的备份给误删除,从百度网盘恢复数据这个慢,后来买了diskgenius才恢复数据。遂决心利用家里树莓派,diy一个私有网盘,网上查了查资料,看符合私网穿透,跨多平台推荐syncthing的比较多,就用了syncting来共享数据。

1 首先在树莓派上挂载ntfs格式硬盘。淘宝买个usb3.0的运动硬盘盒,配个2.5寸1T的sata机械硬盘,土豪可以买固态硬盘。
1.1 在windows机器上使用pqmagic,diskgenius,fdisk等工具之一将硬盘分区并格式化为ntfs格式。

2 树莓派默认挂载ntfs 硬盘时只有只读权限,需要安装NTFS-3g增加读写权限。 参考《树莓派3B+自动挂载移动硬盘或U盘

2.1 安装ntfs-3g
sudo apt-get install ntfs-3g
modprobe fuse
2.2 看看是不是识别硬盘。
sudo fdisk -l
2.3查看硬盘挂载位置
df -h
输出是:(也可能不是/dev/sda1,sda1 是取决于你的实际情况,a表示第一个硬盘,1表示第一个分区。)
/dev/sda1 112G 114M 112G 1% /media/pi/新加卷
2.4 卸载硬盘
sudo umount /dev/sda1
2.5 创建挂载目录
sudo mkdir /mnt/myusbdrive
2.6 重新挂载硬盘到/mnt/myusbdrive目录
mount –t ntfs /dev/sda1 /mnt/myusbdrive
2.7实现开机自动挂载
sudo vim /etc/fstab
#在最后一行添加如下内容
/dev/sda1 /mnt/myusbdrive ntfs-3g defaults,noatime,umask=0000 0 0
说明:
sda1是取决于你的实际情况,a表示第一个硬盘,1表示第一个分区。
umask=0000 0 0
前面四个0就是对所有人,可读可写可执行,
后面两个0,第一个代表dump,0是不备份
第二个代表fsck检查的顺序,0表示不检查
卸载:sudo umount /mnt/myusbdrive
查看挂载情况可使用以下命令。
cd /mnt/myusbdrive
ls

3 在树莓派安装syncthing,参考了《树莓派部署syncthing实现私有云 | 树莓派小无相系列
3.1 官网syncthing.net,在download页面linux下下载arm版本syncthing。
syncthing官网下载页面,右键arm,复制链接
cd ~
sudo wget https://github.com/syncthing/syncthing/releases/download/v1.7.1/syncthing-linux-arm-v1.7.1.tar.gz
3.2解压
sudo tar -zxvf syncthing-linux-arm-v1.7.1.tar.gz

mv syncthing-linux-arm-v1.7.1 syncthing
chmod +x ~/syncthing/syncthing

3.3 执行syncthing
cd syncthing
./syncthing

3.4 修改配置文件,用以局域网访问网址
sudo vim ~/.config/syncthing/config.xml
找到如下内容:

127.0.0.1:8384
XXXXXX 将127.0.0.0修改为0.0.0.0

4 在手机安装syncthing
在手机市场查找syncthing,并安装。
4.1配置很简单,在手机和树莓派上用网页配置就可以。是用一个特别长的设备id来互相认证。在添加需要同步到树莓派的手机文件夹即可。

5 在windows计算机上安装syncthing
下载地址:
https://github.com/syncthing/syncthing/releases/download/v1.7.1/syncthing-windows-amd64-v1.7.1.zip
但奇诡的是,这个地址下载很慢,最后是用笔记本登陆移动手机热点才顺利的下载成功。是个绿色的软件,直接找到可执行文件syncthing.exe或者synctrayzor.exe运行并配置就可以。配置和手机和树莓派没有什么区别。

syncthing是个一个跨平台和主机之间平等的数据同步软件,不受私网穿透的限制,非常容易使用。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐