NAS折腾日记之 FileBrowser 安装搭建
这几天给OMV的NAS加了一块HGST的500GB硬盘,由于之前是在一块128GB的NVME SSD上分两个区使用的,系统分区只分了19GB大小,也快满了,只剩3个G,因此准备转移文件重装系统。
但是跨盘转移文件的时候傻眼了,由于以前一直用的是Nextcloud+SMB挂载管理文件,直接转移的话效率会非常低;后来想到之前用Casa OS的Docker玩过一次FileBrowser,但是忘了当时配置的密码。(日后会发布一些Casa OS的相关介绍分享)自己用Docker尝试重新搭建了一下,发现文件夹不能实时刷新,后用手动安装的方式完美使用。
FileBrowser 是一个用Go编写的轻量级Web文件管理器,使用Material Design界面设计。和Hugo一样,本体只有一个二进制文件,本身配置也比较简单。经过尝试,建议还是部署在宿主环境下更可靠,实测也可以实时监控文件夹目录更改。
本文将基于手动下载安装的方式,使用两块硬盘作为演示,介绍FileBrowser的安装搭建过程。适用于绝大多数系统,其他平台的机器安装过程大同小异。
题外话:OMV6的系统内置的插件中心已经增加了FileBrowser插件,而且是开箱即用,不需要进入命令行配置😅 即使想同时挂载多个硬盘,可以建立一个专用的总挂载目录,并使用symlink插件建立磁盘目录的软链接,再指向这个专用总挂载目录实现同时挂载的目的。(可惜我现在是真的等不到OMV6的正式版发布了ಥ_ಥ)
安装
首先去FileBrowser的GitHub Release下载最新的Latest安装包,包含 i386, amd64, arm64/v7/v6/v5 多种处理器体系架构,支持 Linux/Windows/macOS(Darwin)/FreeBSD 系统平台。根据自己机器的实际情况选择下载。
FileBrowser 下载地址: https://github.com/filebrowser/filebrowser/releases/latest
用SSH登入到NAS机器,新建一个目录,存放FileBrowser的本体、配置文件,可根据自己的喜好选择(使用 /etc, /var 均可,但需记住位置,配置好权限),我这里选择的是在根目录新建 /AppData/filebrowser
目录一同存放。
mkdir /AppData/filebrowser
cd /AppData/filebrowser
用wget工具下载最新的FileBrowser安装包,并解压(本文使用的版本是 v2.21.1-amd64 )(如有需要可自行删除README之类的信息文件)
wget https://github.com/filebrowser/filebrowser/releases/download/v2.21.1/linux-amd64-filebrowser.tar.gz
tar -zxvf linux-amd64-filebrowser.tar.gz
chmod +x filebrowser
此时解压完成后,使用 ./filebrowser
命令运行二进制文件即可以默认配置运行了。默认监听的地址与端口是 127.0.0.1:8080
。但很显然,这样只能在本机访问,默认的目录也是指定的,因此需要编写简单的参数/配置文件。
我这里编写了一个config.json的配置文件 nano config.json
,内容如下:
{
"address":"0.0.0.0",
"port":8848,
"database":"/AppData/filebrowser/filebrowser.db",
"log":"/AppData/filebrowser/log/filebrowser.log",
"root":"/disk",
"username":"admin"
}
这里我将监听地址和端口设置为 0.0.0.0:8848
,可以从任何地方访问,将数据库和log的文件存放在之前建立的 /AppData/filebrowser
目录下,设定文件目录为 使用symlink创建了磁盘目录软链接的 /disk
专用总挂载目录(参考开头的题外话),并保持默认的admin用户名。
此处附上我在OMV上创建的symlink配置:
然后在目录下执行 ./filebrowser -c config.json
调用创建好的json配置文件测试启动。浏览器打开 NAS/机器IP:端口号,使用帐密均为admin即可登入FileBrowser管理文件。
测试一下文件目录的改动,在SMB也能实时看到更改,反之亦然。成功运行!
后台运行
不过,还没有设定后台运行的方式,此时若关闭SSH/终端会话,FileBrowser也会随之停止,因此需要设定后台运行的配置。
nohup ./filebrowser -c config.json &
使用 nohup 指令在后台运行是最简单的方式,但如果想停止运行FileBrowser,需要记住终端显示的进程号,然后使用kill命令终止进程。可是,久而久之我们肯定会忘记这个进程号。不过,参考了 这篇教程 ,发现FileBrowser还是可以通过systemctl控制的。
先编写一个service配置文件:
nano /etc/systemd/system/filebrowser.service
内容如下:
[Unit]
Description=File Browser
After=network.target
[Service]
ExecStart=/AppData/filebrowser/filebrowser -c /AppData/filebrowser/config.json
[Install]
WantedBy=multi-user.target
然后重启systemctl: systemctl daemon-reload
之后就可以使用常用的systemctl命令(如systemctl start filebrowser
)控制FileBrowser的启动了,使用 systemctl enable filebrowser
即可设定开机自启。
至此,在Linux上的FileBrowser文件管理器安装结束。如果你喜欢本篇文章,可以在下方点个赞,感谢支持!