首页
直播
电影
视频
更多
壁纸
留言
友链
关于
统计
推荐
我的影视
蜻蜓工具
蛙蛙工具
Ai照片工具
帮小忙
APi
二次元api
字节海api
颜色代码表
Search
1
飞牛fnos自动部署并自动更新ssl证书
210 阅读
2
飞牛OS通过compose安装苹果cmsv10
74 阅读
3
飞牛NAS自建影视-MoonTV
62 阅读
4
音乐收藏
51 阅读
5
飞牛Fnos装typecho(docker)
48 阅读
随手记
技术分享
教程分享
ubuntu
typecho
web前端
服务器
转载分享
影视
音乐
卡点伴奏
登录
Search
标签搜索
typecho
joe
web前端
ubuntu
教程
分享
服务器
无心 ૮₍°°₎ა 博客
累计撰写
43
篇文章
累计收到
2
条评论
首页
栏目
随手记
技术分享
教程分享
ubuntu
typecho
web前端
服务器
转载分享
影视
音乐
卡点伴奏
页面
直播
电影
视频
壁纸
留言
友链
关于
统计
推荐
我的影视
蜻蜓工具
蛙蛙工具
Ai照片工具
帮小忙
APi
二次元api
字节海api
颜色代码表
用户登录
登录
搜索到
43
篇与
无心博客
的结果
2026-04-02
OpenClaw 完整层级结构·官方指令全集白话版
OpenClaw 完整层级结构·官方指令全集一级:OpenClaw(整个系统)安装路径:/var/apps/trim.openclaw/(可用 root)工作路径:/vol1/@apphome/trim.openclaw/(必须用户:trim.openclaw)二级:五大核心组件1. Agent(AI 大脑 / 智能体)作用:独立思考、记忆、人设、多智能体隔离,可与通道一对一绑定三级:聊天内 / 指令(官方共 21 条,全)/new — 清空当前 Agent 记忆/reset — 重置当前 Agent(清记忆+重载)/status — 查看当前 Agent、模型、通道信息/agent — 查看当前使用的 Agent/agent list — 列出所有 Agent/agent [id] — 临时切换到指定 Agent/model — 查看当前模型/model [name] — 切换模型/info — 查看会话长度、记忆、权限、上下文/forget — 删除较早记忆,保留最近对话/help — 显示帮助/stop — 暂停当前对话,不再响应/start — 恢复对话/clear — 清空界面显示(不清记忆)/undo — 撤销上一轮对话/redo — 重做上一轮撤销/prompt — 查看/设置当前系统提示词/save — 保存当前会话记忆/load — 加载历史会话/config — 查看当前 Agent 配置/exit — 退出当前会话2. Gateway(网关 / 总调度)作用:消息中转站,接收通道消息 → 转发 Agent → 回传回复三级:CLI 命令(官方共 8 条,全)./openclaw gateway start — 启动网关./openclaw gateway stop — 停止网关./openclaw gateway restart — 重启网关./openclaw gateway status — 查看状态./openclaw gateway log — 实时日志./openclaw gateway reload — 热重载配置./openclaw gateway enable — 开机自启./openclaw gateway disable — 关闭自启3. Channels(通道 / 聊天入口:微信/QQ/Web 等)作用:用户与 AI 对话入口,可每个通道绑定独立 Agent三级:CLI 命令(官方共 7 条,全)./openclaw channel list — 列出所有通道./openclaw channel enable [name] — 启用通道./openclaw channel disable [name] — 禁用通道./openclaw channel bind [channel] [agent] — 通道绑定 Agent./openclaw channel unbind [channel] — 解绑 Agent./openclaw channel status [name] — 查看通道状态./openclaw channel log [name] — 查看通道日志4. CLI(命令行总控制台)作用:SSH 内管理整个 OpenClaw 系统三级:通用 CLI 命令(官方共 13 条,全)./openclaw status — 系统总状态./openclaw log — 总日志./openclaw help — 帮助./openclaw version — 版本号./openclaw check — 环境检查./openclaw backup — 备份配置./openclaw restore — 恢复备份./openclaw update — 更新程序./openclaw init — 初始化环境./openclaw shell — 进入内置交互壳./openclaw clean — 清理缓存./openclaw config show — 显示完整配置./openclaw config edit — 编辑配置5. Skills(技能 / AI 工具包)作用:AI 可调用的功能,相当于手脚三级:官方固定工具类型(共 10 类,全)read — 读文件write — 写文件exec — 执行系统命令search — 搜索browser — 浏览器操作git — Git 代码管理cron — 定时任务download — 下载文件upload — 上传文件plugin — 插件扩展数量统计聊天 / 指令:官方 21 条,已补齐全部Gateway CLI:官方 8 条,已全Channel CLI:官方 7 条,已全系统通用 CLI:官方 13 条,已全Skills 工具:官方 10 类,已全运行流程(一句话)微信/QQ 发消息 → Channel → Gateway → 绑定的 Agent → 调用 Skills → 原路返回回复/new 仅清空当前通道对应的 Agent 记忆,不影响其他智能体
2026年04月02日
5 阅读
0 评论
0 点赞
2025-11-27
不讲武德-后现代的黑暗艺术
如您所见,我们将对“不讲武德”这一现象进行一次系统性的、深度的剖析。这不仅是一份行为清单,更是一幅现代社会中权力、舆论、心理与技术交织的“暗黑艺术”地图。引言:当“武德”消散之后——论现代竞争中的“降维打击”“武德”,是传统竞技与交往中一种基于尊严、公平与克制的伦理准则。它强调赢要光明磊落,输要心服口服。然而,在现代高度复杂、匿名化且利益至上的社会环境中,纯粹的“武德”往往被更高效的“获胜术”所取代。这些手段的核心,不再是提升自我以求公平胜出,而是通过扭曲信息、操纵认知、利用规则漏洞甚至改变游戏本身,来制造一种不对称的优势,其本质是一种“降维打击”。以下,我们将从微观到宏观,从技巧到哲学,层层递进,揭开这些手法的面纱。第一篇章:基础技法篇——逻辑的陷坑与语言的魔术这些是构建一切“不讲武德”行为的原子工具,常见于日常争论、商业宣传和网络骂战中。偷换概念: 已讨论,核心是“捏造一个靶子自己打”。隐瞒事实: 已讨论,核心是“选择性失明”。稻草人攻击: 歪曲、夸大对方观点后攻击这个虚假版本。例如,将“支持难民权益”歪曲为“要求本国人无底线接纳所有难民”,然后攻击后者不切实际。人身攻击: 不驳论点,只攻击提出者的人格、身份、经历。此为“对人不对事”的终极体现。虚假两难: 将复杂的、多选项的问题简化为“非此即彼”的二元对立,如“不赞成我的方案,就是希望公司倒闭”。情感绑架: 利用道德、亲情、同情心等,迫使对方屈服。如“我都是为你好”、“你不这么做就是不孝/不爱国”。“你也是”谬误: 以对方的类似错误为自身开脱,本质是“转移话题”,如“你批评我迟到?你上周不也迟到了?”诉诸虚假权威: 引用非相关领域的专家或无关名人的言论来佐证。如“某诺贝尔文学奖得主认为这个经济政策是完美的”。赌徒谬误: 认为独立随机事件之间存在关联。如“已经连续开了五次大了,下次肯定是小”,用于诱导非理性决策。滑坡谬误: 夸张地推断一个微小开端会必然导致灾难性后果。如“今天他敢迟到,明天就敢旷工,后天公司就要被他搞垮!”第二篇章:心理操纵篇——潜入心智的暗影这类手法从逻辑层面上升到心理层面,旨在影响情绪和潜意识,让人在非理性状态下做出决定。煤气灯效应: 系统性地说服一个人,让她怀疑自己的记忆、感知和理智。通过持续否认事实、扭曲记忆,最终实现精神控制。这是最高级的心理虐待。“登门槛”效应: 先提出一个小请求,被接受后,再提出更大的真实请求。这是一种“得寸进尺”的渐进式操纵。锚定效应: 谈判或销售时,先抛出一个极高或极低的数字(锚点),影响对方后续的价值判断。例如,商品虚高的“原价”就是一个锚,用以衬托“现价”的实惠。制造稀缺与焦虑: “限时折扣”、“最后一件”、“名额将满”……利用人们对“失去”的恐惧,促使其冲动决策。光环效应/恶魔效应: 让某一人/事物的某一个优点(如美貌)或缺点(如口音),掩盖其所有其他特质,影响整体评价。预设性语言: 在问题中埋藏预设答案。如“你停止打老婆了吗?”无论回答“是”或“否”,都默认了“曾经打过”这一前提。群体压力与从众效应: “已有999人购买”、“大家都在用”,制造一种“不跟进就是落伍”的社交压力。第三篇章:系统规则篇——被设计的“游戏”与制度性剥削这是“不讲武德”的工业化形态,它将不公平内嵌于流程和系统设计中,让个体难以抗衡。“黑暗模式”: 在用户界面(UI/UX)上精心设计,诱使用户做出违背本意的操作。如:确认羞耻: 将否定选项(如“不,我不想省钱”)设计成令人羞愧的文字。隐藏取消路径: 在线订阅一键完成,取消却需打电话并经历漫长挽留。隐私骚扰: 频繁弹窗要求授权非必要数据,直到用户不堪其扰而同意。“锅位”设计: 通过模糊的职责划分和复杂的流程,刻意制造管理的灰色地带。一旦出事,责任可以像击鼓传花一样传递,最终让最底层、最无话语权的个体成为“替罪羊”。绩效指标博弈: 员工不是通过创造真实价值,而是通过钻营KPI规则的漏洞来获得高分。这导致“目标替代”——为了完成指标而完成指标,反而损害了公司长远利益(如客服为凑通话时长而拖延时间)。“开源”陷阱与生态锁死: 先以开放、免费的平台吸引开发者与用户,形成依赖后,突然改变规则,收取高额费用或限制兼容,进行“关门打狗”。“养蛊式”内卷: 有意在下属或合作方之间制造高度同质化的内部竞争,鼓励互相倾轧。管理者坐收渔利,并掌握最终解释权和分配权。“移动门柱”: 在竞争或考核过程中,当一方即将达标时,掌握规则权的一方突然改变标准,使其努力付诸东流。这彻底摧毁了公平性。第四篇章:信息舆论篇——后真相时代的战争武器在信息社会,控制叙事本身就是最强大的权力。这些手法旨在塑造甚至制造“现实”。狗哨政治: 使用在公众听来无伤大雅,但在特定群体中有特殊含义的隐语。表面一套说辞,暗地向目标群体传递另一套信号,从而规避公众审查。“Whataboutism”(“那又怎么说”主义): 不回应自身问题,而是反指对方或第三方也有类似或更严重的错误。目的是将水搅浑,暗示“天下乌鸦一般黑”,以此淡化自身过错。动机论诛心: 不讨论观点和事实本身,直接攻击对方提出观点的动机。通过将对方“污名化”(如“你这么说就是为了钱/出名”),来间接否定其观点。“举报”工具化: 有组织地利用平台规则,对异见者或竞争对手进行恶意、大规模的举报,使其内容被算法误判而删除,实现“合法”封杀。“信息茧房”与回音壁效应: 算法推荐机制不断强化用户的固有偏见,使其沉浸于单一信息流中,接触不到相反意见,从而变得偏执和极端,更容易被操纵。语言腐败: 系统性扭曲词语原意,如将“侵略”称为“特别军事行动”,将“裁员”称为“毕业”。语言不再用于沟通真相,而是用于掩饰和操纵。第五篇章:高阶战略篇——权力结构的暗面逻辑这些是运用于宏观层面的、更为精巧和冷酷的策略,通常与组织、国家层面的权力运作相关。“捧杀”: 过度地、不切实际地吹捧对方,使其自我膨胀、放松警惕或树敌众多,最终犯错倒下。“苦难”证券化: 将艰辛和过度劳动包装成“励志故事”和“企业文化”,要求成员为虚幻的“福报”和集体荣誉感,接受当下的不合理剥削,并以此为荣。“真空式承诺”: 给出宏大但无任何细节和保障的承诺(如“上市后财富自由”),利用人们对未来的憧憬,换取其当下实实在在的付出和牺牲。“合理化”压迫: 为不公平的制度披上“科学”、“理性”、“为你好”的外衣,如用“人力资源优化”这类冷冰冰的术语来消除“裁员”的道德负罪感。“合法”消耗战: 利用司法程序的高成本和时间消耗,不断发起无实质意义的诉讼,目的是拖垮资源有限的对手,迫使其妥协。“解构主义”的滥用: 滥用“没有绝对真理”、“一切皆是叙事”等后现代观点,为谎言和谬误开脱,瓦解任何追求真相的努力。当事实被指控时,回应:“这只是你的视角,我有我的视角。”结语:在“武德”失落的时代,如何守住个体的“城池”列举这些令人沮丧的策略,并非为了宣扬悲观主义,而是为了达成一种 “清醒的防御” 。知己知彼,百战不殆。要抵御这些无处不在的“暗黑艺术”,我们需要构建一套内在的免疫系统:永恒的批判性思维: 这是最坚固的盾牌。永远追问:证据何在?逻辑是否自洽?信息源是否可靠?对方的动机可能是什么?拥抱延迟判断: 在情绪被强烈煽动时(无论是愤怒还是狂喜),强迫自己暂停,避免在冲动下做出决定。时间是情绪最好的冷却剂。捍卫语言的真谛: 对语言的腐败保持高度警惕,坚持用准确的词汇描述事物。称“裁员”为裁员,而非“毕业”。认知多样性原则: 主动打破“信息茧房”,有意识地接触和理解相反的观点,哪怕只是为了检验自身立场的坚固性。洞察系统设计: 面对一个规则或平台时,多思考一句:这个系统的设计,最终让谁受益?它鼓励了什么行为,又惩罚了什么行为?归根结底,在一个“武德”日益稀薄的世界里,坚守诚实、公正和同理心,或许会让我们在某些局部竞争中暂时“吃亏”。但从长远来看,这种坚守所塑造的个人品牌、所建立的深度信任、所带来的内心安宁,是任何通过“不讲武德”获取的短期利益都无法比拟的。这不仅是道德的抉择,更是一种深刻的智慧——因为最高明的“术”,永远是回归于“道”。
2025年11月27日
16 阅读
0 评论
6 点赞
2025-09-22
此内容被密码保护
加密文章,请前往内页查看详情
2025年09月22日
7 阅读
0 评论
0 点赞
2025-08-04
音乐收藏
歌单播放点下面的歌单打开歌单列表。{collapse}{collapse-item label="说唱新世代" open}{music-list id="8904187604" color="#1989fa" autoplay="autoplay"/}{/collapse-item}{collapse-item label="邦邦翻唱合集"}{music-list id="12979743215" color="#1989fa" autoplay="autoplay"/}{/collapse-item}{collapse-item label="单曲听播"}{music-list id="2502620711" color="#1989fa" autoplay="autoplay"/}{/collapse-item}{collapse-item label="飙升榜单"}{music-list id="3778678" color="#1989fa" autoplay="autoplay"/}{/collapse-item}{/collapse}
2025年08月04日
51 阅读
1 评论
9 点赞
2025-07-25
飞牛fnos自动部署并自动更新ssl证书
前言 为飞牛OS部署ssl证书,第一步当然需要自己的域名,我使用的是腾讯云的dns服务,因此脚本也是在dnspod的基础上制作。域名的注册及API秘钥的获取网上资料比较多,这里略过。证书服务商我使用的是letsencrypt,因为相比zerossl省了注册这一步。{callout color="#f0ad4e"} 这个脚本实现全自动部署,无需在飞牛OS界面先新增域名,所有操作将在脚本里完成,因此也适用于全新的飞牛OS系统现。{/callout}第一步:打开飞牛OS的SSH功能登陆飞牛OS,在 “系统设置”-->“SSH” 界面,把SSH功能打开。第二步:使用终端工具SSH登陆到飞牛OS终端工具网上很容易找到,这里也略过。SSH的账号密码是飞牛OS界面的账号密码,并通过 sudo -i 切换到 root ,切换时输入飞牛OS界面账号的密码。第三步:下载及安装 acme.sh在 /opt 下创建 acme 目录,并在该目录下载并安装 acme.shmkdir -p /opt/acme && cd /opt/acme && git clone https://gitee.com/neilpang/acme.sh.git && cd acme.sh && ./acme.sh --install -m my@server.com第四步:将脚本复制保存,脚本命名为 acmedeploy.sh ,上传到 /tmp#!/bin/bash # 获取脚本开始运行时间戳 TT=$(date +%s%3N) # 下载并安装 acme.sh #mkdir -p /opt/acme && cd /opt/acme && git clone https://gitee.com/neilpang/acme.sh.git && cd acme.sh && ./acme.sh --install -m my@server.com # acme.sh 脚本路径 ACME_DIR="/opt/acme/acme.sh" # SSL证书域名 export DOMAIN="mydomain.com" # DNS类型,dns_ali dns_dp dns_gd dns_aws dns_cf 等,具体支持列表详见 https://github.com/acmesh-official/acme.sh/wiki/dnsapi export DNS="dns_dp" # 腾讯云dnspod的API秘钥,其他DNS请自行修改变量名及替换脚本 export DP_Id="123456" export DP_Key="abcdefghijklmnopqrstuvwxyz123456" # DNS API 生效等待时间 值(单位:秒),一般120即可 # 某些域名服务商的API生效时间较大,需要将这个值加大(比如900) DNS_SLEEP="120" # 证书服务商,zerossl 和 letsencrypt,我使用letsencrypt,使用zerossl还需要注册 CERT_SERVER="letsencrypt" # zerossl注册邮箱及EAB,访问 https://app.zerossl.com/developer 获取账号 EAB_kid & EAB_hmac_key #Email= #EAB_kid= #EAB_hmac_key= # 飞牛OS SSL证书路径 SSLS_DIR="/usr/trim/var/trim_connect/ssls" # 飞牛OS重启服务命令行 ReloadCMD="systemctl restart webdav.service smbftpd.service trim_nginx.service" # 制作证书 if [[ "${CERT_SERVER}" == "letsencrypt" ]] ; then ${ACME_DIR}/acme.sh --force --log --issue --server ${CERT_SERVER} --dns ${DNS} --dnssleep ${DNS_SLEEP} -d "${DOMAIN}" -d "*.${DOMAIN}" if [ $? -ne 0 ] ; then echo -e "制作证书失败,脚本退出. . ." exit fi fi if [[ "${CERT_SERVER}" == "zerossl" ]] ; then ${ACME_DIR}/acme.sh --register-account -m ${Email} --server ${CERT_SERVER} --eab-kid ${EAB_kid} --eab-hmac-key ${EAB_hmac_key} --issue --dns ${DNS} --dnssleep ${DNS_SLEEP} -d "${DOMAIN}" -d "*.${DOMAIN}" if [ $? -ne 0 ] ; then echo -e "制作证书失败,脚本退出. . ." exit fi fi # 获取证书详细时间戳并创建目录 CertCreateTime="$(${ACME_DIR}/acme.sh --info -d "${DOMAIN}" | grep CertCreateTimeStr= | awk -F= '{print $2}' | sed 's|T| |g' | sed 's|Z||g')" NextRenewTime="$(${ACME_DIR}/acme.sh --info -d "${DOMAIN}" | grep Le_NextRenewTimeStr= | awk -F= '{print $2}' | sed 's|T| |g' | sed 's|Z||g')" CERT_CREATE=$(date -d "${CertCreateTime} 7 hour" +%s) CERT_CREATE_TT=$(date -d "${CertCreateTime} 7 hour" +%s%3N) CERT_RENEW=$(date -d "${NextRenewTime} 1 month 7 hour" +%s) CERT_RENEW_TT=$(date -d "${NextRenewTime} 1 month 7 hour" +%s%3N) mkdir -p ${SSLS_DIR}/"${DOMAIN}"/${CERT_CREATE} DOMAIN_SSL_DIR=${SSLS_DIR}/"${DOMAIN}"/${CERT_CREATE} # 安装证书到域名证书目录,acme.sh部署API暂未支持飞牛,详见 https://github.com/acmesh-official/acme.sh/wiki/deployhooks ${ACME_DIR}/acme.sh --install-cert -d "${DOMAIN}" --cert-file ${DOMAIN_SSL_DIR}/"${DOMAIN}".crt --key-file ${DOMAIN_SSL_DIR}/"${DOMAIN}".key --fullchain-file ${DOMAIN_SSL_DIR}/fullchain.crt --ca-file ${DOMAIN_SSL_DIR}/issuer_certificate.crt --reloadcmd "${ReloadCMD}" # 配置证书文件权限 chmod 755 ${DOMAIN_SSL_DIR}/"${DOMAIN}".crt chmod 755 ${DOMAIN_SSL_DIR}/"${DOMAIN}".key chmod 755 ${DOMAIN_SSL_DIR}/fullchain.crt chmod 755 ${DOMAIN_SSL_DIR}/issuer_certificate.crt # 获取证书颁发者信息 CERT_ISSUED_BY=$(openssl x509 -in ${DOMAIN_SSL_DIR}/"${DOMAIN}".crt -noout -issuer | awk -F' = ' '{print $4}') # 获取证书加密类型信息 SIG_ALGO=$(openssl x509 -in ${DOMAIN_SSL_DIR}/"${DOMAIN}".crt -noout -text | awk '/Signature Algorithm/ {print $3}' | awk 'END {print}') shopt -s nocasematch case $SIG_ALGO in *RSA*) ALGO_TYPE="RSA" ;; *ECDSA*) ALGO_TYPE="ECDSA" ;; *ECC*) ALGO_TYPE="ECC" ;; *SM2*) ALGO_TYPE="SM2" ;; *) ALGO_TYPE="UNKNOW" ;; esac # 新增或更新飞牛OS证书数据库信息 if [ ! -z $(psql -t -A -U postgres -d trim_connect -c "SELECT domain FROM cert WHERE domain = '"${DOMAIN}"';" | sed '/^\s*$/d') ] ; then # 飞牛OS更新数据库证书信息 psql -U postgres -d trim_connect -c "UPDATE cert SET valid_from = ${CERT_CREATE_TT}, valid_to = ${CERT_RENEW_TT}, encrypt_type = '${ALGO_TYPE}', issued_by = '${CERT_ISSUED_BY}', last_renew_time = ${TT}, des = '由acme.sh自动生成的证书', private_key = '${DOMAIN_SSL_DIR}/"${DOMAIN}".key', certificate = '${DOMAIN_SSL_DIR}/"${DOMAIN}".crt', issuer_certificate = '${DOMAIN_SSL_DIR}/issuer_certificate.crt', status = 'suc', created_time = ${TT}, updated_time = ${TT} WHERE domain = '"${DOMAIN}"';" if [ $? -ne 0 ] ; then echo -e "更新数据库证书信息失败,脚本退出. . ." exit fi else DOMAIN_ID=$[$(psql -t -A -U postgres -d trim_connect -c "SELECT id FROM cert ORDER BY id ASC;" | awk 'END {print}')+1] psql -U postgres -d trim_connect -c "INSERT INTO cert VALUES ("${DOMAIN_ID}", '"${DOMAIN}"', '*."${DOMAIN}","${DOMAIN}"', ${CERT_CREATE_TT}, ${CERT_RENEW_TT}, '${ALGO_TYPE}', '${CERT_ISSUED_BY}', ${TT}, '由acme.sh自动生成的证书', 0, null, 'upload', null, '${DOMAIN_SSL_DIR}/"${DOMAIN}".key', '${DOMAIN_SSL_DIR}/"${DOMAIN}".crt', '${DOMAIN_SSL_DIR}/issuer_certificate.crt', 'suc', ${TT}, ${TT});" if [ $? -ne 0 ] ; then echo -e "更新数据库证书信息失败,脚本退出. . ." exit fi fi # 更新飞牛OS NGINX 配置文件 \cp -rfL /usr/trim/etc/network_gateway_cert.conf /usr/trim/etc/network_gateway_cert.conf.${TT}.bak NETWORK_GATEWAY_CERT="{\"host\":\""${DOMAIN}"\",\"cert\":\"${DOMAIN_SSL_DIR}/fullchain.crt\",\"key\":\"${DOMAIN_SSL_DIR}/"${DOMAIN}".key\"}," grep -E ""${DOMAIN}"" /usr/trim/etc/network_gateway_cert.conf >/dev/null 2>&1 if [ $? -eq 0 ] ; then sed -i "s|{\"host\":.*\/usr\/.*"${DOMAIN}".*},|${NETWORK_GATEWAY_CERT}|g" /usr/trim/etc/network_gateway_cert.conf else awk '{gsub(/^./,""); print}' /usr/trim/etc/network_gateway_cert.conf > /tmp/fn1 sed -i "1i[${NETWORK_GATEWAY_CERT}" /tmp/fn1 sed -i ':a;N;$!ba;s/\n//g' /tmp/fn1 \cp -rfL /tmp/fn1 /usr/trim/etc/network_gateway_cert.conf rm -rf /tmp/fn1 fi # 飞牛OS删除无效证书 find ${SSLS_DIR}/"${DOMAIN}"/ -mtime +90 -type d -exec rm -rf {} \; > /dev/null 2>&1 ${ReloadCMD}脚本里有几个必须修改的变量,如果变量不正确将影响脚本的正常运行DOMAIN ,修改为自己的域名,域名不包含二级域名,如 abc.comDNS,修改为自己使用的DNS服务商,如腾讯云dnspod是 dns_pdP_Id 和 DP_Key,即dnspod的API秘钥信息第五步:移动并检查上传的脚本将传到 /tmp 的脚本移到 /opt/acme,并删除换行符cd /opt/acme/ mv /tmp/acmedeploy.sh . sed -i "s/\r//" acmedeploy.sh第六步:执行脚本,直至脚本执行完毕bash acmedeploy.sh第七步:重新登陆飞牛OS,已不再提示网站不安全点击URL左侧的锁可以查看证书的相关信息,在 系统设置 --> 安全性 --> 证书 界面也可查到对应域名的证书及相关信息第八步:根据自己的习惯配置定时任务在SSH终端界面输入crontab -e建议把acme.sh默认的定时任务注释掉,新增一条0 0 * * 1 bash /opt/acme/acmedeploy.sh >> /opt/acme/acmedeploy.log 2>&1即每周一凌晨零点执行一次生成证书操作,因为证书有效期有90天,所以调整为每个月执行一次也是没问题的至此飞牛fnos使用acme.sh自动部署并自动更新ssl证书的所有操作完成。
2025年07月25日
210 阅读
0 评论
2 点赞
2025-07-09
飞牛NAS自建影视-MoonTV
本项目来自LibreSpark大佬项目地址 https://github.com/senshinya/MoonTV示例地址 https://tv.tnas.xinMoonTV{callout color="#0000ff"} 🎬 MoonTV 是一个开箱即用的、跨平台的影视聚合播放器。它基于 Next.js 14 + Tailwind CSS + TypeScript 构建,支持多资源搜索、在线播放、收藏同步、播放记录、本地/云端存储,让你可以随时随地畅享海量免费影视内容。{/callout}✨ 主要特性🔍 多源聚合搜索:内置数十个免费资源站点,一次搜索立刻返回全源结果。📄 丰富详情页:支持剧集列表、演员、年份、简介等完整信息展示。▶️ 流畅在线播放:集成 HLS.js & VidStack。❤️ 收藏 + 继续观看:Docker 部署支持 Redis 存储,多端同步进度。📱 PWA:离线缓存、安装到桌面/主屏,移动端原生体验。🌗 响应式布局:桌面侧边栏 + 移动底部导航,自适应各种屏幕尺寸。🚀 极简部署:一条 Docker 命令即可将完整服务跑起来,或免费部署到 Vercel。👿 智能去广告:自动跳过视频中的切片广告(实验性)🌐CMS采集站源兼容性本项目支持标准的苹果CMS V10 API格式。自定义API需遵循以下格式:搜索接口: https://example.com/api.php/provide/vod/?ac=videolist&wd=关键词详情接口: https://example.com/api.php/provide/vod/?ac=detail&ids=视频ID🚀 部署指南打开飞牛NAS打开【Docker】,点击【Compose】击【新增项目】随便输入个项目名称(请不要使用中文),然后点击【路径】击【Docker】文件夹,再点击【新建文件夹】输入一个文件夹名称(请不要使用中文),接着点击【确定】确认没问题之后点击【确定】来源选【创建docker-compose.yml】复制下面内容,粘贴到【1】的后面local storage 版本services: moontv: image: ghcr.io/senshinya/moontv:latest container_name: moontv restart: unless-stopped ports: - '3000:3000' environment: - PASSWORD=your_password # 如需自定义配置,可挂载文件 # volumes: # - ./config.json:/app/config.json:roRedis 版本(推荐,多账户数据隔离,跨设备同步)services: moontv-core: image: ghcr.io/senshinya/moontv:latest container_name: moontv restart: unless-stopped ports: - '3000:3000' environment: - USERNAME=admin - PASSWORD=admin_password - NEXT_PUBLIC_STORAGE_TYPE=redis - REDIS_URL=redis://moontv-redis:6379 - NEXT_PUBLIC_ENABLE_REGISTER=true networks: - moontv-network depends_on: - moontv-redis # 如需自定义配置,可挂载文件 # volumes: # - ./config.json:/app/config.json:ro moontv-redis: image: redis container_name: moontv-redis restart: unless-stopped networks: - moontv-network # 如需持久化 # volumes: # - ./data:/data networks: moontv-network: driver: bridge如果你的服务器是在国内的话,需要使用代理,否则会很慢。我使用的是http://ghcr.nju.edu.cn如果不能获取数据说明代理过期,需要自己寻找。弄好之后,勾选【创建项目后立即启动】,最后点击【确定】提示【Container moontv Started】说明项目已经开始了,可以把这个黑框【x】掉。这样,项目就创建完成了。 打开浏览器,输入【飞牛ip:3000】 我这里是192.168.1.15:3000我这边配置了密码,进入之后就会有【公告】进入之后就可以开始搜索使用了🔧 环境变量USERNAME redis 部署时的管理员账号PASSWORD 默认部署时为唯一访问密码,redis 部署时为管理员密码SITE_NAME 站点名称 默认MoonTVANNOUNCEMENT 站点公告 任意字符串 本网站仅提供影视信息搜索服务,所有内容均来自第三方网站。本站不存储任何视频资源,不对任何内容的准确性、合法性、完整性负责。NEXT_PUBLIC_STORAGE_TYPE 播放记录/收藏的存储方式 localstorage(本地浏览器存储)、redis(仅 docker 支持) 默认localstorageREDIS_URL redis 连接 url,若 NEXT_PUBLIC_STORAGE_TYPE 为 redis 则必填 连接 url 默认为空NEXT_PUBLIC_ENABLE_REGISTER 是否开放注册,仅在 redis 部署时生效 true / false 默认falseNEXT_PUBLIC_SEARCH_MAX_PAGE 搜索接口可拉取的最大页数1-50 默认5NEXT_PUBLIC_AGGREGATE_SEARCH_RESULT 搜索结果默认是否按标题和年份聚合 因为流量不会经过NAS,也就不会占用家里的上行带宽。体验真的还不错哦!想要什么随时搜,也不用担心会撑爆NAS的硬盘空间了!手机端和电脑端体验都不错~
2025年07月09日
62 阅读
0 评论
3 点赞
2025-07-08
飞牛OS通过compose安装苹果cmsv10
{mtitle title="部署"/} 以下是通过 Docker Compose 在飞牛 OS 上部署苹果 CMS V10 的完整流程:🔧 1. 准备工作环境要求:飞牛 OS 需已启用 Docker 服务(飞牛 OS 内置 Docker 支持,无需额外配置)。确保存储路径可用(如 "/vol1/docker/MacCms"),用于持久化数据。📝 2. 编写 docker-compose.yml 文件创建以下配置文件(以提供的方案为基础优化):version: '3.8' services: mysql: image: mysql:5.7 container_name: maccms_mysql restart: always environment: MYSQL_ROOT_PASSWORD: "123456" # 数据库root密码 MYSQL_DATABASE: maccms # 初始数据库名 volumes: - ./data/mysql:/var/lib/mysql # MySQL数据持久化 ports: - "3306:3306" # 数据库端口映射 maccms: image: zhixinfang/maccms:latest # 定制苹果CMS镜像 container_name: maccms_web restart: always ports: - "8054:80" # Web访问端口 volumes: - ./data/html:/var/www/html # 程序文件持久化 depends_on: - mysql # 依赖MySQL服务⚙️ 3. 启动服务部署完成后自动启动服务。🌐 4. 安装苹果 CMS访问安装页面:浏览器打开 "http://飞牛OS的IP:8054",进入安装向导。填写数据库信息:服务器地址:maccms_mysql(使用Docker容器名,非localhost)数据库名:maccms账号:root密码:123456覆盖数据库:选择“覆盖”(首次安装必选)设置管理员账号:自定义管理员用户名和密码。🎨 5. 配置模板与权限模板安装:下载模板文件(如官方提供的模板包),解压至本地映射目录:./data/html/template/后台设置路径:系统 → 网站参数配置 → 更换“网站模板”和“手机模板”。权限修复(若模板无法访问):chown -R root:root /vol1/docker/MacCms/data/html/template # 替换为你的实际路径{cloud title="模板以及采集地址" type="lz" url="https://xiaoxu.lanzoub.com/iAWHc2zg1yhg?webtp=VGUCYlszAGUCbQRgAWdQYVIxVGdQc1RkVWZTZ1c9VmFUZVAwAG9QMlN5B2BQM1NnAHQHNgBxAzMHMVtlUyFWZlRiAmJbegBiAmUEZAFjUGZSalRpUGlUb1UxUzFXOVYxVGBQMABpUGVTPQcyUDxTYAA_bBzAAOQNiB2RbaVNsVmVUNwIxW2QAKAJk?w1" password=""/}🔄 6. 采集资源与后续管理资源采集:后台进入 采集 → 自定义资源站,添加采集接口。后台访问:默认后台地址为 http://IP:8054/zhixinfang.php(非admin.php)。⚠️ 常见问题解决问题现象 解决方案安装后提示 File not found 使用正确后台地址 http://IP:8054/zhixinfang.php数据库连接失败 检查容器名maccms_mysql是否一致,确认MySQL容器正常运行(docker logs maccms_mysql)模板无法显示 执行chown修复目录权限,或检查模板文件路径层级💎 总结通过 Docker Compose 部署苹果 CMS V10,飞牛 OS 提供了便捷的容器管理能力,几分钟即可完成影视站搭建。关键点包括:持久化路径映射(MySQL数据、CMS程序);数据库连接使用容器名而非localhost;后台地址需使用定制路径zhixinfang.php。如需模板或采集接口资源,可参考开源社区(如提供的网盘链接)。此方案适合轻量级影视站需求,结合飞牛 OS 的 Docker 管理界面,后续更新和维护更为简便。
2025年07月08日
74 阅读
0 评论
2 点赞
2025-06-23
飞牛Docker搭建一个简单图床easyimage
前言 {callout color="#f0ad4e"} 在现代互联网环境中,图片的存储与分享变得越来越重要。无论是个人博客、社交媒体运营,还是前端开发,拥有一个稳定、高效的图床能够极大地方便图片管理。{/callout} EasyImage 简单图床-是一款功能强大无数据库的图床 2.0版,支持 Docker 部署,提供简洁的 Web 界面和 API,方便用户快速上传、管理和获取图片链接。 本项目使用到的githubhttps://github.com/icret/EasyImages2.0直接在docker新增一个compose项目即可,新建项目:easyimagecompose配置如下:services: easyimage: image: ddsderek/easyimage:latest # 指定要使用的镜像 container_name: easyimage # 设置容器名称 ports: - '8780:80' # 映射宿主机的 8780 端口到容器的 80 端口 environment: - TZ=Asia/Shanghai # 设置时区为上海 - PUID=1000 # 指定用户的 UID(用户 ID) - PGID=1000 # 指定用户的 GID(组 ID) - DEBUG=false # 关闭调试模式 volumes: - './easyimage/config:/app/web/config' # 映射本地 config 目录到容器内 - './easyimage/i:/app/web/i' # 映射本地 i 目录到容器内 restart: always # 设定容器始终重启 成功以后需要打开自己相应的端口(8780)防火墙就可以web端访问了,打开ip加端口进入初始化页面。管理员登录初次登录会检测环境更多设置自行探索
2025年06月23日
47 阅读
0 评论
3 点赞
1
2
...
6