首页
留言
Search
1
IDM下载视频时【连接超时】问题的解决!
1,416 阅读
2
圈X,Stash配置及自己转换订阅链接 保姆级教程
540 阅读
3
passwall升级版本
336 阅读
4
X-ui Cloudflare 优选 IP
320 阅读
5
Hysteria2|歇斯底里科学上网节点搭建教程
320 阅读
工程师
油漆工
搬瓦工
叉车工
登录
Search
标签搜索
ChatGPT!
BG
累计撰写
29
篇文章
累计收到
23
条评论
首页
栏目
工程师
油漆工
搬瓦工
叉车工
页面
留言
搜索到
29
篇与
的结果
2025-04-19
Sub-Store 搭建教程(支持无面板与宝塔面板)
Sub-Store 搭建教程(支持无面板与宝塔面板)【准备工作】VPS 一台,重置 Debian 12 操作系统(本文以这个为例)域名 一个,托管到 Cloudflare,并转向 VPS IP一、无宝塔面板部署1. 更新系统 && 安装必要组件apt update -y apt install unzip curl wget git sudo -y2. 安装 Node.jscurl -fsSL https://fnm.vercel.app/install | bash source /root/.bashrc fnm install v20.18.0 node -v # 看到版本即为成功3. 安装 PNPMcurl -fsSL https://get.pnpm.io/install.sh | sh - source /root/.bashrc4. 安装 Sub-Storemkdir -p /root/sub-store && cd /root/sub-store curl -fsSL https://github.com/sub-store-org/Sub-Store/releases/latest/download/sub-store.bundle.js -o sub-store.bundle.js curl -fsSL https://github.com/sub-store-org/Sub-Store-Front-End/releases/latest/download/dist.zip -o dist.zip unzip dist.zip && mv dist frontend && rm dist.zip5. 创建系统服务 sub-store.servicecat > /etc/systemd/system/sub-store.service <<EOF [Unit] Description=Sub-Store After=network-online.target Wants=network-online.target systemd-networkd-wait-online.service [Service] LimitNOFILE=32767 Type=simple Environment="SUB_STORE_FRONTEND_BACKEND_PATH=/9GgGyhWFEguXZBT3oHPY" Environment="SUB_STORE_BACKEND_CRON=0 0 * * *" Environment="SUB_STORE_FRONTEND_PATH=/root/sub-store/frontend" Environment="SUB_STORE_FRONTEND_HOST=0.0.0.0" Environment="SUB_STORE_FRONTEND_PORT=3001" Environment="SUB_STORE_DATA_BASE_PATH=/root/sub-store" Environment="SUB_STORE_BACKEND_API_HOST=127.0.0.1" Environment="SUB_STORE_BACKEND_API_PORT=3000" ExecStart=/root/.local/share/fnm/fnm exec --using v20.18.0 node /root/sub-store/sub-store.bundle.js User=root Group=root Restart=on-failure RestartSec=5s ExecStartPre=/bin/sh -c ulimit -n 51200 StandardOutput=journal StandardError=journal [Install] WantedBy=multi-user.target EOF6. 启动服务 && 设置自启systemctl daemon-reload systemctl enable sub-store.service systemctl start sub-store.service systemctl status sub-store.service7. 安装 Nginx 并配置反向代理 + SSLapt install nginx -y域名设置 & SSL将域名 A 记录指向 VPS IP,开启 CF 代理;证书保存路径:/root/cert/ssl.pem /root/cert/ssl.keyNginx 配置cat > /etc/nginx/sites-enabled/sub-store.conf <<EOF server { listen 443 ssl http2; listen [::]:443 ssl http2; server_name sub.yourdomain.com; ssl_certificate /root/cert/ssl.pem; ssl_certificate_key /root/cert/ssl.key; location / { proxy_pass http://127.0.0.1:3001; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } EOF重载 Nginxnginx -t && nginx -s reload访问地址:https://sub.yourdomain.com/?api=https://sub.yourdomain.com/9GgGyhWFEguXZBT3oHPY二、宝塔面板部署方式1. 安装 Node.js 管理器宝塔面板 > 软件商店 > Node项目管理器 > 安装,安装完后点击添加项目并选择 LTS 版本:v20.18.0。2. 准备项目文件夹宝塔文件管理 > wwwroot 目录下新建文件夹 SubStore3. 创建 package.json进入 SubStore 文件夹,创建 package.json 文件:{ "name": "sub-store", "version": "1.0.0", "description": "Sub-Store project", "main": "sub-store.bundle.js", "scripts": { "start": "SUB_STORE_FRONTEND_BACKEND_PATH=/9GgGyhWFEguXZBT3oHPY SUB_STORE_BACKEND_CRON='0 0 * * *' SUB_STORE_FRONTEND_PATH=/www/wwwroot/SubStore/dist SUB_STORE_FRONTEND_HOST=0.0.0.0 SUB_STORE_FRONTEND_PORT=3321 SUB_STORE_DATA_BASE_PATH=/www/wwwroot/SubStore SUB_STORE_BACKEND_API_HOST=127.0.0.1 SUB_STORE_BACKEND_API_PORT=3300 /www/server/nodejs/v20.18.0/bin/node /www/wwwroot/SubStore/sub-store.bundle.js" } }4. 下载前后端代码在当前目录使用 URL 链接下载功能:https://github.com/sub-store-org/Sub-Store/releases/latest/download/sub-store.bundle.js https://github.com/sub-store-org/Sub-Store-Front-End/releases/latest/download/dist.zip解压 dist.zip 并重命名为 dist5. 添加 Node 项目宝塔 > Node项目 > 添加项目:项目路径:/www/wwwroot/SubStore启动端口:3321Node版本:选择 v20.18.0启用随系统启动 ✅6. 配置反向代理 & SSL宝塔 > 网站 > 添加站点(填入域名)> SSL:粘贴证书 & 密钥 > 开启强制 HTTPS反代设置:目标 URL 填写:http://127.0.0.1:3321访问地址:https://sub.yourdomain.com/?api=https://sub.yourdomain.com/9GgGyhWFEguXZBT3oHPY三、更新 Sub-Store无面板方式:systemctl stop sub-store.service cd /root/sub-store curl -fsSL https://github.com/sub-store-org/Sub-Store/releases/latest/download/sub-store.bundle.js -o sub-store.bundle.js systemctl daemon-reload systemctl start sub-store.service systemctl status sub-store.service宝塔方式:停止 Node 项目服务,删除旧的 sub-store.bundle.js,重新上传新版本即可。四、值得推荐的 rename.js 节点编排脚本https://raw.githubusercontent.com/Keywos/rule/main/rename.js配合 Sub-Store 用于自动编排节点,可配合 Sub-Store 后台设置 JS 链接自动进行节点重命名。五、结言Sub-Store 是一个很实用的节点管理工具,支持多机场合并订阅,自带节点配合,配合自定义规则和 emoji 等,有效改善合同节点最终显示效果,非常值得学习和使用。
2025年04月19日
1 阅读
0 评论
0 点赞
2025-03-24
📘 Mihomo / Clash.Meta `.mrs` 规则说明文档
📘 Mihomo / Clash.Meta .mrs 规则说明文档📌 .mrs 支持的规则类型(behavior)当前 .mrs 文件 仅支持以下两种规则类型:domain:用于域名规则(包括普通域名、通配域名、根域名)ipcidr:用于 IP 地址和子网段(CIDR)❗ 以下类型暂不支持 .mrs: classical、keyword、user-agent、process-name、geosite、geoip🔁 .mrs 文件生成方法使用 mihomo 或 clash-meta 主程序内置的命令行工具进行转换:🧩 格式如下:mihomo convert-ruleset <类型> <格式> <输入文件> <输出文件.mrs> {lamp/} 参数说明: • <类型>:domain 或 ipcidr(指定规则种类) • <格式>:yaml 或 text(源规则文件格式) • <输入文件>:你准备的 YAML / TXT 文件 • <输出文件>:要生成的 .mrs 文件 {lamp/} ✅ 示例 1:将 YAML 文件转换为 domain 类型 .mrs 输入文件内容:my-domain.yaml {lamp/} payload: - "example.com" # 普通域名 - "+.google.com" # 通配域名 - "facebook.com" # 根域名 - "+.fbcdn.net" # 多子域名通配 - "api.openai.com" # 指定子域名 {lamp/} {card-describe title="转换命令:"} mihomo convert-ruleset domain yaml my-domain.yaml my-domain.mrs {/card-describe} {lamp/} ✅ 示例 2:将 TXT 文件转换为 ipcidr 类型 .mrs 输入文件内容:my-ip.txt 8.8.8.8/32 # 单个 IP 1.1.1.0/24 # 整个子网 192.168.0.0/16 # 本地内网 10.0.0.1/32 # 内网设备 123.45.67.0/24 # 某地区出口 IP {card-describe title="转换命令:"} mihomo convert-ruleset ipcidr text my-ip.txt my-ip.mrs {/card-describe} {lamp/} ⚠️ 注意事项 1. .mrs 是单向转换格式,无法反向转换为 YAML/TXT,请务必备份源规则文件。 2. .mrs 文件只能配合 behavior: domain 或 behavior: ipcidr 使用。 3. 源规则文件中不能混用类型,例如 domain 规则文件中不能包含 IP。 ⸻ ✅ 配置文件中使用.Mrs示列 rule-providers: domain-rules: type: http behavior: domain path: ./rules/my-domain.mrs url: https://your.server/rules/my-domain.mrs interval: 86400 ip-rules: type: http behavior: ipcidr path: ./rules/my-ip.mrs url: https://your.server/rules/my-ip.mrs interval: 86400 {lamp/} rules: - RULE-SET,domain-rules,Proxy - RULE-SET,ip-rules,Direct ✅ 命令模板(可直接复制修改) {card-describe title="命令模板"} # 📦 将 domain 类型 YAML 文件转为 mrs mihomo convert-ruleset domain yaml ./rules/my-domain.yaml ./rules/my-domain.mrs # 📦 将 ipcidr 类型 TXT 文件转为 mrs mihomo convert-ruleset ipcidr text ./rules/my-ip.txt ./rules/my-ip.mrs {/card-describe} {lamp/} ✅ 建议:可写一个自动化脚本定期更新 .mrs 文件,适合 GitOps 或定时任务。 {lamp/} 📂 示例文件结构: rules/ ├── my-domain.yaml # 域名规则源文件 ├── my-domain.mrs # 生成的域名 .mrs 文件 ├── my-ip.txt # IP/CIDR 源规则 └── my-ip.mrs # 生成的 IP .mrs 文件 --- 这样就可以当说明书用了!如果你还想我帮你写个 `bash` / `bat` 脚本来自动处理多个 `.yaml/.txt` 批量转 `.mrs`,我也可以给你整一个~你用的是哪个系统? {dotted startColor="#ff6c6c" endColor="#1989fa"/}
2025年03月24日
45 阅读
0 评论
0 点赞
2024-11-24
ESXI激活opwtr网卡加载
1. 登录到 OpenWrtssh root@<OpenWrt_IP> # 替换 <OpenWrt_IP> 为你的设备 IP 地址2. 打开网络配置文件vi /etc/config/network3. 进入后按 "i" 进入编辑模式,粘贴以下内容:config deviceoption name 'eth1' config deviceoption name 'eth2' config deviceoption name 'eth3' config deviceoption name 'br-lan' option type 'bridge' list ports 'eth0' list ports 'eth1' list ports 'eth2' list ports 'eth3' 4. 按 "Esc" 键退出编辑模式,然后输入以下命令保存并退出::wq # 保存并退出 vi 编辑器5. 重启网络服务以应用配置:/etc/init.d/network restart6. 验证配置是否正确:brctl show # 查看网桥配置ip link show # 查看网卡状态
2024年11月24日
29 阅读
0 评论
0 点赞
2024-11-15
将M.2 NVMe SSD 缓存设置为储存空间
描述轻松在 Synology NAS 上创建 M.2 卷,无需大量输入,也无需任何操作指南。而且您不需要Synology 品牌的 NVMe 驱动器。该脚本在您的 NVMe 驱动器上创建 RAID 和存储池,以便您可以在存储管理器中创建卷。您所要做的就是运行脚本并输入 yes 和 1、2、3 或 4 来回答一些简单的问题。然后转到存储管理器并选择创建卷。它还允许您创建跨内部 NVMe 驱动器和 Synology M.2 PCIe 卡中的 NVMe 驱动器的存储池/卷。对于 Xpenology 用户,该脚本支持无限数量的 NVMe 驱动器(RAID 1 和 Basic 除外)。支持 DSM 7 及更高版本对于DSM 6,使用 v1并且在没有自动更新选项的情况下运行。v2 中的新功能现在显示“M.2 驱动器#”,与存储管理器相同。现在使用 synostgpool 命令,它允许以下操作:(感谢 reddit 上的 Severe_Pea_2128)现在支持 JBOD、SHR、SHR2 和 RAID F1。增加了多卷或单卷存储池的选择。多卷允许超额配置。添加了跳过驱动器检查的选项。运行脚本后不再需要重新启动。不再需要进行在线组装。删除了驱动器检查进度,因为 synostgpool 无法实现此操作。您可以在存储管理器中查看驱动器检查进度。删除了空运行模式,因为 synostgpool 无法实现该模式。不再支持 SATA M.2 驱动器。如果您有 SATA M.2 驱动器,请使用 v1并且在没有自动更新选项的情况下运行。支持的 RAID 级别RAID 级别 所需最小驱动器数 最大驱动器数 脚本版本自发性高血压综合征 1 个或多个驱动器 无限 v2 及更高版本(仅限 DSM 7)高血压 4 个或更多驱动器 无限 v2 及更高版本(仅限 DSM 7)基本的 1 个驱动器 1 个驱动器 全部磁盘阵列 1 个或多个驱动器 无限 v2 及更高版本(仅限 DSM 7)RAID 0 2 个或更多驱动器 无限 全部RAID 1 2 个或更多驱动器 4 个驱动器 全部RAID 5 3 个或更多驱动器 无限 全部RAID 6 4 个或更多驱动器 无限 v1.3.15 及更高版本RAID 10 4 个或更多驱动器 无限 v1.3.15 及更高版本RAID F1 3 个或更多驱动器 无限 v2 及更高版本(仅限 DSM 7)如果选择了 RAID F1,则脚本将在未正式支持 RAID F1 的 Synology 型号上启用 RAID F1。确认正在工作点击此处查看列表重要的如果您稍后更新 DSM,并且 M.2 驱动器显示为不受支持且存储池显示为缺失,并且在线组装失败,则需要运行Synology_HDD_db脚本。Synology_HDD_db脚本应在每次 DSM 更新后运行。下载脚本从https://github.com/007revad/Synology_M2_volume/releases下载最新版本源代码 (zip)将下载的 zip 文件保存到 Synology 上的文件夹中。解压缩该 zip 文件。通过 SSH 运行脚本如何启用 SSH 并通过 SSH 登录 DSMsudo -s /volume1/scripts/syno_create_m2_volume.sh注意:将 /volume1/scripts/ 替换为脚本所在的路径。故障排除如果脚本无法运行,请检查以下内容:如果脚本路径包含任何空格,则需要将路径/脚本名称括在双引号中:sudo -s "/volume1/my scripts/syno_create_m2_volume.sh"确保您已解压下载的 zip 或 rar 文件,并尝试运行 syno_create_m2_volume.sh 文件。将 syno_create_m2_volume.sh 文件设置为可执行文件:sudo chmod +x "/volume1/scripts/syno_create_m2_volume.sh"选项: -a, --all List all M.2 drives even if detected as active -s, --steps Show the steps to do after running this script -h, --help Show this help message -v, --version Show the script version运行脚本后该做什么按照通常方式创建卷:选择新的存储池>创建>创建卷。设置分配的大小。可选择输入卷描述。发挥创意 :)单击“下一步”。选择文件系统(Btrfs 或 ext4),然后单击下一步。(可选)启用“加密此卷”,然后单击“下一步”。创建加密密码或输入您现有的加密密码。确认您的设置并单击“应用”以完成创建 M.2 卷。可选择启用和安排 TRIM:存储池 > ... > 设置 > SSD TRIM注意:DSM 7.2 及更高版本没有针对 M.2 RAID 0 的 SSD TRIM 设置注意:DSM 7.1.1 没有针对 M.2 存储池的 SSD TRIM 设置如何修复 NVMe 存储池或升级到更大的驱动器修复 DSM 7.2 或更高版本中降级的存储池修复内部 M.2 插槽中的 NVMe RAID 1修复适配卡中的 NVMe RAID 1在 DSM 7.2 或更高版本中升级到更大的 NVMe 驱动器用更大的驱动器替换 M.2 RAID 1通过 SSH 修复 DSM 6Synology 支持如何在 DSM 6 中修复 RAIDDSM 7 屏幕截图创建 SHR 存储池创建卷卷描述分配卷容量选择文件系统成功!启用 TRIM最后感谢这些大神的无私奉献。才能让我们这么方便快捷的开启了nvme M2之旅,谢谢!
2024年11月15日
51 阅读
0 评论
0 点赞
2024-09-11
Docker搭建cloudreve私人网盘 支持离线下载 支持域名访问 更简单了
科技lion 官方博客Docker搭建cloudreve私人网盘 支持离线下载 支持域名访问 更简单了二月 13, 2023Cloudreve 可助你即刻构建出兼备自用或公用的网盘服务,通过多种存储策略的支持、虚拟文件系统等特性实现灵活的文件管理体验。环境构建重裝bash <(wget --no-check-certificate -qO- 'https://raw.githubusercontent.com/MoeClub/Note/master/InstallNET.sh') -d 11 -v 64 -p lion123 -port 22更新环境apt update -y && apt upgrade -y && apt install -y curl wget sudo socat安装 Dockercurl -fsSL https://get.docker.com | shcurl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-composeCloudreve和离线下载构建创建目录,创建文件cd /home/ && mkdir cloud && cd cloud && mkdir -vp cloudreve/{uploads,avatar} && touch cloudreve/conf.ini && touch cloudreve/cloudreve.db && mkdir -p aria2/config && mkdir -p data/aria2 && chmod -R 777 data/aria2创建compose配置文件cd /home/cloud/ && nano docker-compose.yml配置Cloudreve代码version: "3.8"services:cloudreve:container_name: cloudreve image: cloudreve/cloudreve:latest restart: unless-stopped ports: - "5212:5212" volumes: - temp_data:/data - ./cloudreve/uploads:/cloudreve/uploads - ./cloudreve/conf.ini:/cloudreve/conf.ini - ./cloudreve/cloudreve.db:/cloudreve/cloudreve.db - ./cloudreve/avatar:/cloudreve/avatar depends_on: - aria2 aria2:container_name: aria2 image: p3terx/aria2-pro restart: unless-stopped environment: - RPC_SECRET= KEJILION - RPC_PORT=6800 volumes: - ./aria2/config:/config - temp_data:/data volumes:temp_data:driver: local driver_opts: type: none device: $PWD/data o: bind 运行cd /home/cloud && docker-compose up -d查询初始登录账号密码docker-compose logs cloudreve离线下载配置参数RPC 服务器地址 => http://aria2:6800RPC 授权令牌 => KEJILION节点下载目录 => /dataNGINX反向代理到域名创建nginx目录结构mkdir -p /home/nginxtouch /home/nginx/nginx.confmkdir -p /home/nginx/certs申请证书curl https://get.acme.sh | sh~/.acme.sh/acme.sh --register-account -m xxxx@gmail.com~/.acme.sh/acme.sh --issue -d kjlion.ga --standalone下载证书~/.acme.sh/acme.sh --installcert -d kjlion.ga --key-file /home/nginx/certs/key.pem --fullchain-file /home/nginx/certs/cert.pem清除域名证书~/.acme.sh/acme.sh --remove -d kjlion.ga手动删除/root/acme目录进入目录编辑文件cd /home/nginx/ && nano nginx.conf反向代理配置,代理指定IP加端口events {worker_connections 1024; }http {client_max_body_size 1000m; #上传限制参数1G以内文件可上传server {listen 80; server_name kjlion.ga; return 301 https://$host$request_uri; }server {listen 443 ssl http2; server_name kjlion.ga; ssl_certificate /etc/nginx/certs/cert.pem; ssl_certificate_key /etc/nginx/certs/key.pem; location / { proxy_pass http://127.0.0.1:5212; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }}部署容器docker run -d --name nginx -p 80:80 -p 443:443 -v /home/nginx/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/certs:/etc/nginx/certs -v /home/nginx/html:/usr/share/nginx/html nginx:latest查看运行状态docker ps -a开机自启动docker update --restart=always nginxDocker常用命令https://kejilion.blogspot.com/2023/02/docker.html这次搭建我把nginx和云盘服务分开,方便后续其他服务接入nginx,应该是可行的!
2024年09月11日
35 阅读
0 评论
0 点赞
1
2
...
6