GTX690战术核显卡导弹 - 工具
type: channel
link: https://www.nekopara.uk/tag/%E5%B7%A5%E5%85%B7/
items: 使用 EasyTier 自建服务器组网
items: Linux下自定义NVIDIA GPU的风扇转速曲线
items: 二次开发 Typecho 后台服务器状态查看插件
items: Python实现浪潮SA5212M4风扇根据温度自动调节
items: Alpine Linux 3.20 编译安装 ZeroTier
items: Filebrowser终极个性化！
items: "自主创新"网页ACME申请客户端
items: 个性化Filebrowser界面，NAS也要Kawaii~~~!
items: 这可能是最骚的高考倒计时软件
items: UP主的垃圾文件生成小工具

使用 EasyTier 自建服务器组网
type: item
date: 2025-08-24T16:37:00+08:00
description: EasyTier自建服务器组网教程之前有使用过 ZeroTier 进行校园网内网环境下设备穿透组网，但是发现并不是那么好用，自建服务器效果也不太好，官方服务器慢的要死。偶然的机会，听朋友介绍了 EasyTier ，试了一下确实不错，写一篇博客记录一下折腾过程。官方文档算比较完善了，看看自己也能搭建成功，如果你只是单纯想要自建一个服务器并且配置电脑进行连接组建虚拟局域网，不使用其他的功能，那就可以参考这篇教程。下载 EasyTier直接在官方的文档界面就可以下载，而且提供了Github加速，非常贴心。直接wget梭哈：cd /opt/ wget https://ghfast.top/https://github.com/EasyTier/EasyTier/releases/download/v2.4.2/easytier-linux-x86_64-v2.4.2.zip unzip easytier-linux-x86_64-v2.4.2.zip rm easytier-linux-x86_64-v2.4.2.zip cd easytier-linux-x86_64/配置 EasyTier 启动参数注意，请在root权限下运行 EasyTier ，因为创建 TUN 设备需要root权限。服务端配置在服务器端，开放11010端口的TCP和UDP防火墙连接许可。然后启动服务端：./easytier-core --private-mode true --network-name nekopara-uk --network-secret 3bbca7ed-a114-4821-b61f-f3b214af97da -i 10.6.6.1参数解释：--private-mode：启用私有模式--network-name：网络名称（可以理解为客户端连接时的用户名）--network-secret：连接的密钥，建议使用uuidgen命令生成UUID作为密码。-i：服务端IP地址网段，这里指定了10.6.6.1，那服务器给连接的节点分配的就是10.6.6.2-10.6.6.255这个个IP段。至此，服务端已经配置完毕，是不是很简单？启动后服务端会打印toml格式配置文件文本，可以复制出来方便后面指定配置文件启动：NekoHost:/data/easytier-linux-x86_64# ./easytier-core --private-mode true --network-name nekopara-uk --network-secret 3bbca7ed-a114-4821-b61f-f3b214af97da -i 10.6.6.1 Starting easytier from cli with config: ############### TOML ############### ipv4 = "10.6.6.1" listeners = [ "tcp://0.0.0.0:11010", "udp://0.0.0.0:11010", "wg://0.0.0.0:11011", "ws://0.0.0.0:11011/", "wss://0.0.0.0:11012/", ] rpc_portal = "0.0.0.0:0" tcp_whitelist = [] udp_whitelist = [] [network_identity] network_name = "nekopara-uk" network_secret = "3bbca7ed-a114-4821-b61f-f3b214af97da" [flags] private_mode = true ----------------------------------- 2025-08-24 14:14:12: [82a75e04-d647-4538-a9a4-54edabe9f469] new listener added. listener: tcp://0.0.0.0:11010 2025-08-24 14:14:12: [82a75e04-d647-4538-a9a4-54edabe9f469] new listener added. listener: tcp://[::]:11010 2025-08-24 14:14:12: [82a75e04-d647-4538-a9a4-54edabe9f469] new listener added. listener: udp://0.0.0.0:11010 2025-08-24 14:14:12: [82a75e04-d647-4538-a9a4-54edabe9f469] new listener added. listener:…

Linux下自定义NVIDIA GPU的风扇转速曲线
type: item
date: 2025-07-28T16:19:00+08:00
description: 在Linux中自定义N卡的风扇转速曲线我个人对硬件的温度比较重视，认为是越低越好，显卡这玩意超过70度我觉得就已经是高温了。由于我已经主力使用Linux系统很久了，一直都是在需要给显卡上强度的时候，直接拉满显卡风扇。但是后面发现不是每时每刻都需要跑满的，没有负载的时候风扇还在呼呼吹确实是有点浪费了，于是就想搓一个bash脚本，用于显卡风扇控制。脚本本体没错，又是面向LLM编程！#!/bin/bash # 初始化上一次的风扇转速 last_speed=-1 while true; do # 获取 GPU 温度（单位：摄氏度） temp=$(nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader,nounits -i 0) # 判断温度范围并计算风扇转速 if (( $(echo "$temp <= 40" | bc -l) )); then current_speed=40 elif (( $(echo "$temp >= 70" | bc -l) )); then current_speed=100 else # 线性插值：温度在 40~70°C 之间，速度从 40%~100% current_speed=$(echo "scale=0; 40 + 2 * ($temp - 40)" | bc) fi # 如果转速发生变化，才执行设置并输出调试信息 if [ "$current_speed" -ne "$last_speed" ]; then echo "GPU Temp: $temp°C → Fan Speed: $current_speed%" nvidia-settings -a "[gpu:0]/GPUFanControlState=1" -a "[fan:0]/GPUTargetFanSpeed=$current_speed" > /dev/null 2>&1 last_speed=$current_speed fi # 每秒检测一次 sleep 1 done脚本说明脚本逻辑：40度以下，转速40%，40度到70度，线性递增，到70度及以上时为100%。至于为什么不是停转？因为我的是涡轮卡，没法停（ ，需要的话请自行修改。使用方法：把代码保存为set_GPU_fan.sh，赋予执行权限后用root执行。建议配合tmux挂在后台。注意事项：这个脚本只针对单GPU，单风扇的情况，如果你是多GPU或者nvidia-settings厘米出现了多个风扇控制，就需要进行脚本的完善和修改。我这个脚本只在有桌面环境的情况下测试过没问题，对于无GUI的情况，我是没有测试过的，据说是要运行X Server才可以运行nvidia-settings。希望这个脚本可以更好的帮助你控制显卡温度。

二次开发 Typecho 后台服务器状态查看插件
type: item
date: 2025-05-08T17:38:00+08:00
description: 发现Typecho后台服务器状态插件在翻Typecho插件的时候，我偶然发现了两双筷子写的Typecho后台服务器状态查看插件，于是就尝试了一下下。这个插件在桌面端网页没问题，感觉还挺不错的。但是一旦变成移动端，后台的布局就会出现问题，逼死强迫症。而且，CPU利用率有时候还会变成0.9999999999%这种离谱的数据，我寻思着就不能取两位小数好看一点吗？于是，我决定，自己修改代码，把服务器信息移动到页面底部的位置，并且修改显示数据的逻辑，让信息看着更加舒适一点。（其实也不完全是我写，是面向LLM编程 X）修改代码的过程首先，需要把注册方法的地方改为页面底部Typecho_Plugin::factory('admin/footer.php')->begin = array('LinuxInfo_Plugin', 'render');然后就是修改一下插入的样式：echo <<<STR $info_str STR;因为我觉的系统信息用鼠标悬浮预览不明显，于是修改为直接独立一行把信息全部展示：return <<<SYS_INFO 服务器信息: 持续运行：{$uptime}，Web服务器：{$_SERVER['SERVER_SOFTWARE']}，PHP 版本：{$php['version']}，SAPI 接口：{$php['sapi']}，PHP内存限制：{$php['mem_max']}，上传文件限制：{$php['up_max']} SYS_INFO;以及让LLM帮忙完善了CPU信息获取的逻辑：private static function cpu_info(){ function GetCoreInformation() { $data = file('/proc/stat'); $cores = []; foreach( $data as $line ) { if( preg_match('/^cpu[0-9]/', $line) ) { $info = explode(' ', $line); $cores[] = [ 'user' => $info[1], 'nice' => $info[2], 'sys' => $info[3], 'idle' => $info[4], 'iowait' => $info[5], 'irq' => $info[6], 'softirq' => $info[7] ]; } } return $cores; } function GetCpuPercentages($stat1, $stat2) { if(count($stat1) !== count($stat2)){ return; } $cpus = []; for( $i = 0, $l = count($stat1); $i < $l; $i++) { $dif = []; $dif['user'] = $stat2[$i]['user'] - $stat1[$i]['user']; $dif['nice'] = $stat2[$i]['nice'] - $stat1[$i]['nice']; $dif['sys'] = $stat2[$i]['sys'] - $stat1[$i]['sys']; $dif['idle'] = $stat2[$i]['idle'] - $stat1[$i]['idle']; $dif['iowait'] = $stat2[$i]['iowait'] - $stat1[$i]['iowait']; $dif['irq'] = $stat2[$i]['irq'] - $stat1[$i]['irq']; $dif['softirq'] = $stat2[$i]['softirq'] - $stat1[$i]['softirq']; $total = array_sum($dif); $cpu = []; foreach($dif as $x=>$y) $cpu[$x] = round($y / $total * 100, 2); $cpus['CPU' . $i] = $cpu; } return $cpus; } $stat1 = GetCoreInformation(); sleep(1); $stat2 = GetCoreInformation(); $data = GetCpuPercentages($stat1, $stat2); $overall_cpu_usage = 0; $core_details = []; foreach ($data as $core => $usage) { $core_usage = 100 - $usage['idle']; $overall_cpu_u…

Python实现浪潮SA5212M4风扇根据温度自动调节
type: item
date: 2025-03-19T20:43:00+08:00
description: 浪潮SA5212M4风扇调速Python脚本写脚本的原因之前每次开机都要进BMC把风扇转速调低，不然吵得要死。但是又不能调得太低，因为如果调的太低怕一不留神温度就飙上去了，导致硬件出问题。正好前几天看到了一个别人用Python写的简易风扇一键调节脚本，但是只能设置固定转速，没办法根据温度动态调节。于是我重构了这个脚本，做到了根据温度动态调节风扇转速。环境要求系统要求：Linux（Windows不可用，因为没有sensors软件包）软件环境：Python3环境，sensors软件包（用于获取CPU温度）Python源代码import subprocess import re import http.client import time # 全局变量用于存储会话连接和令牌 conn = None session_cookie = None def login(IP, User, Password): global conn, session_cookie if conn is not None: conn.close() # 关闭旧连接 conn = http.client.HTTPConnection(IP) payload = "WEBVAR_USERNAME=" + User + "&WEBVAR_PASSWORD=" + Password headers = { 'Content-Type': "application/x-www-form-urlencoded", 'Origin': "http://{}".format(IP), 'Referer': "http://{}/index.html".format(IP), 'User-Agent': "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36 Edg/130.0.0.0", } conn.request("POST", "/rpc/WEBSES/create.asp", payload, headers) response = conn.getresponse().read().decode("utf-8") match = re.search(r"'SESSION_COOKIE' : '([^']*)'", response) if match: session_cookie = match.group(1) else: raise ValueError("SESSION_COOKIE not found in the string") def set_fan_speed(IP, fan_speeds): global conn, session_cookie # 设置风扇为手动模式 payload1 = "MODE=1" headers1 = { 'Content-Type': "application/x-www-form-urlencoded", 'Cookie': "BMC_IP_ADDR={}; SessionCookie=".format(IP) + session_cookie, } conn.request("POST", "/rpc/setfanmode.asp", payload1, headers1) conn.getresponse() # 调整风扇转速 headers2 = { 'Content-Type': "application/x-www-form-urlencoded", 'Cookie': "SessionCookie=" + session_cookie + "; BMC_IP_ADDR={}".format(IP), } for fan_ID, Speed_x in fan_speeds.items(): payload2 = "ID=" + fan_ID + "&PERCENT=" + Speed_x conn.request("POST", "/rpc/setfanspeed.asp", payload2, headers2) conn.getresponse() print("调整风扇{}转速{}%".format(fan_ID, Speed_x)) def get_package_temperatures(): output = subprocess.check_output(['sensors']).decode('utf-8') pattern = re.compile( r'^Package id (\d+):\s+\+([\d.]+)…

Alpine Linux 3.20 编译安装 ZeroTier
type: item
date: 2025-02-25T20:36:00+08:00
description: 为Alpine Linux 3.20 编译安装ZeroTier没有ZeroTier软件包！由于我云服务器使用的是Alpine Linux来最大程度节省资源用于实际服务，而ZeroTier官方没有给出Alpine Linux的安装包，所以要用点野路子才能安装上。使用官方的安装脚本 Be Like:Neko_SG:~# curl -s https://install.zerotier.com | bash *** ZeroTier Service Quick Install for Unix-like Systems *** Tested OSes / distributions: *** MacOS (10.13+) (just installs ZeroTier One.pkg) *** Debian Linux (7+) *** RedHat/CentOS Linux (6+) *** Fedora Linux (16+) *** SuSE Linux (12+) *** Mint Linux (20+) *** Kali Linux (2024.1+) *** Supported architectures vary by OS / distribution. We try to support *** every system architecture supported by the target. *** Please report problems by opening a GitHub issue or Pull Request at: *** https://github.com/zerotier/install.zerotier.com *** Please include the content of `/etc/os-release` for your distribution. *** Detecting Linux Distribution *** Unknown or unsupported distribution! Aborting. 想从包管理器安装 Be Like:Neko_SG:~# apk add zerotier fetch https://dl-cdn.alpinelinux.org/alpine/latest-stable/main/x86_64/APKINDEX.tar.gz fetch https://dl-cdn.alpinelinux.org/alpine/latest-stable/community/x86_64/APKINDEX.tar.gz ERROR: unable to select packages: zerotier (no such package): required by: world[zerotier] Neko_SG:~# apk add zerotier-one ERROR: unable to select packages: zerotier-one (no such package): required by: world[zerotier-one] Neko_SG:~# apk search zerotier Neko_SG:~# 一个思路是去用别的发行版的软件包，解包提取二进制文件。但是由于Alpine Linux是用的C语言库是musl而不是libc，大部分发行版用点都是libc，所以不一定可以兼容。还有一个办法，那就相当硬核了，自己编译后，安装。这个方法肯定会遇到很多技术上的问题，所以也是最有挑战性的一条路子，但是，我还是决定开干。下载源代码之所以可以这么玩，是因为ZeroTier是开源的。 开源大法好！先创建一个用于干活的文件夹，然后直接从Github的Release下载源代码：mkdir /data/zerotier cd /data/zerotier wget https://github.com/zerotier/ZeroTierOne/archive/refs/tags/1.14.2.zip unzip 1.14.2.zip cd ZeroTierOne-1.14.2/准备相关环境进行编译因为Alpine Linux是轻量发行版，所以缺失的库很多，需要自己手动装。我也是边报错边安装，搞了好久。我的版本是Alpine Linux 3.20，以下是需要安装的软件包：apk add util-linux pkgconfig openssl-dev libffi cargo linux-headers g++ gcc make进行编译进入源代码目录，执行：make -j$(nproc)如果没有报错，一个会顺利在目录生成一个zero…

Filebrowser终极个性化！
type: item
date: 2024-12-27T16:16:00+08:00
description: 个性化你的Filebrowser！Filebroswer的优点为什么选择Filebroswer呢？原因不外乎就是以下几点∶支持https实时同步文件目录更改，更新及时不需要数据库界面美观友好管理方便支持多用户支持分享文件可以定制界面而最后这一点，也为后面进行美化奠定了基础。前置准备为了保证操作的环境相同，如果你是按照这篇教程来，记得选择File Browser 2.28.0。FileBrowser的基本配置，可以参考我之前的文章：个性化Filebrowser界面，NAS也要Kawaii~~~!个性化Filebrowser你可以快速把我预设的文件下载后直接解压到Filebrowser所在文件夹，修改替换背景图，完成个性化。文件目录结构长这样：├── filebrowser ├── filebrowser.db └── style ├── custom.css ├── favicon.ico ├── img │ ├── background.jpg │ ├── icons │ │ ├── android-chrome-192x192.png │ │ ├── android-chrome-512x512.png │ │ ├── apple-touch-icon.png │ │ ├── browserconfig.xml │ │ ├── favicon-16x16.png │ │ ├── favicon-32x32.png │ │ ├── mstile-144x144.png │ │ ├── mstile-150x150.png │ │ ├── mstile-310x150.png │ │ ├── mstile-310x310.png │ │ ├── mstile-70x70.png │ │ └── safari-pinned-tab.svg │ ├── login.jpg │ ├── logo.svg │ └── lolicon.ttf └── manifest.json 4 directories, 21 files其中，最重要的配置文件就是custom.css了。这个文件决定了全局的外观。style文件夹我已经打包好了：style.7z下载回去，解压到程序的目录按照下图设置即可看到效果：下面是设置完成后的效果，我设置的是粉色主题的，稍微搭配一点蓝色：登陆页面：主界面：多选文件：复制文件对话框：移动文件对话框：删除文件对话框：切换不同的显示方式：下载文件对话框：上传文件对话框：文件信息对话框：搜索界面：设置界面：上传文件界面：CSS文件内容和解释custom.css文件内容这个文件定义了几乎全部的样式，文件内容如下： /** 页面字体 */ @font-face { font-family: 'cute'; src: local('cute'), local('cute'), url(/static/img/lolicon.ttf) format('truetype'); } * { font-family: "cute", sans-serif; } /** 加载动画 */ .spinner > div { background-color: #ff5f77; backdrop-filter: blur(6px); background-color: orangered\0; /* IE 样式 */ } /** 普通文字、字体图标颜色 */ .action, #listing h2, #search .boxes h3, .card h3, .collapsible > label *, .dashboard p label, .message { color: #ff5f77; } /** 链接文字颜色 */ a { color: #ff5f77; backdrop-filter: blur(6px); } /** 输入框、表格标题文字颜色 */ #search.active i, #search.active input, table th { backdrop-filter: blur(6px); color: #ff5f77; } /** 主体、弹窗颜色 */ #loading, #login, #search.active #input, body, header, .ace-chrome .ace_gutter-active-line { background-image: url(/static/img/background.jpg); background-repeat: no-repeat; background-attachment: fixed; background-position: center ce…

"自主创新"网页ACME申请客户端
type: item
date: 2024-10-17T19:26:00+08:00
description: 二次开发ACME网页版申请客户端跑路了！今天突然发现，之前用的host.mw申请一年免费证书的网站，一年免费证书跑路了，只有90天免费证书了。于是，我在想之前用的那个ACME单网页客户端会不会也有可能跑路。因为他之前的Gitee的page前段时间已经没办法访问了。有一说一，确实挺好用的，贴个GitHub地址：github.com/xiangyuecn/ACME-HTML-Web-Browser-Client自主创新我就去GitHub把他的HTML文件下载了下来，进行"自研"，删掉了一点我看着不太舒服的东西，然后加上点装饰效果，进行"自主创新"。以下是"自主创新"后的代码: <link rel="shortcut icon" type="image/png" href="[binary]" /> 免费SSL证书申请 Loading... 网页版ACME客户端 ACME Web Browser Client 功能用途本网页客户端用于：向 Let's Encrypt、ZeroSSL、Google 等支持 ACME 协议的证书颁发机构，免费申请获得用于 HTTPS 的 SSL/TLS 域名证书（RSA、ECC/ECDSA），支持多域名和通配符泛域名；只需在现代浏览器上操作即可获得 PEM 格式纯文本的域名证书，不依赖操作系统环境，无需下载和安装软件，纯手动操作，只专注于申请获得证书这一件事。 Functional useThis web client is used to: apply for free SSL/TLS domain name certificates (RSA, ECC/ECDSA) for HTTPS from Let's Encrypt , ZeroSSL , Google and other certificate authorities that support the ACME protocol, and support multiple domain names and wildcard pan-domain names; Simply operate on a modern browser to obtain a domain name certificate in plain text in PEM format, does not depend on the operating system environment, does not need to download and install software, and is purely manual, only focus on the only thing that is to apply for and obtain a certificate. 简单易用点点鼠标 Ctrl+C Ctrl+V 就能完成证书的申请，全程需要的操作少，每一步都有保姆级操作提示，UI友好大气美观；本客户端不需要注册账号、更不需要登录。 Easy to useClick the mouse and Ctrl+C Ctrl+V to complete the certificate application. The whole process requires less operations, and there are nanny level operation prompts at each step; UI friendly, atmospheric and beautiful; This client does not need to register an account, and does not need to log in. 开源项目本网页客户端源码已开源，访问网址由托管仓库提供，源码透明可追溯。 Open source projectThe source code of the client side of this webpage has been open sourced, and the access URL is provided by the hosting warehouse, and the source code is transparent and traceable. 单一文件本网页客户端仅一个静态 HTML 文件，不依赖其他任何文件；因此可以直接保存到你本地（右键-另存为），即可通过浏览器打开。 A single fileThis web client is only a single static HTML web page file and does not depend on any other files; therefo…

个性化Filebrowser界面，NAS也要Kawaii~~~!
type: item
date: 2024-09-17T11:45:00+08:00
description: 让你的 Filebrowser 变好看为什么要个性化？虽然filebriwser本身就是单文件的一个轻量级网盘服务端，简洁美观，但是对于我这种喜欢骚里骚气的人来说，纯白色的背景和图标显然不够好看，于是，我就需要把它个性化。准备工作相关的个性化文件需要放在程序同一个目录的style文件夹内，然后进行设置即可生效，虽然官方文档也写了如何个性化，但是写的不够清楚。于是我在网上东拼西凑，找到了设置的方法，进行整合，需要的可以直接使用我整合过的版本。我的版本设置了登陆界面背景，主页面背景，程序图标，界面字体，界面颜色。绝大部分的设置都在custom.css文件内，可以修改。对于图像，字体，图标等直接替换文件就可以了，不需要改设置文件，就是图标必须是svg格式的。下面是custom.css的内容： /** 页面字体 */ @font-face { font-family: 'cute'; src: local('cute'), local('cute'), url(/static/img/cute.ttf) format('truetype'); } * { font-family: "cute", sans-serif; } /** 加载动画 */ .spinner > div { background-color: #ff5f77; backdrop-filter: blur(6px); background-color: orangered\0; /* IE 样式 */ } /** 普通文字、字体图标颜色 */ .action, #listing h2, #search .boxes h3, .card h3, .collapsible > label *, .dashboard p label, .message { color: #ff5f77; } /** 链接文字颜色 */ a { color: #ff5f77; backdrop-filter: blur(6px); } /** 输入框、表格标题文字颜色 */ #search.active i, #search.active input, table th { backdrop-filter: blur(6px); color: #ff5f77; } /** 主体、弹窗颜色 */ #loading, #login, #search.active #input, body, header, .card, #search .boxes, .ace-chrome .ace_gutter-active-line { background-image: url(/static/img/background.jpg); background-repeat: no-repeat; background-attachment: fixed; background-position: center center; background-attachment: fixed; background-size: cover; color: #ff5f77 ; } /** 搜索页面、列表标题样式 */ #search #input, #search #result, .input, #listing.list .item.header, .ace-chrome .ace_gutter, .share__box__download, .file-list li:hover { background-color:transparent; backdrop-filter: blur(6px); color: #CD1076 ; } /** 列表项目、文本编辑、命令行、文件分享样式 */ #listing .item, .ace-chrome, .shell, .share__box { background-color:transparent; backdrop-filter: blur(6px); color: #CD1076; } /** 加载页面、登录页面信息提示 */ #loading::after, #login::after { position: absolute; bottom: 6px; width: 100%; display: block; font-size: 26px; text-align: center; content: ''; color: #FF1493; /* IE 样式 */ bottom: 30px\0; font-size: 36px\0; color: tomato\0; } /** 加载页面、登录页面背景图 */ #login { background-im…

这可能是最骚的高考倒计时软件
type: item
date: 2021-06-10T20:00:00+08:00
description: 最骚高考倒计时软件软件介绍这个软件是我2021年高考完后心血来潮写的软件。就是一个比较恶搞的高考倒计时软件，具体的操作可以看我的B站视频。运行截图：下载地址：注意！因为这个软件的行为有点恶毒，可能会被杀毒软件报毒！如果你不放心的话可以虚拟机试一下嘛，我敢发誓这玩意绝对没问题！T-minus.rar

UP主的垃圾文件生成小工具
type: item
date: 2020-03-10T16:22:00+08:00
description: GTX690战术核显卡导弹的垃圾文件生成小工具Rubbish_Maker.rar