苦行僧

苦行僧

Chfs 搭建个人文件服务器

37
2024-10-23

参考网站:https://word.plfish.top/index.php/archives/24/

1. Chfs简介

CuteHttpFileServer/chfs是一个免费的、HTTP协议的文件共享服务器,使用浏览器可以快速访问。它具有以下特点:

  • 单个文件,核心功能无需其他文件
  • 跨平台运行,支持主流平台:Windows,Linux和Mac
  • 界面简洁,简单易用
  • 支持扫码下载和手机端访问,手机与电脑之间共享文件非常方便
  • 支持账户权限控制和地址过滤
  • 支持快速分享文字片段
  • 支持webdav协议

与其他常用文件共享方式(如FTP,飞秋,网盘,自己建站)相比,具有使用简单,适用场景更多的优点,在个人使用以及共享给他人的场景中非常方便快捷。

2. 相关链接

关于下载哪个版本,大家可以参考解释进行选择:

  1. inux-386: 这是为32位x86架构处理器准备的版本。”386”代表了Intel 80386,这是Intel第一个32位微处理器的型号,现在通常指32位x86架构。
  2. linux-amd64: 适用于64位的x86架构处理器,也就是现在常见的大多数个人电脑和服务器所使用的处理器,AMD64是AMD推出的64位计算架构,也被称为x86-64。
  3. linux-arm: 适用于ARM架构的32位处理器。ARM架构处理器广泛用于嵌入式系统和智能手机中。
  4. linux-arm64: 也称为AArch64,适用于ARM架构的64位处理器。这种架构处理器也被广泛用于高端智能手机、平板电脑、服务器和新一代的个人电脑中。
  5. linux-mips: 针对MIPS架构的处理器。MIPS是一种较老的处理器架构,通常用于嵌入式系统和旧式的个人电脑。
  6. linux-mips-softfloat: 这个版本是为不具有硬件浮点运算能力的MIPS处理器准备的,所以它通过软件来模拟浮点运算。
  7. linux-mips64: 为64位的MIPS处理器准备的版本。
  8. linux-mips64-softfloat: 同样是为64位的MIPS处理器准备的版本,但是针对的是没有硬件浮点运算能力的处理器。
  9. linux-mips64le: 这个版本是为64位的MIPS处理器准备的,其中”le”代表小端模式(Little-Endian),这是一种字节顺序。
  10. linux-mipsle: 为32位的MIPS处理器准备的小端模式版本。
  11. mac-386 和 mac-amd64: 分别为32位和64位的Mac电脑(基于x86架构的)提供支持。
  12. windows-x64 和 windows-x86: 分别为64位和32位的Windows操作系统提供支持。”x64”是指64位的x86架构处理器,”x86”则是指32位的。

所以按照解释,输入如下命令来查看处理器架构

uname -m

![[attachment/68a9856619d260033c3fe777c5de6827_MD5.png]]

3. 安装

3.1 配置安装文件

Chfs支持Windows,Linux和Mac系统,本次以我的Rocky linux 来进行安装使用演示

  1. 创建chfs 程序文件目录, 在 /etc 目录下创建一个chfs文件夹
    /etc/chfs
mkdir chfs
  1. 设置权限
chmod 777 chfs
  1. 上传下载的文件到chfs 目录中,赋权
chmod 777 chfs-linux-amd64-3.1 chfs.ini chfs_data

3.2 创建系统服务

进入系统服务目录

cd /etc/systemd/system

创建chfs.service文件

这里我并没有按照官方那种使用命令来配置,我使用的是配置文件进行定义,这个也方便管理

[Unit]
Description=CHFS Server
After=syslog.target network.target

[Service]
# ExecStart指定对应的文件目录 file指定对应配置文件的目录,这两个大家根据自己的情况进行设定
ExecStart=/etc/chfs/chfs-linux-amd64-3.1 --port=8080 --file=/etc/chfs/chfs.ini 

TimeoutStopSec=20
Restart=always

[Install]
WantedBy=multi-user.target

3.3创建配置文件

配置文件chfs.ini ,参考官方的介绍进行设定的,具体的可以参考官方解释

cd /etc/chfs
vi /etc/chfs/chfs.ini
chmod 7777 chfs.ini
#设置的共享目录,默认为程序运行目录。如果需要共享多个目录,则用“|”符号隔开。
path=/home/myteno 
#服务运行端口,默认是80
port=8080
# IP地址过滤,可使用白名单模式或黑名单模式,我个人没这个需求,有需求的可以具体看看官方介绍
#allow=192.168.1.2-192.168.1.100,192.168.1.200
# 设置用户权限,我这里设置的匿名用户只有读权限,账户guoke,密码为guoke,具有读写删除权限。这里权限设置大家具体看官方解释
[guest]
rule.default=r
[guoke]
password=guoke
rule.default=rwd

3.4 创建存储目录

存储目录里面的目录名要和配置文件的path 路径一致

cd /hme
mkdir myteno
chmod 777 myteno

3.5 启动服务

启动服务
systemctl daemon-reload %%重新加载系统systemd 的配置文件%%

sudo systemctl daemon-reload
sudo systemctl enable chfs
sudo systemctl start chfs

重启服务

sudo systemctl restart chfs

停止服务

sudo systemctl stop chfs

查看服务运行情况

sudo systemctl status chfs

通过浏览器访问 http://localhost:端口号 (如果是云服务器,记得放行端口)