大家好,我是Rokie,极客研究所的成员之一,今天极客研究所带来的分享主题是:如何在私有的NAS上部署一套自己的电子书库。
0x01.前言
本文开始前,首先感谢以下项目,可以让我比较轻松的实现了一套适合自己的NAS定制化方案:
0x02.正文
1) nas配置与网络拓扑
ok,今天的分享正式开始,首先我想介绍一下我目前的NAS组成,因为需要经常出差,而我本身的日常使用电脑是一台MacBook Pro(M1 Pro)这台ARM架构的笔记本。虽然现在很多软件对ARM的适配都不错,但是涉及到一些比较专业的软件可能需要用到x86电脑(虽然现在的pd和qemu、wine之类的软件可以让你在ARM电脑上运行x86架构的应用),但是本着自己Diy的思想。我当时购入了一台 96G+2T+AMD Ryzen 9 6900HX
这样配置的一台迷你小主机。于是我装了pve实现ALL IN ONE的方案。
我家里的网络拓扑情况大概如下:
其中路由A是整栋住宅的出口路由器,具备公网v4,路由器M是本楼层通过POE连接的无线路由器,M路由器的LAN连接着路由器W的WAN口,其中路由器M的网段是192.168.24.0/24,路由器W的网络划分为10.38.17.1/24。
先放一张fastfetch的图:
因为本身我想有更高的DIY方案,所以我安装了Arch Linux,而不是使用黑群晖等方案。首先我的tailscale已经建好了,并且具备derp节点,不过一般我可以直连,所以带宽和延迟都很可观,如下图:
可以看到带宽是比较不错的。
2)安装calibre-web
首先我们看到calibre-web的官网:
官网的安装教程较为详细:
如果你也是Arch Linux,那么首先请通过aur安装 python3.9 ,系统自带的是python3.13,经测试在编译依赖时安装失败,在安装python时,需要确保系统具备gcc与make环境。
python3 -m venv calibre-web-env && cd calibre-web-env
source ./bin/activate
这样就可以激活我们为calibre创建的虚拟环境(防止污染宿主机的python环境),安装成功后,我们可以在tmux中启动cps:
如果没有tmux,可以先安装一个:
sudo pacman -S tmux
tmux
此时同样需要重复上面的激活虚拟环境步骤,也可以一开始就在tmux的session中进行安装。这样的好处是不需要重复激活虚拟环境。
此时在终端中输入:
cps
若无报错,则成功启动了我们的calibre-web,此时访问你的http://ip:8083
端口,应该可以成功访问到calibre-web的界面:
3)calibre-web配置
在安装成功后,我们需要进行一些基础的配置来确保可以calibre-web可以正常使用。
首先,我们需要做的配置是(上图中具备操作流程图):
-
修改默认的用户名密码(建议为强密码)
-
修改默认的语言为中文
-
设置calibre-web的数据库文件(这个是必须要配置的),数据库配置在
管理权限
-编辑Calibre数据库配置
中进行修改,db文件通过下面命令进行下载wget https://github.com/janeczku/calibre-web/raw/master/library/metadata.db
在下载后,metadata.db文件会在当前目录,我们最好是新建一个单独存放db文件的目录:
mkdir -P ~/ebook && mv metadata.db ~/ebook
执行成功后,Calibre-web的数据库路径我们找到ebook这个文件夹,选择它
-
开启上传书籍权限:点击页面右上角
管理权限
–编辑基本配置
–功能配置
–启用上传
–保存
,此时我们具备了上传电子书的权限
开启后,我们点击左侧的书籍页面,就可以看到上传书籍的按钮。
我这里选择了经典的ProGit
书籍做了下载与上传,上传成功后如图:(搜刮元数据有时候可能需要给calibre配置一下Proxy)
此时,可以成功的进行电子书籍的阅读