文件服务器 — File Browser
前言
一直想部署一套文件服务器,供队友之间相互传输文件。平时用微信发送文件真的太烦了,每发送或者接收一次都会有一个新的文件,造成重复文件太多了。文件服务器统一管理,自己需要什么文件再下载。
前面的思路一直是想使用 ftp ,安装了 vsftpd,配置也都成功,服务也启动了,可是访问一直有问题,而且查了下,有些使用工具有些是通过浏览器。实际的效果也并不好。这令天又特意搜索了下文件服务器的部署问题,看到了 File Browser,通过官网部署了一套,其相比之下有以下优点:
1、部署简单,配置文件、数据库(单文件数据库 Bolt DB)等都可一键配置;
2、可视化操作,界面简洁、操作简单,适用人群广(前台小姐姐也可快速上手啦);
3、可使用 shell;
一、安装配置
1、一键安装
官方给的有一键安装命令行:
curl -fsSL https://raw.githubusercontent.com/filebrowser/get/master/get.sh | bash filebrowser -r /path/to/your/files
如果自己的网络不好的话,可以自行到官网下载压缩包文件。
2、下载解压
到 GitHub 上面下载:下载地址,根据自己系统等信息下载对应版本。
下载到对应目录后,解压即可,解压后只有一个二进制的文件 filebrowser,可以改名,也可以不改名。后面有些执行需要用到这个,不改名直接用 filebrowser。
3、配置
虽然官方给的说明是,解压后就可以直接使用。这里还是介绍下一些基本配置。(下面的文件路径根据自己的进行修改,以及一些配置如:端口、用户名密码等)
创建配置文件,并编辑内容:
# 创建日志文件、配置文件 touch /home/WebFile/WebFile.log touch /home/WebFile/WebFile.json # 编辑配置文件,下面代码直接执行即可 cat > /home/WebFile/WebFile.json <<EOF { "address": "0.0.0.0", "port": 10001, "database": "/home/WebFile/WebFile.db", "log": "/home/WebFile/WebFile.log", "locale": "zh-cn", "username": "ADMIN", "password": "ADMIN@2022", "root": "/", "scope": "/" } EOF
数据库初始化和配置
# 创建数据库,并配置,每执行一句,会打印出数据库配置信息,对配置的信息会更新 /home/WebFile/filebrowser -d /home/WebFile/WebFile.db config init # 设置地址 /home/WebFile/filebrowser -d /home/WebFile/WebFile.db config set --address 0.0.0.0 # 设置端口 /home/WebFile/filebrowser -d /home/WebFile/WebFile.db config set --port 10001 # 设置语言 /home/WebFile/filebrowser -d /home/WebFile/WebFile.db config set --locale zh-cn # 设置日志文件路径 /home/WebFile/filebrowser -d /home/WebFile/WebFile.db config set --log /home/WebFile/WebFile.log # 添加用户,并赋管理员权限,设置可查看范围 /home/WebFile/filebrowser -d /home/WebFile/WebFile.db users add zksy zksy@2022 --perm.admin --scope /
到这里全部的配置都完成了,启动服务后就可以看到可视化界面。
4、创新系统管理服务
使用命令行可以直接启动服务(如下命令行)。
filebrowser -c WebFile.json
但是每次启动挺麻烦,下面就把WebFile添加到系统服务,并设置开机自启动。
# 创建 Systemd 系统管理服务,创建服务文件 cat > /etc/systemd/system/WebFile.service <<EOF [Unit] Description=WebFile Documentation=https://filebrowser.org/ After=network.target [Service] ExecStart=/home/WebFile/filebrowser -c /home/WebFile/WebFile.json [Install] WantedBy=multi-user.target EOF
有了系统配置文件,第一步要做的就是下面几部:
# 有了新的服务文件,需要重启 Systemd 服务 systemctl daemon-reload # 设置开机自启动 systemctl enable WebFile
后面就是对服务的一些基本操作:启动、状态、停止等
# 启动WebFile服务 systemctl start WebFile # 查看WebFile服务状态 systemctl status WebFile # 停止WebFile服务 systemctl stop WebFile # 取消WebFile服务开机自启动 systemctl disable WebFile
二、使用
启动服务后,在浏览器打开 File Browser 的界面:
界面比较简单,左侧菜单,右上角是工具栏:
“设置”界面可以对用户、目录等进行设置。下面是管理员的设置界面,操作都比较简单。