一劳永逸搭建私有音乐库:OPenlist + WebDAV 方案
背景:从低价薅羊毛到存储困境
事情要追溯到几年前,那时网易云音乐的 VIP 价格低得惊人,差不多 20 块钱就能买一年。我顺手一口气买了将近十年的会员。如今 VIP 即将到期,而续费价格已经贵了很多。最理性的选择,其实就是放弃网易云这类流媒体软件,把歌曲都下载到本地。
但我的情况有点特殊:歌曲数量多、文件体积大,整个曲库加起来超过 500 GB,放在本地实在不现实。剩下的选择似乎只有网盘,可网盘的缺点是管理不够方便。因为需求比较冷门,全网也找不到现成的完美方案。琢磨了很久之后,我终于摸索出一个一劳永逸的办法。
解决方案:OPenlist + WebDAV 私有音乐库
为什么能一劳永逸?
用 openlist 配合 WebDAV,搭建并管理属于自己的私有音乐库。从此再也不用担心歌单里的曲目莫名消失,歌曲文件真正属于自己。同时还能省下大量本地存储空间。
举个例子,假如一台设备上有 30 GB 的本地音乐,当你拥有多台设备时,就需要 30 GB × 设备数量 的总存储,跨设备管理也很麻烦,每台机器都保留一份,造成严重的存储浪费。而用私有音乐库,可以集中存放、多端访问,彻底解决这些问题。
详细搭建步骤
整个过程中,我尽量使用开源程序,保证每一步都是可替换的。这样一来,任何环节出了问题,都有其他方案可以代替,真正实现“一劳永逸”。此外,方案必须能承受大批量文件管理。我曾经试过不少播放器,有些面对大量文件直接“崩”了——比如 WebDAV 里有 2000 首歌,挂载后无论如何都只能读取到 1000 多首,这种情况绝对不行。
步骤一:服务器准备与 OPenlist 部署
首先需要一台 1 核 1 G 的 Linux 服务器,可以是带公网 IP 的云服务器,也可以是家庭内网的机器(通过内网穿透实现外网访问)。
在这台服务器上,可以直接安装 Docker,或者先安装宝塔面板,再通过宝塔安装可视化的 Docker 管理工具。部署方式归一后,在 Docker 中安装 openlist。
进入 openlist,挂载你使用的网盘,并开启 WebDAV 功能。至此,基础环境就搭建完成了。
步骤二:音乐文件准备与上传
下载你所需要的音乐。如果歌曲是平台的会员加密格式,需要先对其进行解密,转为通用音频格式。
将处理好的音乐文件上传到 WebDAV 对应的网盘(直接上传至网盘即可,openlist 会自动同步)。
步骤三:选择并挂载支持 WebDAV 的播放器
挑选一款支持 WebDAV 挂载的音乐播放器,最好具备多端支持(如手机、电脑都能用),这样更方便日常管理。
一定要留意播放器对大量文件的支持能力,避免出现前文提到的只能加载部分歌曲的问题。
补充一下我遇到的问题
1.支持webdav的并且好用的播放器不太好找,实际上我找了有一年多,如果可以的话最好是UI好看代码开源支持多端支持大批量文件的,满足这些条件的到现在也没有
2.歌曲的解锁,无论是多么简单的事情只要在大量面前都会变得非常困难,就比如处理100多200多的歌曲并不算难,但是处理3000多首就会变得很困难,事实确实如此,3000多首歌曲里有一首处理失败了,原因是下载个文件损坏了,我找了很久并且用二分法才锁定到的,而且后续更是发现只有5分之1的歌曲处理成功,很多我以为是成功了结果全是0kb的空文件,这是因为我是用的解锁工具处理的文件一旦超过300个就会出现这样,最后我是每200一批处理的(其实300一批也会出现问题)最主要的是解锁这些歌曲也是需要时间的全部处理一遍大概需要3个小时而且硬盘连续百分之百很伤硬盘,出问题了在处理一次又要花费几个小时确认问题,然后锁定问题,最后再解决,光处理这些就花了一天多,看似简单的事情但是很花时间。
3.歌曲的上传,我家宽带的上传只有5-7M,350G真是上传了很久,上传了三天,三天是因为我上传了两份分在不同的网盘作为备份
因为花费了我很多时间 我不打算公开的问题