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的正式版发布了ಥ_ಥ)

omv6fb.png


安装

首先去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配置:

symlink.png

然后在目录下执行 ./filebrowser -c config.json 调用创建好的json配置文件测试启动。浏览器打开 NAS/机器IP:端口号,使用帐密均为admin即可登入FileBrowser管理文件。

测试一下文件目录的改动,在SMB也能实时看到更改,反之亦然。成功运行!

fbscreenshot.png


后台运行

不过,还没有设定后台运行的方式,此时若关闭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文件管理器安装结束。如果你喜欢本篇文章,可以在下方点个赞,感谢支持!

评论
社区准则 博客 联系 反馈 状态
主题