1. Linux
1.1. Debian12
基础软件
# 安装常用工具
apt install -y vim wget git zsh curl htop sudo unzip screen net-tools proxychains supervisor gcc make openssl p7zip-full iproute2 passwd build-essential inxi iperf
oh-my-zsh 安装
sudo apt install zsh git
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
sed -i 's/ZSH_THEME="robbyrussell"/ZSH_THEME="alanpeabody"/' ~/.zshrc
netplan.io 静态 IP 配置文件
network:
ethernets:
enp1s0:
dhcp4: no
dhcp6: no
addresses: [192.168.10.11/24]
nameservers:
addresses:
- 192.168.10.12
routes:
- to: default
via: 192.168.10.12
on-link: true
1.2. Supervisor
配置文件
[program:syncmemo]
directory=/opt/syncmemo
command=/opt/syncmemo/venv/bin/gunicorn --bind=127.0.0.1:28083 flaskr:app
autostart=true
autorestart=true
stdout_logfile=/var/log/supervisor/%(program_name)s.log
stdout_logfile_maxbytes=16MB
stdout_logfile_backups=2
redirect_stderr=true
# environment=PATH="/opt/syncmemo/venv/bin:%(ENV_PATH)s"
# environment=CONFIG="/opt/syncmemo/config.yaml"
user=app
创建一个无法登录的系统用户如 app
来运行应用程序,这是一种安全最佳实践
useradd --system --no-create-home --shell /usr/sbin/nologin app
2. 公开服务
2.1. 下载加速
此服务用于解决国内网络无法顺利连接到 github.com/www.debian.org 等网络状况不佳的网站
目前服务支持加速域名(包含其所有子域名):
- debian.org
- github.com
- githubusercontent.com
- python.org
- gravatar.com
- proxy.golang.org
使用方法:将原域名作为路径,域名替换为 agent.chancel.me 进行,例如:
- 源连接:
https://raw.githubusercontent.com/aristocratos/btop/main/CMakeLists.txt
- 更改后的链接:
https://agent.chancel.me/raw.githubusercontent.com/aristocratos/btop/main/CMakeLists.txt
2.2. PlantUML
2.3. Json存取
https://api.chancel.me/rest/api/v1/anyjson
POST
请求存储 Json 数据,GET
请求 Json 数据,例如:
# 请求存储
curl -X POST https://api.chancel.me/rest/api/v1/anyjson?id=hello \
-H "Content-Type: application/json" \
-d '{"key": "value"}'
# 成功返回
{
"status": 1,
"msg": "Data stored successfully",
"data": null,
"version":"V1.0.0"
}
# 取回存储
curl -X GET https://api.chancel.me/rest/api/v1/anyjson?id=hello \
-H "Content-Type: application/json"
{
"key": "value"
}
2.4. 随机图片
https://api.chancel.me/rest/api/v1/image
GET
请求可获取任意大小图片,但无法超过 1920x1080
大小,图片随机
请求参数
参数名称 | 参数类型 | 是否必须 | 说明 |
---|---|---|---|
id | string | 否 | 指定 ID 可每次获取相同图片 |
height | int | 否 | 指定高度(宽度根据图片自适应) |
width | int | 否 | 指定宽度(高度根据图片自适应) |
2.5. IP查询
https://api.chancel.me/rest/api/v1/ip
GET
请求返回调用者 IP
# 请求
curl https://api.chancel.me/rest/api/v1/ip
# 返回
{
"status": 1,
"msg": "Query success",
"data": {
"ip": "8.8.8.8"
},
"version":"V1.0.0"
}
3. Windows
3.1. Scoop
Scoop 是一个 Windows 平台下的命令行安装工具,它旨在简化软件的安装和管理
安装 Scoop,Scoop 需要 PowerShell 5(或更高版本)和 .NET Framework 4.5(或更高版本),打开 Powershell 进行安装:
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
iwr -useb get.scoop.sh | iex
scoop install git
scoop update
Scoop 采用了多个源的管理方式,例如添加最常用的扩展源:
scoop bucket add extras
例如安装 vscodium :
scoop install vscodium
通过搜索软件来确定源,从而添加源再安装软件,如下:
PS C:\Users\ycs10> scoop search openjdk
Results from other known buckets...
(add them using 'scoop bucket add <bucket name>')
Name Source
---- ------
openjdk-ea java
openjdk java
openjdk10 java
openjdk11 java
openjdk12 java
openjdk13 java
openjdk14 java
openjdk15 java
openjdk16 java
openjdk17 java
openjdk18 java
openjdk19 java
openjdk20 java
openjdk21 java
openjdk22 java
openjdk23 java
openjdk7-unofficial java
openjdk8-redhat-jre java
openjdk8-redhat java
openjdk9 java
PS C:\Users\ycs10> scoop bucket add java
Checking repo... OK
The java bucket was added successfully.
PS C:\Users\ycs10> scoop install openjdk17
Installing 'openjdk17' (17.0.2-8) [64bit] from 'java' bucket
openjdk-17.0.2_windows-x64_bin.zip (177.6 MB) [==========================================================================================================================================================] 100%
Checking hash of openjdk-17.0.2_windows-x64_bin.zip ... ok.
Extracting openjdk-17.0.2_windows-x64_bin.zip ... done.
Linking ~\scoop\apps\openjdk17\current => ~\scoop\apps\openjdk17\17.0.2-8
Adding ~\scoop\apps\openjdk17\current\bin to your path.
'openjdk17' (17.0.2-8) was installed successfully!
3.2. PowerShell Core
PowerShell Core 和 Windows PowerShell 是两个相关但有区别的工具:
- Windows PowerShell:仅支持 Windows,基于 .Net Framework,已停止更新,闭源
- PowerShell Core: 基于 .Net Core 开发的支持跨平台框架,保留大部分 Windows PowerShell 特性,开源
PowerShell Core 是一个跨平台的任务自动化和配置管理框架,它基于 .NET Core 开发,支持在 Windows、macOS 和 Linux 上运行,提供了更广泛的兼容性和更现代化的功能
使用 Scoop 安装 PowerShell Core:
scoop install pwsh
启动 PowerShell Core:
pwsh
3.3. AutoHotKey
AutoHotkey 是一个非常强大的 Windows 自动化工具和脚本语言,允许用户通过热键和脚本来自动执行各种任务
文档:
安装:
scoop update
scoop install autohotkey
例如,用 AutoHotKey 实现 Ctrl + Alt + G
打开 chorme ,如果 Chrome 已经在运行,则激活已存在的窗口:
; 定义 Win + G 快捷键
#NoTrayIcon ; 不在托盘区域显示图标
; 定义热键,例如 Win + T
^!g::
{
if WinExist("ahk_exe chrome.exe") ;
{
WinActivate() ;
}
else
{
Run("C:\Program Files\Google\Chrome\Application\chrome.exe")
}
}
将上述内容保存为一个文件 chrome.ahk
并双击执行按下 Ctrl + Alt + G
即可唤醒 chrome
上述的脚本为 AutoHotKey V2.0 以上版本
按下 Win+R
打开运行对话框,输入 shell:common startup
,将写好的 ahk 文件放入其中即可开机自启
3.4. 其它
常用软件列表:
类型 | 名称 | 说明 | 安装方法 |
---|---|---|---|
压缩软件 | 7z | 开源的压缩文件格式和相应的压缩工具 | https://www.7-zip.org/download.html |
下载工具 | Free Download Manager | 免费下载管理器,支持 BT | https://www.freedownloadmanager.org/ |
影音工具 | HandBrake | 免费开源的视频转码软件 | https://handbrake.fr/ |
VLC | 广受欢迎的开源媒体播放器和跨平台媒体框架 | https://www.videolan.org/ | |
ISO 工具 | Rufus | 创建可引导的 usb 安装介质,高兼容性 | https://rufus.ie/en/ |
Ventoy | 用于引导的 ISO 镜像,在启动后可以选择放在 U 盘内的任意 ISO 镜像 | https://www.ventoy.net/en/index.html | |
网络工具 | Frp | 开源反向代理工具,建立内网穿透的工具 | https://github.com/fatedier/frp |
Gost | GO 语言实现的安全隧道,支持正向代理、反向代理等 | https://github.com/ginuerzh/gost | |
系统工具 | NSSM | 允许将任何可执行文件(如应用程序、脚本等)作为 Windows 服务运行 | https://nssm.cc/ |
Syncthing | 开源的 P2P 文件同步工具 | https://syncthing.net/downloads/ | |
LocalSend | 与附近的设备共享文件,免费、开源、跨平台 | https://localsend.org/ | |
Flameshot | 开源的截图工具,它提供了丰富的截图功能和编辑选项 | https://flameshot.org/ | |
开发工具 | DBeaver | 开源的跨平台数据库工具,支持 MySQL、PostgreSQL、Oracle、SQL Server | https://github.com/JonMagon/KDiskMark |
MobaXterm | 可用于远程访问和管理远程计算机 | https://mobaxterm.mobatek.net/ | |
Scrcpy | 开源的跨平台工具,它允许您在计算机上显示并控制安卓设备的屏幕 | https://github.com/Genymobile/scrcpy | |
tabby | 开源的终端模拟器和 SSH 客户端 | https://github.com/Eugeny/tabby | |
远程管理 | RustDesk | RustDesk 是一个开源的远程桌面软件,它基于 Rust 编程语言开发而成 | https://rustdesk.com/ |
Parsec | Parsec 是一款用于游戏流媒体和远程游戏的软件 | https://parsec.app/ |