使用树莓派和 Plex 架设照片和备份服务

我用手机拍了很多照片,平时都保存在一台 Windows 台式机上,这台机器硬盘空间大,主要干两个事情,一个是我打游戏,一个就是存放多媒体数据(主要是照片,也有很多文档)。有时候我需要它提供照片服务,以方便家人使用各种媒体终端(手机、电视盒子等)阅览,有时候则需要往上面拷贝数据以作备份只用,于是我使用 Plex 折腾了一下,但是由于台式机噪音等等的关系,不适合长期开机,因此当时那个方案还是残缺的。

现在打算彻底解决这个问题。大致总结一下,以下是我的主要的几个需求:

  • 照片服务要能够长期保持在线,私用可以方便地查看照片。开机不能有明显的噪音和功耗问题。
  • 我的照片经常是在 Windows 下进行处理的,因此需要很方便地同步到照片服务器。
  • 我办公和文档处理都是在 Mac 上进行的,因此需要很方便地同步文档到服务器。
  • 私用,不愿意上传公有云。

最近树莓派比较火,因此我花了几十刀买了个第四代,想用它来满足上面的需求。

配置树莓派

安装树莓派

这一步没有什么特别的,从 4 代开始,风扇显得更为重要,但是接针脚的时候,选择 1-6,而不是 4-6,因为 1 号针脚是 3V3,电压低一些,散热能力是弱一些,但风扇噪音也小一些,适合长期开机。考虑到我们的实际需求,这个够用了。

配置 SSH

打开 SSH:

sudo raspi-config

在 Interfacing Options 选项中打开 SSH。

但这样还不够,需要修改 /etc/ssh/sshd_config 添加:

IPQoS cs0 cs0

之后重启一下 ssh 服务:

sudo service ssh restart

还可以按照我在这篇文章中介绍的办法配置密钥访问,不过是局域网内私用,必要性不那么强。

关闭自动休眠

既然用作服务器,肯定不能自动休眠。

sudo apt-get install vim
sudo vim /etc/lightdm/lightdm.conf

添加如下:

xserver-command=X -s 0 -dpms

重启:

sudo reboot

设置静态 IP

静态 IP 可以在树莓派上面配置,不过一旦配错了就没法 ssh 进去改正了;也可以在路由器上面配置,我是在路由器上配置的,操作起来比较方便。我用的路由器是 NETGEAR 的,静态 IP 的配置在 ADVANCED > Setup > LAN Setup 下面。

安装 Plex

这一篇 PiMyLifeUp 上的教程很不错,我基本是照着做的。准备工作:

sudo apt-get install apt-transport-https
curl https://downloads.plex.tv/plex-keys/PlexSign.key | sudo apt-key add -
echo deb https://downloads.plex.tv/repo/deb public main | sudo tee /etc/apt/sources.list.d/plexmediaserver.list
sudo apt-get update

安装 Plex:

sudo apt-get install plexmediaserver

配置额外的存储

自带的 Mini-SD 卡容量太小了,我又买了一张大的,配合 USB 读卡器插上。我一开始使用了卡的默认格式 exFAT,结果同步工具支持得不好,因此没办法,我把它格式化成 Ext4:

sudo mkfs.ext4 /dev/sda1

在/media 下面建立了 backup 目录,之后就可以 mount 了:

 sudo mount -t ext4 /dev/sda1 /media/backup

虽然搞定了,但是机器一重启,又要重新 mount。因此需要配置为自动 mount,修改/etc/fstab:

/dev/sda1 /media/backup ext4 defaults,noatime 0 0

其中的 noatime 是为了不更新最近访问时间,提高性能。在建立文件夹以后,所属用户和群组全部设置成和同步用 ssh 登录的用户一致,避免一些可能的权限的问题:

sudo chown pi:pi -R /media/backup/...

配置 Windows

配置 Windows 的主要目的是方便地同步照片到树莓派服务器。

配置同步工具

Windows 机是我的一部分媒体文件的数据源,因此需要经常从 Windows 机同步数据到树莓派服务器。

一种方法是使用 Cygwin + rsync:

安装 Cygwin,这是一个可以在 Windows 下使用常见 Linux 命令的工具。基本上,默认选项即可,但是 rsync 一定要安装:

安装完成以后,Windows 下的磁盘全部被列在/cygdrive 下面。

但是我研究到一半的时候,发现了一个更好用的工具——Acrosync

第一次可以压缩并使用 scp 来传输文件,因为这样效率会更高,但以后就要通过上面的工具来同步了。

值得一提的是,如果空间不够,可以使用 du 这样的命令来查看罪魁祸首,不过我使用的参数因为 Linux 版本的关系,和我以往熟悉的比起来有点不同:

sudo du -s * | sort -nr | head

配置 Mac

配置 Mac 的主要目的是方便地同步文档到树莓派服务器。

配置同步工具

Mac 下面同步工具用 rsync 就可以,不需要什么额外的工具。不过,Mac 自带的 rsync 对中文的显示有点问题,因此需要使用 brew 安装一下 rsync。

brew install rsync

修改 ~/.zshrc,添加:

alias sync-to-raspberry="rsync -ar --exclude '.DS_Store' --delete --force --progress ~/Desktop/doc pi@raspberry:~/Documents/doc/"

注意第一个 doc 路径后面的斜杠 “/” 不能省略,否则会把服务端的整个 xxx 文件拷贝到 Mac 的 doc 目录里面。另外,里面的主机名 raspberry,是因为我修改了/etc/hosts 文件。

大功告成

在树莓派机器上安装 Plex 完毕后,在 Windows 下运行 Acrosync,或者是在 Mac 下执行 sync-to-raspberry 就可以完成同步了,而在浏览器中访问 http://192.168.0.28:32400/web 就能看到 Plex 界面了。

之后,在各种终端上安装 Plex 应用,就可以很舒服地浏览照片了。

文章未经特殊标明皆为本人原创,未经许可不得用于任何商业用途,转载请保持完整性并注明来源链接 《四火的唠叨》

1,464 次阅读

2 thoughts on “使用树莓派和 Plex 架设照片和备份服务

Leave a Reply

Your email address will not be published.

back to top