说明
文心助手出品
安装脚本
#!/bin/bash
set -euo pipefail
# 颜色定义
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m'
# -------------------------- 请先修改以下配置 --------------------------
NEW_USERNAME="z87p" # 新系统登录用户名
NEW_PASSWORD="z87p@2026" # 新系统登录密码,请务必修改为强密码
# Xubuntu 24.04 ISO镜像路径,请提前下载到对应位置
XUBUNTU_ISO_PATH="/home/${SUDO_USER:-$USER}/xubuntu-24.04.5-desktop-amd64.iso"
# -------------------------------------------------------------------
echo -e "${RED}
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! 【高危操作警告】 !!
!! 本脚本将彻底清空当前机器硬盘上的所有数据(包括原有系统、所有文件) !!
!! 操作完全不可逆,请确认无任何需要保留的数据后再继续 !!
!! 安装全程无需显示器、无需U盘,全自动完成,过程中请勿断电 !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
${NC}"
read -p "确认要继续执行全自动远程安装吗?输入 YES 继续: " confirm
if [ "$confirm" != "YES" ]; then
echo "已取消操作"
exit 0
fi
# 检查是否为root权限
if [ "$EUID" -ne 0 ]; then
echo -e "${RED}错误:请使用 sudo 运行本脚本${NC}"
exit 1
fi
# 检查ISO文件是否存在
if [ ! -f "$XUBUNTU_ISO_PATH" ]; then
echo -e "${RED}错误:未找到Xubuntu ISO镜像,请先下载到指定路径:$XUBUNTU_ISO_PATH${NC}"
echo "国内镜像下载地址:https://mirrors.tuna.tsinghua.edu.cn/xubuntu-releases/24.04/release/xubuntu-24.04.1-desktop-amd64.iso"
exit 1
fi
echo -e "${GREEN}[1/6] 安装依赖工具...${NC}"
apt update -y
apt install -y grub2-common openssl
echo -e "${GREEN}[2/6] 生成无人值守安装配置...${NC}"
# 生成密码哈希
NEW_PASS_HASH=$(openssl passwd -6 "$NEW_PASSWORD")
# 获取ISO所在分区的挂载点
ISO_DIR=$(dirname "$XUBUNTU_ISO_PATH")
ISO_MOUNT=$(df -P "$ISO_DIR" | awk 'NR==2 {print $6}')
# 写入cloud-init自动安装配置到ISO所在分区根目录(本地读取,无需HTTP服务)
cat > "${ISO_MOUNT}/user-data" << EOF
#cloud-config
autoinstall:
version: 1
locale: zh_CN.UTF-8
keyboard:
layout: cn
variant: ""
refresh-installer:
update: false
apt:
primary:
- arches: [amd64, i386]
uri: file:///cdrom
disable_components: []
network:
network:
version: 2
ethernets:
id0:
match:
name: en*
dhcp4: true
storage:
layout:
name: lvm
match:
size: largest
identity:
hostname: xubuntu-2404
username: ${NEW_USERNAME}
password: ${NEW_PASS_HASH}
ssh:
install-server: true
allow-pw: true
packages:
- xubuntu-desktop
- openssh-server
- xrdp
user-data:
disable_root: false
late-commands:
- curtin in-target -- systemctl set-default graphical.target
- curtin in-target -- systemctl enable ssh xrdp
- rm -f /target/user-data /target/meta-data
EOF
# 必须的空元数据文件
touch "${ISO_MOUNT}/meta-data"
echo -e "${GREEN}[3/6] 配置GRUB自动引导安装项...${NC}"
# 备份原有GRUB自定义配置
cp /etc/grub.d/40_custom /etc/grub.d/40_custom.bak
# 写入安装引导项
cat >> /etc/grub.d/40_custom << EOF
menuentry "Xubuntu 24.04 全自动远程安装" {
set isofile="${XUBUNTU_ISO_PATH#$ISO_MOUNT}"
search --no-floppy --set=root --file "\$isofile"
loopback loop (\$root)\$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=\$isofile toram noeject noprompt autoinstall ds=nocloud quiet splash ---
initrd (loop)/casper/initrd
}
EOF
echo -e "${GREEN}[4/6] 设置GRUB默认启动安装项,无需手动选择...${NC}"
# 备份原有grub默认配置
cp /etc/default/grub /etc/default/grub.bak
# 设置默认启动项为我们的安装引导项,超时1秒自动启动
sed -i 's/^GRUB_DEFAULT=.*/GRUB_DEFAULT="Xubuntu 24.04 全自动远程安装"/' /etc/default/grub
sed -i 's/^GRUB_TIMEOUT_STYLE=.*/GRUB_TIMEOUT_STYLE=menu/' /etc/default/grub
sed -i 's/^GRUB_TIMEOUT=.*/GRUB_TIMEOUT=1/' /etc/default/grub
sed -i 's/^GRUB_HIDDEN_TIMEOUT=/#GRUB_HIDDEN_TIMEOUT=/' /etc/default/grub
echo -e "${GREEN}[5/6] 更新GRUB引导配置...${NC}"
update-grub
echo -e "${GREEN}[6/6] 所有配置已完成!${NC}"
echo -e "
=====================================================================
安装前确认信息
新系统用户名:${NEW_USERNAME}
新系统密码:${NEW_PASSWORD}
SSH服务:默认开启,安装完成后即可远程连接
XRDP远程桌面:默认开启,可直接用Windows远程桌面连接
=====================================================================
"
echo -e "${YELLOW}重启后机器将自动开始格式化磁盘并安装Xubuntu 24.04,全程无需干预${NC}"
echo -e "${YELLOW}安装过程约15-30分钟,请勿断电,安装完成后机器会自动重启进入新系统${NC}"
read -p "是否现在重启开始安装?(y/n): " reboot_confirm
if [ "$reboot_confirm" == "y" ] || [ "$reboot_confirm" == "Y" ]; then
echo -e "${GREEN}正在重启,开始全自动安装...${NC}"
reboot
else
echo -e "配置已保存,你可以稍后手动执行 sudo reboot 开始安装"
exit 0
fi
sudo bash 远程无盘安装Xubuntu24.04一键脚本.sh
按照提示输入YES确认高危操作,最后选择y立即重启,之后就可以断开SSH等待自动安装完成
等待15-30分钟,机器安装完成后会自动重启,你直接用原来的IP地址通过SSH连接,使用你设置的用户名密码登录即可;也可以直接用Windows自带的「远程桌面连接」访问完整的Xubuntu图形桌面。