#!/bin/bash # # Node.js 24.x 安装脚本 — node.300.im(NodeSource 镜像) # # 用法: # curl -fsSL https://node.300.im | sudo -E bash - # sudo apt-get install -y nodejs # set -euo pipefail MIRROR="https://node.300.im" NODE_VERSION="24.x" log() { printf '\033[1;32m%s\033[0m\n' "$*"; } die() { printf '\033[1;31mError: %s\033[0m\n' "$*" >&2; exit 1; } [ "$(id -u)" -eq 0 ] || die "请使用 root 或 sudo 运行" if ! [ -f /etc/debian_version ]; then die "此脚本仅支持 Debian/Ubuntu 系统" fi export DEBIAN_FRONTEND=noninteractive log "安装依赖..." apt-get update -y apt-get install -y apt-transport-https ca-certificates curl gnupg arch="$(dpkg --print-architecture)" if [ "$arch" != "amd64" ]; then die "当前镜像仅支持 amd64(检测到 $arch)" fi log "导入 GPG 公钥..." install -d -m 0755 /usr/share/keyrings rm -f /usr/share/keyrings/nodesource.gpg curl -fsSL "$MIRROR/gpgkey/nodesource-repo.gpg.key" \ | gpg --dearmor -o /usr/share/keyrings/nodesource.gpg chmod 644 /usr/share/keyrings/nodesource.gpg log "配置 apt 软件源..." rm -f /etc/apt/sources.list.d/nodesource.list rm -f /etc/apt/sources.list.d/nodesource.sources cat > /etc/apt/sources.list.d/nodesource.sources <