文件服务器 — 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
但是每次启动挺麻烦,下面就从添加到系统服务,并设置开机自启动。
# 创建 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 的界面:

界面比较简单,左侧菜单,右上角是工具栏:
“设置”界面可以对用户、目录等进行设置。下面是管理员的设置界面,操作都比较简单。

文件服务器 — File Browser的更多相关文章
- Docker+JMeter单机版+File Browser
基于JMeter5.1.1+File Browser2.1.0 JMeter发起压测 File Browser作为文件服务器 一.目录结构: Dockerfile文件: FROM ubuntu:1 ...
- 安卓工作室 文件浏览器 android studio File browser
安卓工作室 文件浏览器 android studio File browser 作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱:313134555@qq.com E-mail: ...
- 理解ASP.NET Core - 文件服务器(File Server)
注:本文隶属于<理解ASP.NET Core>系列文章,请查看置顶博客或点击此处查看全文目录 提供静态文件 静态文件默认存放在 Web根目录(Web Root) 中,路径为 项目根目录(C ...
- open File Browser in shell
[maxosx] open /usr/include [ubuntu] 发现三个,如下: xdg-open xxxx.pdf gnome-open . nautilus . 喜欢把它alias一下 . ...
- File Browser文件资源服务器
要是想一键启动的,这里有个封装版本的,上传到服务器,执行sh命令就能直接启动,也可以修改配置 链接:https://pan.baidu.com/s/1oVP5DrEQSV9hQmnF2bzM9A提取码 ...
- Android:让WebView支持<input type=”file”…>元素
最近在做一个活动页面:用户上传一张图片进行缩放.旋转后点击下一步填写内容后生成图片! 做好后经过各种测试是没有问题的,基本没有什么明显BUG,流程都能走通,但是嵌入到APP后,问题就来了! 在IOS上 ...
- android webview type=file文件上传,安卓端代码
http://stackoverflow.com/questions/5907369/file-upload-in-webview http://blog.csdn.net/longlingli/ar ...
- WebView使用input file控件打开相册上传图片
使用 WebView 直接用 控件选择相册图片 package com.moguzhuan.android.zhuan; import android.annotation.TargetApi; im ...
- Android WebView 不支持 H5 input type="file" 解决方法
最近因为赶项目进度,因此将本来要用原生控件实现的界面,自己做了H5并嵌入webview中.发现点击H5中 标签 不能打开android资源管理器. 通过网络搜索发现是因为 android webvie ...
- VBScript Scripting Techniques: File Open Dialog http://www.robvanderwoude.com/vbstech_ui_fileopen.php
I accept cookies This website uses cookies to ensure you get the best experience on our website More ...
随机推荐
- js中的对象和数组的创建
<!DOCTYPE html><html><head> <title>获取控制</title> <meta charset=" ...
- C#非托管泄漏中HEAP_ENTRY的Size对不上是怎么回事?
一:背景 1. 讲故事 前段时间有位朋友在分析他的非托管泄漏时,发现NT堆的_HEAP_ENTRY 的 Size 和 !heap 命令中的 Size 对不上,来咨询是怎么回事? 比如下面这段输出: 0 ...
- 【学习笔记】循环神经网络(RNN)
前言 多方寻找视频于博客.学习笔记,依然不能完全熟悉RNN,因此决定还是回到书本(<神经网络与深度学习>第六章),一点点把啃下来,因为这一章对于整个NLP学习十分重要,我想打好基础. 当然 ...
- Elasticsearch:使用 IP 过滤器限制连接
文章转载自:https://elasticstack.blog.csdn.net/article/details/107154165
- Kubernetes DevOps: Jenkins
提到基于 Kubernete 的CI/CD,可以使用的工具有很多,比如 Jenkins.Gitlab CI 以及新兴的 drone 之类的,我们这里会使用大家最为熟悉的 Jenkins 来做 CI/C ...
- Kubeadm搭建高可用(k8s)Kubernetes v1.24.0集群
文章转载自:https://i4t.com/5451.html 背景 Kubernetes 1.24新特性 从kubelet中移除dockershim,自1.20版本被弃用之后,dockershim组 ...
- rabbitmq的内存节点和磁盘节点
RabbitMQ集群里有内存节点与磁盘节点之分. 所谓内存节点,就是将元数据(metadata)都放在内存里,磁盘节点就是放在磁盘上.(内存节点将全部的队列,交换器,绑定关系,用户,权限,和vhost ...
- Elasticsearch官方文档离线访问实操指南
文章转载自:https://mp.weixin.qq.com/s/Cn9ddkj-cne5pKtfOgNPbg 延申一下,不仅能下载Elasticsearch官方文档,还能下载其他软件的官方文档,详看 ...
- 在 Linux 上安装服务器管理软件 Cockpit
Cockpit 是一个自由开源的服务器管理软件,它使得我们可以通过它好看的 web 前端界面轻松地管理我们的 GNU/Linux 服务器.Cockpit 使得 linux 系统管理员.系统维护员和开发 ...
- 如何使用netlify部署vue应用程序
什么是Netlify? Netlify是一个现代网站自动化系统,其JAM架构代表了现代网站的发展趋势.所谓JAM,就是指基于客户端JavaScript.可重用API和预构建Markup标记语言的三者结 ...