0.基础准备工作
0.1 用到的软件
折腾全部基于windows系统。
0.1.1 Winscp
通过scp方式连接主机,方便进行文件操作。
下载安装包双击安装即可。
前往官网下载【Winscp Cilent】
0.1.2 Openssh
通过ssh连接主机,方便使用命令行和获取root权限。
使用OpenSSH for Windows,直接双击安装,在Powershell中即可使用。
前往Github下载【OpenSSH for Windows】
0.1.3 Finalshell(推荐)
兼顾文件操作和方便使用命令行获取root权限
前往官网下载【FinalShell SSH Tool】
1.如何替换Web UI的界面壁纸
1.1 准备图片
通过Winscp连接至主机后,依次打开/usr/trim/www/static位置。
可以看到bg和thumbnail_bg两个文件夹,分别用来存放壁纸和缩略(预览)图。
只需要使用自己的图片,替换掉飞牛的图片,在浏览器刷新或清除缓存后即可完成界面壁纸的更换。
打开bg文件夹,可以看到飞牛的界面壁纸是采用7680*4320(标准8K)分辨率的webp格式图片。实测采用其他分辨率图片替换也完全没问题,就是分辨率小拉伸后可能有点糊,看自己需求。
打开thumbnail_bg文件夹,可以看到飞牛界面壁纸的缩略图是采用351*198分辨率的webp格式图片。
制作webp格式图片文件可以使用jpg文件通过格式工厂转换或线上网页转换为webp格式文件。
1.2 替换壁纸
由于操作/usr/trim文件夹需要root权限,可以使用命令行替换所需文件。
将准备好的图片文件放入任意位置,本文以存储空间1的test文件夹为例,路径地址应为/vol1/1000/test/1.webp和/vol1/1000/test/1t.webp
首先使用powershell登录主机ssh,并获取root权限
# 登录主机
ssh 用户名@ip地址
# 输入密码
#获取root权限
sudo su
# 输入密码
然后,使用cp命令复制覆盖原壁纸文件。
#复制覆盖壁纸文件
cp /vol1/1000/test/1.webp /usr/trim/www/static/bg/wallpaper-1.webp
#复制覆盖缩略图文件
cp /vol1/1000/test/1t.webp /usr/trim/www/static/thumbnail_bg/wallpaper-1.webp
1.3 注意事项
如果替换后,缩略(预览)图或壁纸不生效,可以考虑两个原因:
1.3.1
清除浏览器缓存,略。
1.3.2
如果替换后未正常显示壁纸,可能是文件权限问题,壁纸文件默认使用644权限,可以使用如下命令修改权限。
#设置壁纸文件访问权限
chmod 644 /usr/trim/www/static/bg/wallpaper-1.webp
#设置缩略图文件访问权限
chmod 644 /usr/trim/www/static/thumbnail_bg/wallpaper-1.webp
1.3.3
登录Web UI后,壁纸可在界面左下角小人图标“我的账号-我的账号-桌面壁纸”处修改。
2.如何修改自定义Web UI Title
修改调整后效果如上图,标题变为瓜瓜🍈私有云~
此修改涉及js文件,操作不当可能导致Web UI加载不正常,建议有一定js基础再操作,强烈建议备份好原文件。
修改标题行分为两部分,一是登录界面,二是登录后进来的Web UI界面。
2.1 登录界面
只需要找到/usr/trim/www/index.html,修改其中59行的<title>标签即可。
# 先备份一份原始文件,防止BOOM
cp /usr/trim/www/index.html /usr/trim/www/index_backup
# 下载下来后,使用任意txt文件编辑器都可修改,找到59行的<title>
# 修改,例如:<title>瓜瓜🍈私有云</title>
# 保存后,上传到存储空间,例如/vol1/1000/test文件夹。
# 覆盖原文件
cp /vol1/1000/test/index.html /usr/trim/www/index.html
# 如果不小心操作失误,无法访问了,如下命令即可恢复
cp /usr/trim/www/index_backup /usr/trim/www/index.html
2.2 Web UI界面
找到/usr/trim/www/assets/index-DTyzZQE_.js文件,修改其中内容。
#先备份一份原始文件,防止BOOM
cp /usr/trim/www/assets/index-DTyzZQE_.js /usr/trim/www/assets/index-DTyzZQE_backup
# 下载下来后,使用任意txt文件编辑器都可修改,搜索并找到如下内容
setHostNameTitle=o=>{o?document.title=
# 根据自己喜好,修改为任意内容,例如
setHostNameTitle=o=>{o?document.title=`${o} - 瓜瓜🍈私有云`:document.title="瓜瓜🍈私有云"}
# 保存后,上传到存储空间,例如/vol1/1000/test文件夹。
# 覆盖原文件
cp /vol1/1000/test/index-DTyzZQE_.js /usr/trim/www/assets/index-DTyzZQE_.js
# 如果不小心操作失误,无法访问了,如下命令即可恢复
cp /usr/trim/www/assets/index-DTyzZQE_backup /usr/trim/www/assets/index-DTyzZQE_.js
3.如何修改自带Nginx的配置文件
之前的文章也提到过,飞牛私有云OS自带nginx反向代理,只需要修改配置文件重启后即可,配置文件位于 /usr/trim/nginx/conf/nginx.conf,建议修改前先备份原始文件。
下面是一个修改后的案例,可以根据自身情况进行调整。
user www-data;
worker_processes auto;
load_module modules/ngx_http_trim_cert_module.so; # 飞牛OS自动匹配处理Cert证书的脚本,很好用
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
pid /run/nginx.pid;
events {
worker_connections 10240;
}
http {
#
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
#
upstream trim_cgi {
server unix:/run/trim_cgi.socket;
}
upstream trim_upload {
server unix:/run/trim_upload_srv.socket;
}
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
# nginx上传文件最大限制
client_max_body_size 1000000g;
trim_cert_cfg_path /usr/trim/etc/network_gateway_cert.conf;
server_tokens off
# 飞牛Web UI的配置信息,默认会占用80、443,自动跳转8000、8001端口,占用4个端口真是太奢侈了
# 可以如下,修改为直接使用8000、8001端口
server {
listen 0.0.0.0:8000 default_server;
listen [::]:8000 ipv6only=on default_server;
listen 8001 ssl default_server;
listen [::]:8001 ssl ipv6only=on;
#server_name _;
trim_hook_cert_switch on;
ssl_certificate $ssl_server_name;
ssl_certificate_key $ssl_server_name;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
root /usr/trim/www;
index index.html index.htm;
error_page 404 /index.html;
# websocket配置
location /websocket {
proxy_pass http://trim_cgi;
proxy_http_version 1.1;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
# upload配置
location /upload {
proxy_pass http://trim_upload;
keepalive_timeout 0;
proxy_http_version 1.1;
proxy_set_header X-Real-IP $remote_addr;
proxy_request_buffering off;
client_body_buffer_size 512K;
tcp_nopush on;
}
location /download {
alias /;
download_auth on;
}
location /appui {
alias /vol0/@appui;
}
location ~ ^/(signin|login|system) {
add_header cache-control no-cache;
try_files /index.html =200;
}
include conf.d/*.conf;
}
# upstream模块
upstream halo_server{
server 127.0.0.1:8080;
}
# 配置自己的服务器
server {
listen 80;
listen 443 ssl;
server_name halo;
# 使用飞牛自带的接口和脚本,省去配置证书的烦恼
trim_hook_cert_switch on;
ssl_certificate $ssl_server_name;
ssl_certificate_key $ssl_server_name;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://127.0.0.1:8080;
#proxy_buffer_size 64k;
#proxy_buffers 32 32k;
#proxy_busy_buffers_size 128k;
}
}
}
重启nginx
/usr/trim/nginx/sbin/nginx -s reload
4.FnOS配置ups(以tg-box 850为例)
飞牛私有云系统基于Debian,只需简单配置,可以直接使用ups。
4.1 安装apcupsd
# 更新 apt 源
apt update
# 安装 apcupsd
apt install apcupsd
4.2 编辑apcupsd配置
apcupsd的配置文件在/etc/apcupsd/apcupsd.conf,其中需要修改的配置有以下几项:
# UPS硬件名称`tg-box850`。
UPSNAME tg-box850
# 使用usb连接,注释掉以下内容(在内容前加井号)
# DEVICE /dev/ttyS0
# 删除POLLTIME名称前面的#,表示检测ups状态的间隔时间,默认60秒
POLLTIME 60
# UPS剩余电量低于80%,开始自动关机,默认为5。
BATTERYLEVEL 80
# UPS剩余电量不超过5分钟时自动关机
MINUTES 5
# 市电中断超过100秒后,开始自动关机,默认为0。
TIMEOUT 100
4.3 启动服务,设置自启
# 启动服务
systemctl start apcupsd
# 设置开机自启服务
systemctl enable apcupsd
# 重启服务
systemctl restart apcupsd
# 查看服务状态
systemctl status apcupsd
# 查看ups状态
apcaccess
当配置中出现如下内容时,即代表配置成功啦~
STATUS : ONLINE
5.如何修改Web UI的用户头像
待更新。