最后更新时间:2019年1月16日

大家如果想随时随地查看和修改文件,一般会选择将文件保存至网盘,很方便,而且空间还比较大。但是由于国内的网盘环境现在比较差,再加上我们不可能把所有文件都搬上网盘,那就需要另一种解决方案了。

这就是让我们可以直接访问我们家里或者公司里的设备,直接对设备上的文件进行操作。如果在以前,这种方案并不是人人都可以做到的,因为如果你想直接访问设备,就需要设备有公网 IP 或者做内网穿透,否则是无法随时随地访问设备的。

但是随着 IPv6 的普及,我们已经可能做到每台设备都有一个公网 IPv6 地址,虽然它不是固定的,不过你只需要一个域名,配置下 DDNS ,就可以随时随地的访问你的设备了。

这对于家里有 NAS 或者是有个小型存储设备的人来说,就不需要再依靠网盘来随时随地的访问文件了。

关于远程访问文件管理方面,之前小山写过一篇关于如何在 OpenWrt 使用可道云的文章,不过使用可道云是因为 OpenWrt 的环境导致的。如果你在其他设备上使用,也可以使用 NextCloud 等文件管理系统。

不过由于这些都是单独的 PHP 系统,配置起来相对麻烦,不适合小白操作,今天小山给大家带来一个简单易用的文件管理程序:File Browser

简介

File Browser 是一个基于 Web 的文件管理器。它可以使你随时随地的对设备的文件进行基本的管理操作,如:创建、删除、移动、复制等。它除了可以让你进行文件管理之外,还有一些其他的功能。它支持多个用户的管理,而且每个用户可以拥有自己可以访问的文件和权限。它还支持文件分享,就行网盘那样,你可以通过它来向你的朋友分享文件。你还可以用它来执行一些 Linux 命令,比如你想要在当前目录下克隆一个代码库,就可以用它来执行git等命令。

安装及配置

File Browser 适用于全平台,任何操作系统都可以安装它,当然,我会以 Linux 为主。

File Browser 在 Linux 的安装非常简单,只需要一条命令就可以搞定:curl -fsSL https://filebrowser.xyz/get.sh | bash,你也可以手动下载可执行文件进行安装:https://github.com/filebrowser/filebrowser/releases/latest

当安装好之后,你并不能立即使用它,需要修改一些配置。

以下设置方法只适用 File Browser 2.0 +

创建配置数据库:filebrowser -d /etc/filebrowser.db config init

设置监听地址:filebrowser -d /etc/filebrowser.db config set --address 0.0.0.0

设置监听端口:filebrowser -d /etc/filebrowser.db config set --port 8088

设置语言环境:filebrowser -d /etc/filebrowser.db config set --locale zh-cn

设置日志位置:filebrowser -d /etc/filebrowser.db config set --log /var/log/filebrowser.log

添加一个用户:filebrowser -d /etc/filebrowser.db users add root password --perm.admin,其中的rootpassword分别是用户名和密码,根据自己的需求更改。

有关更多配置的选项,可以参考官方文档:https://docs.filebrowser.xyz/

配置修改好以后,就可以启动 File Browser 了,使用-d参数指定配置数据库路径。示例:filebrowser -d /etc/filebrowser.db

启动成功就可以使用浏览器访问 File Browser 了,在浏览器输入 IP:端口,示例:http://192.168.1.1:8088

然后会看到 File Browser 的登陆界面,用刚刚创建的用户登陆。

登陆以后,默认会看到 File Browser 运行目录下的文件,需要更改一下当前用户的文件夹位置。

点击 [设置] → [用户设置] → 编辑用户 admin → 将目录范围改为你想要显示的文件夹,例如:/mnt → 修改完成后点击最下方的保存即可。

这样,File Browser 的基本安装和配置就搞定了。

常见问题

后台运行

File Browser 默认是前台运行,如何让它后台运行呢?

第一种是 nohup 大法:

运行:nohup filebrowser -d /etc/filebrowser.db >/dev/null 2>&1 &

停止运行:kill -9 $(pidof filebrowser)

开机启动:sed -i '/exit 0/i\nohup filebrowser -d \/etc\/filebrowser.db >\/dev\/null 2>&1 &' /etc/rc.local

取消开机启动:sed -i '/nohup filebrowser -d \/etc\/filebrowser.db >\/dev\/null 2>&1 &/d' /etc/rc.local

第二种是 systemd 大法:

首先下载 File Browser 的 service 文件:curl https://cdn.mivm.cn/www.mivm.cn/archives/filebrowser/filebrowser.service -o /lib/systemd/system/filebrowser.service

如果你的运行命令不是/usr/local/bin/filebrowser -d /etc/filebrowser.db,需要对 service 文件进行修改,将文件的 ExecStart 改为你的运行命令,更改完成后需要输入systemctl daemon-reload

运行:systemctl start filebrowser.service

停止运行:systemctl stop filebrowser.service

开机启动:systemctl enable filebrowser.service

取消开机启动:systemctl disable filebrowser.service

查看运行状态:systemctl status filebrowser.service

我推荐使用 systemd 的方法来后台运行,当然,前提是你所使用的操作系统支持 systemd。

HTTPS

File Browser 2.0 起开始内建 HTTPS 支持,只需要配置 SSL 证书即可。

配置 SSL:filebrowser -d /etc/filebrowser.db config set --cert example.com.crt --key example.com.key,其中example.com.crtexample.com.key分别是 SSL 证书和密钥路径,根据自身情况进行更改。配置完 SSL 后,只可以使用 HTTPS 访问,不可以使用 HTTP。

取消 SSL:filebrowser -d /etc/filebrowser.db config set --cert "" --key ""

当然,你也可以使用 Nginx 等 Web 服务器对 File Browser 进行反向代理,以达到 HTTPS 访问的目的。

还有就是使用 Caddy,这是一个开源、支持 HTTP/2 的 Web 服务器,它的一个显著特点就是默认启用 HTTPS 访问,会自己申请 SSL 证书,同时支持大量的插件,File Browser 就可以作为其插件运行。

外网访问

每个人的情况不同,外网访问的配置方法也不一样。

如果你有公网 IP 地址,不管是 v4 还是 v6,在防火墙上打开相应的端口以及设置好端口转发即可。

如果你没有公网IP地址,那么你想要外网访问可能就需要内网穿透了,可以参考我之前写的文章:《OpenWrt 使用 frp 实现内网穿透


好了,以上就是 File Browser 在 Linux 系统上安装以及使用的方法,有关于更多的问题,欢迎加入 QQ 群与我探讨。

File Browser 安装及使用的更多相关文章

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

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

  2. Docker+JMeter单机版+File Browser

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

  3. 文件服务器 — File Browser

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

  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. vmware tools 的安装(Read-only file system 的解决)

    安装 vmware tools 之后,才能将 vmware 创建的虚拟机以全屏的形式显示. 下载:在 vmware 软件的菜单栏点击[虚拟机],在[虚拟机]的主菜单中选择[安装 VMware Tool ...

  7. python安装报错error writing to file:......

    今天换了win10 64电脑,安装python3.6.8时,报错:error writing to file:...... 安装时,右键--以管理员身份运行,安装成功.

  8. 体温数据上传程序开发+获取时间的三种方法+DB Browser下载及安装

    今天开始了体温上传程序的开发 今日所学: 获取时间 (21条消息) (转)安卓获取时间的三种方法_sharpeha的博客-CSDN博客_安卓获取时间 DB Browser安装教程 (20条消息) sq ...

  9. 安装Eclipse及相关Plugin

    Eclipse: 此处选用基于Eclipse的开发工具:STS 官方网站:https://spring.io/tools/sts Plugins: Open Explorer文件浏览插件it open ...

  10. 安装Hue后的一些功能的问题解决干货总结(博主推荐)

    不多说,直接上干货! 我的集群机器情况是 bigdatamaster(192.168.80.10).bigdataslave1(192.168.80.11)和bigdataslave2(192.168 ...

随机推荐

  1. Greenplum Jdbc 调用 SETOF refcursor

    最近公司需要用Greenplum,在调用 jdbc的时候遇到了一些问题.由于我们前提的业务都是使用 sqlserver,sqlserver的 procedure 在前端展示做数据源的时候才用的非常多, ...

  2. 试题B:小球反弹(第十五届蓝桥杯省赛B组c/c++组)

    试题B:小球反弹 我在刷博客的时候看见有人分享了蓝桥杯的题目,我想起了我之前大学打蓝桥杯刷题的时光,还是很怀念当时打比赛的氛围,关于这个小球反弹的题目,我感觉很有意思,我一开始也是走了好多弯路,然后去 ...

  3. git合并某分支上的单次提交(cherry-pick)

    1. 查找提交对应的hash值 git log 查看 d 查看下一页,q退出 vscode通过gitlens插件查看 2.合并提交 git cherry-pick hahs值

  4. EasyNLP玩转文本摘要(新闻标题)生成

    简介: 本⽂将提供关于PEGASUS的技术解读,以及如何在EasyNLP框架中使⽤与PEGASUS相关的文本摘要(新闻标题)生成模型. 作者:王明.黄俊 导读 文本生成是自然语言处理领域的一个重要研究 ...

  5. Ingress Nginx 接连披露高危安全漏洞,是否有更好的选择?

    简介: 在<K8s 网关选型初判:Nginx 还是 Envoy>一文中,我们已经给出了这个新的选项:MSE 云原生网关.本文继续展开分析,为何 MSE 云原生网关有更好的安全性保障. 作者 ...

  6. 项目实战总结以及接入U-APM

    ​简介: 导致 App 性能低下的原因有很多,除去设备硬件和软件的外部因素,其中大部分是开发者错误地使用线.系统函数.编程范式.数据结构等导致的.即便是较有经验的程序员,也很难在开发时就能避免所有导致 ...

  7. Java对象转换方案分析与mapstruct实践

    简介: 随着系统模块分层不断细化,在Java日常开发中不可避免地涉及到各种对象的转换,如:DO.DTO.VO等等,编写映射转换代码是一个繁琐重复且还易错的工作,一个好的工具辅助,减轻了工作量.提升开发 ...

  8. 时序数据库永远的难关 — 时间线膨胀(高基数 Cardinality)问题的解决方案

    ​简介: 本文主要讨论 influxdb 在遇到写入的数据出现高基数 Cardinality 问题时,一些可行的解决方案. 作者 | 徐建伟 (竹影) 前序 随着移动端发展走向饱和,现在整个 IT 行 ...

  9. 如何基于Dataphin实现敏感数据保护

    ​简介: 在企业的发展过程中,如果不重视敏感数据的保护,和数据安全体系的建设,那么一旦发生了敏感数据泄漏事件,轻则企业口碑受损,业务受影响:重则会直接触法律,受到主管部门的处罚和制裁.本文将以一个最常 ...

  10. [Py] Jupyter 写入和执行 python 文件

    以 %%writefile request.py 开头. 下面写 python 代码,然后 shift + enter 键,可以把 python 代码写入开头指定的文件中,没有则自动创建. 以 %ru ...