前言

  一直想部署一套文件服务器,供队友之间相互传输文件。平时用微信发送文件真的太烦了,每发送或者接收一次都会有一个新的文件,造成重复文件太多了。文件服务器统一管理,自己需要什么文件再下载。

  前面也安装过,是想使用 ftp ,安装了 vsftpd,配置也都成功,服务也启动了,可是访问一直有问题,而且查了下,有些使用工具有些是通过浏览器。实际的效果也并不好。这令天又特意搜索了下文件服务器的部署问题,看到了 File Browser,通过官网部署了一套,其相比之下有以下优点:

  1、部署简单,配置文件、数据库(单文件数据库 Bolt DB)等都可一键配置;

  2、可视化操作,界面简洁、操作简单,适用人群广(前台小姐姐也可快速上手啦);

  3、可使用 shell;

  File Browser

一、安装配置

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的更多相关文章

  1. Docker+JMeter单机版+File Browser

    基于JMeter5.1.1+File Browser2.1.0  JMeter发起压测  File Browser作为文件服务器 一.目录结构: Dockerfile文件: FROM ubuntu:1 ...

  2. 安卓工作室 文件浏览器 android studio File browser

    安卓工作室 文件浏览器 android studio  File browser 作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱:313134555@qq.com E-mail: ...

  3. 理解ASP.NET Core - 文件服务器(File Server)

    注:本文隶属于<理解ASP.NET Core>系列文章,请查看置顶博客或点击此处查看全文目录 提供静态文件 静态文件默认存放在 Web根目录(Web Root) 中,路径为 项目根目录(C ...

  4. open File Browser in shell

    [maxosx] open /usr/include [ubuntu] 发现三个,如下: xdg-open xxxx.pdf gnome-open . nautilus . 喜欢把它alias一下 . ...

  5. File Browser文件资源服务器

    要是想一键启动的,这里有个封装版本的,上传到服务器,执行sh命令就能直接启动,也可以修改配置 链接:https://pan.baidu.com/s/1oVP5DrEQSV9hQmnF2bzM9A提取码 ...

  6. Android:让WebView支持<input type=”file”…>元素

    最近在做一个活动页面:用户上传一张图片进行缩放.旋转后点击下一步填写内容后生成图片! 做好后经过各种测试是没有问题的,基本没有什么明显BUG,流程都能走通,但是嵌入到APP后,问题就来了! 在IOS上 ...

  7. android webview type=file文件上传,安卓端代码

    http://stackoverflow.com/questions/5907369/file-upload-in-webview http://blog.csdn.net/longlingli/ar ...

  8. WebView使用input file控件打开相册上传图片

    使用 WebView 直接用 控件选择相册图片 package com.moguzhuan.android.zhuan; import android.annotation.TargetApi; im ...

  9. Android WebView 不支持 H5 input type="file" 解决方法

    最近因为赶项目进度,因此将本来要用原生控件实现的界面,自己做了H5并嵌入webview中.发现点击H5中 标签 不能打开android资源管理器. 通过网络搜索发现是因为 android webvie ...

  10. 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 ...

随机推荐

  1. getSessionFactory().openSession()导致druid连接池中的连接都占用满但无法回收

    该问题产生的现象 页面刷新几次后,就卡住,线上就得需要重新部署(还好是测试环境,不是真正生产环境) 过程及原因 查看日志线程池满了 Caused by: org.springframework.jdb ...

  2. Alertmanager高可用

    为了提升Promthues的服务可用性,通常用户会部署两个或者两个以上的Promthus Server,它们具有完全相同的配置包括Job配置,以及告警配置等.当某一个Prometheus Server ...

  3. 3.在 Kubernetes 上安装 Gitlab CI Runner

    结合文章:1. 在 Kubernetes 上安装 Gitlab ,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13852854.html 总结: 结合开头的文章 ...

  4. Java开发学习(三十六)----SpringBoot三种配置文件解析

    一. 配置文件格式 我们现在启动服务器默认的端口号是 8080,访问路径可以书写为 http://localhost:8080/books/1 在线上环境我们还是希望将端口号改为 80,这样在访问的时 ...

  5. 【Spring boot】整合tomcat底层原理

    本文结论 源码基于spring boot2.6.6 项目的pom.xml中存在spring-boot-starter-web的时候,在项目启动时候就会自动启动一个Tomcat. 自动配置类Servle ...

  6. Azure Kubernetes(AKS)部署及查看应用资源

    简介 上一篇文章讲解了如何使用Azure DevOps持续部署应用到Azure Kubernetes上.但是部署是否成功?会不会遇到什么问题?项目运行中是否会出现问题?我们该怎么样查看这些问题,并且对 ...

  7. mybatis框架图

  8. .NET中的拦截器filter的使用

    拦截器的使用 使用场景分析 我们先想像一个场景,就是程序员开发软件,他是怎么工作的呢?我们都知道,普通的程序员只需要根据需求文档开发相应的功能即可,他不用和客户谈论软件需求,不用理会软件卖多少钱,他要 ...

  9. 一次 Java log4j2 漏洞导致的生产问题

    一.问题 近期生产在提交了微信小程序审核后(后面会讲到),总会出现一些生产告警,而且持续时间较长.我们查看一些工具和系统相关的,发现把我们的 gateway 差不多打死了. 有一些现象. 网关有很多接 ...

  10. 时序数据库TDengine 详细安装+集成流程+问题解决

    官方文档:https://docs.taosdata.com/get-started/package/ 点击进入 产品简介 TDengine 是一款高性能.分布式.支持 SQL 的时序数据库 (Dat ...