面向 Shell 的脚本分发站

先选择适用脚本、审阅实际改动,再核对下载文件后决定是否执行。

它面向需要一键命令、清晰说明、可靠落地页以及可信脚本发布入口的运维与开发人员。

$ curl -fL https://helper.sh/hello.sh -o ./hello.sh
$ less ./hello.sh
$ curl -fL https://helper.sh/docker-data-move.sh -o ./docker-data-move.sh
$ less ./docker-data-move.sh

给人看的静态页面,给终端用的原始脚本。

helper.sh 的站点定位

围绕脚本分发与可信交付设计

helper.sh

通过稳定且易记的 URL 直接分发脚本

helper.sh

为全球运维团队提供多语言说明文档

helper.sh

提供适合交接、审阅和发布的说明页

脚本

已发布脚本

运维脚本

docker-data-move.sh

一个交互式迁移脚本,用于把 Docker data-root 安全迁移到更大的磁盘,并带有路径检查、备份和验证流程。

安装脚本

install_docker_ubuntu_2404.sh

一个适用于 Ubuntu 24.04.4 LTS 的 Docker 与 Docker Compose 一键安装脚本,由 helper.sh 托管发布。

Docker 应用安装脚本

install_nginx_base_docker.sh

用于启动 Docker Nginx 1.22.1 并创建宿主机持久化目录的脚本,会映射 80/443 端口;默认配置仅提供 HTTP。

Docker 应用安装脚本

install_mysql57_base_docker.sh

一个基于 Docker 的 MySQL 5.7 一键安装脚本,会准备 /data/mysql5.7 并启动一个宿主机挂载的数据库容器。

Docker 应用安装脚本

install_redis705_base_docker.sh

一个基于 Docker 的 Redis 7.0.5 一键安装脚本,会准备 /data/redis7.0.5 并启动一个宿主机挂载的缓存容器。

Docker 应用安装脚本

install_php72_base_docker.sh

一个基于 Docker 的 PHP 7.2 一键安装脚本,会准备 /data/php7.2 并启动一个宿主机挂载的 PHP-FPM 容器。

Docker 应用安装脚本

install_workerman3524_base_docker.sh

旧版 Workerman/PHP 7.2 构建示例:应用文件复制进镜像,只有 logs 是 bind mount;修改应用后需要重新构建并替换容器。

OpenVPN 服务端安装脚本

CentOS 7 OpenVPN 服务端一键安装脚本

CentOS 7 专用 OpenVPN 服务端示例,包含固定局域网路由、用户名/密码认证及防火墙变更。

OpenVPN 客户端安装脚本

install_openvpn_client_ubuntu.sh

一个托管在 helper.sh 的 Ubuntu OpenVPN 客户端安装脚本,会先检查当前目录中的 client.conf 和 login.txt,再安装 OpenVPN 并启用 systemd 客户端服务。

OpenVPN 客户端安装脚本

install_openvpn_client_centos7.sh

CentOS 7 OpenVPN 客户端设置,可使用本地认证文件和 DNS 钩子;安装软件包不代表隧道已连通。

OpenVPN 客户端安装脚本

install_openvpn_client_anolis8.sh

Anolis OS 8 OpenVPN 客户端设置,可使用本地认证文件和 DNS 钩子;安装软件包不代表隧道已连通。

OpenVPN 客户端维护

disable_openvpn_client_dns.sh

注释所选 OpenVPN 配置中的匹配 DNS 钩子并尝试重启;不会自动还原已有解析器状态。

系统维护

switch-centos7-repo.sh

一个用于 CentOS 7 切换 yum 软件源的脚本,适合在默认仓库失效、归档或访问异常时快速恢复可用源。

系统维护

optimize_centos7_ssh.sh

一个面向 CentOS 7 的 SSH 维护脚本,会关闭反向 DNS 查询和 GSSAPI 认证、选择 IPv4、校验 sshd_config,然后重启 sshd。

安全加固

centos_disable_password_ssh.sh

一个用于 CentOS SSH 加固的脚本,会检查 authorized_keys 是否非空,再关闭密码类认证、启用公钥认证、校验 sshd_config 并重载 sshd。

Docker 旁路由实验

install_bleachwrt_docker_centos7.sh

遗留 CentOS 7 局域网实验示例:使用特权 OpenWrt 兼容容器和 macvlan,需先审阅主机级网络变更。

开发工具

tree-to-file.sh

一个托管在 helper.sh 的目录结构导出脚本,用来把当前项目树写入 tree.txt;当系统没有 tree 命令时会自动尝试安装,失败则回退到内置遍历逻辑。

平台

先按系统和宿主机角色进入

平台

Ubuntu 24.04 脚本

选择 Docker/OpenVPN 安装器前核对 Ubuntu 版本、systemd 和仓库访问条件。

平台

CentOS 7 脚本

面向现有 CentOS Linux 7 主机的恢复脚本。CentOS Linux 7 已于 2024 年 6 月 30 日结束支持;这些脚本仅用于兼容、恢复或迁移准备,不应作为新系统基线。

平台

Anolis OS 8 脚本

检查 Anolis 8/dnf OpenVPN 分支及通用维护前提,不仅凭 RHEL 系标签推定兼容。

平台

Docker 宿主机初始化

在部署业务容器前,先把 Docker 宿主机本身整理好的那一层,包括安装、数据目录和维护动作。

平台

Docker 服务栈脚本

汇总 Docker 上的 Nginx、MySQL、Redis、PHP 和 Workerman 安装脚本。固定版本中包含已结束支持的软件;请将这些页面用于兼容性工作,并在新部署前检查升级方案。

专题

按部署场景浏览

专题

CentOS 7:选择恢复任务

变更已结束支持的主机前,先区分仓库故障、SSH 访问问题和 Docker 存储压力。

专题

Ubuntu:准备 Docker 或 VPN 接入

区分主机安装、客户端接入和已有 Docker 服务,不把旧应用镜像作为新栈默认选择。

专题

Docker 服务:检查接口和保留状态

按协议、数据目录和替换影响区分 HTTP、SQL、缓存、FastCGI 或镜像内应用。

专题

OpenVPN:区分隧道、路由和 DNS 故障

选择对应发行版客户端,变更 DNS 钩子前检查解析器管理权。

专题

旧 PHP:区分运行时兼容性和应用就绪

PHP 7.2/Workerman 3.5.24 示例用于有升级计划的遗留兼容工作。

问题页

直接进入常见问题

问题页

CentOS 7 yum 404:先检查故障仓库

重写 repo 文件前,区分归档 CentOS 镜像、第三方 URL、DNS、TLS 或网络故障。

问题页

为什么 CentOS 7 的 SSH 登录很慢

最常见的根因是反向 DNS 解析、GSSAPI 认证协商,以及部分老环境里的 IPv6 回退。先把这些等待关掉,再做更深的 SSH 排查。

问题页

为什么在 CentOS 上关闭 SSH 密码登录后就连不上了

最常见的原因是先关闭了 PasswordAuthentication,却没有先确认目标账号已经存在可用的 authorized_keys,并且没有先做一次成功的密钥登录验证。

问题页

OpenVPN 已连接但内部 DNS 失败

改文件或重启隧道前,先检查已配置钩子和活动解析器管理器。

问题页

为什么重建 MySQL 5.7 容器后旧密码仍然有效

安装脚本重建 mysql57 时会继续挂载 /data/mysql5.7/data。MySQL 只会在数据目录为空时初始化账号,因此已有数据库不会因安装变量变化而重置凭据。

问题页

Workerman 显示完成但 HTTP 就绪检查失败

再次替换容器前,区分构建、容器启动、curl 探针与业务验证。

推荐工作流

如何安全使用本站脚本

  1. 先按任务选择脚本,核对要求和实际改动。
  2. 保存并审阅源码,用指南中的本地比对器或校验文件核对字节。
  3. 结合本机检查、备份和授权变更窗口,再单独决定是否执行;哈希一致不是安全结论。