因为经常用到远程桌面连接,所以本地pc和远程pc间的文件传输一直是个经常遇到的问题,尝试过用vftp搭建ftp服务,但是该服务在许多vps上被禁用,且windows上使用也要进行设置,比较麻烦。所幸发现了ods-im/CuteHttpFileServer 这个github项目,以此软件搭建了一个简单的文件中转服务,这里做个记录。
一、安装
搜索github中的这个项目,下载对应系统平台的包;解压缩后仅有一个文件(chfs 或者chfs.ext)。这就是全部了。
下面以Linux AMD64 平台为例子,介绍如何将其设置为 Daemon服务
二、编写启动脚本
2.1 将chfs作为系统软件
mv chfs /usr/bin/ ## 将chfs 移动到位
wget http://iscute.cn/asset/chfs.ini
mv chfs.ini /etc/
2.2 编写脚本
vim /etc/systemd/system/chfs.sh
#如下,设置了中转目录,监听的端口; 注意要将Public的读写权限进行开放
#! /bin/bash
/usr/bin/chfs --file=/etc/chfs.ini
注:还有其他参数,可设置登陆账号、密码等,看软件的说明
最新版升级为了3.1 http://iscute.cn/chfs
配置文件 http://iscute.cn/asset/chfs.ini
####配置文件要设置读写权限才能删除文件####
# 文件/目录删除模式:
# 1: 安全删除:移动到系统回收站 [不是所有操作系统都支持,建议使用前进行测试。默认模式]
# 2: 安全删除:移动到chfs的专属回收站: ~/.chfs_trashbin, 程序会删除存储超过1个月的文件
# 3: 真正删除
file.remove=3
#账户xxx,访客的用户名为guest
[admin]
password=admin369
rule.default=rwx
rule.none=
rule.r=
rule.w=
rule.d=
2.3 编写 systemd service
vim /etc/systemd/system/chfs.service
[Unit]
Description=Chfs file Service
After=network.target
[Service]
Type=simple
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart=/bin/bash /etc/systemd/system/chfs.sh
LimitNOFILE=1048796
[Install]
WantedBy=multi-user.target
三、启动chfs服务,并设置为随开机启动
systemctl start chfs.service
systemctl status chfs.service
systemctl enable chfs.service
四、测试
浏览器输入: http://your-web-address:54321
可以上传,也可方便地在服务器上直接cp文件到该共享文件夹,刷新即可显示