拒绝手搓系统!Ubuntu26.04自动安装实战:让电脑自己“卷”起来

admin 2026-05-02 05:26:06 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文详细介绍了Ubuntu26.04LTS系统自动安装镜像的定制方法,通过YAML格式的autoinstall配置文件实现无人值守部署。关键步骤包括配置清华软件源、设置存储布局为直接使用整个磁盘、创建用户账户并加密密码、启用SSH服务并允许密码登录、设置时区和禁用内核崩溃转储。文档还提供了安装OpenVPN和WireGuard等软件包、配置root密码和GRUB串口输出的高级定制方案,实测在嵌套虚拟化环境下767秒完成安装。 综合评分: 88 文章分类: 安全建设,解决方案,技术标准,云安全,其他


cover_image

拒绝手搓系统!Ubuntu 26.04自动安装实战:让电脑自己“卷”起来

原创

衡水铁头哥 衡水铁头哥

铁军哥

2026年4月30日 07:44 北京

在小说阅读器读本章

去阅读

我们已经演示了最新的Ubuntu 26.04 LTS桌面版系统的图形化安装方式(Ubuntu 26.04桌面版部署),也演示了服务器版系统的安装方式(仅占752MB内存!Ubuntu 26.04 Server版上手:这才是服务器该有的样子!)。对于这种手动档安装攻略,不少小伙伴直呼:技术太硬,手太酸。

因为技术水平有限,有些用户并不能独立快速完成Ubuntu系统的部署。当然,对于追求效率的极客或者需要批量下饺子的运维老兵来说,一遍遍点鼠标简直是挥霍生命。这时候,如果有一个能够自动完成安装部署的系统镜像,让用户插上U盘就能自动执行部署操作,全程不用人工干预,泡杯咖啡的功夫,系统就自己跑通了,那该多轻松啊,就像下面这个视频展示的一样。

当然,对于KVM环境,我们直接挂载镜像并启动虚拟机,然后静静等待安装完成即可,既不用连VNC,也不用连串口,岂不是美滋滋。

那这个ISO安装镜像是如何定制的呢?今天,我们参考之前的自动安装配置参考手册(解锁Ubuntu高效部署!自动安装配置文件YAML全解析),还有Ubuntu 24.04服务器版系统的定制过程(插上U盘自动装系统?一文掌握Ubuntu服务器版自动安装镜像制作),尝试实现这套无人驾驶的自动安装方案。同时看看Ubuntu 26.04 LTS系统,相比之前系统有哪些变化。

按照我们以往的经验,首先要注意:自动安装文件autoinstall.yaml使用YAML格式,对缩进格式要求极高,少一个空格,系统就可能给你表演一个原地罢工,千万不要搞错了。

其次,配置文件中需要重点关注我们在部署过程中做了选择、做了改变的选项。回顾一下:

第1步,语言我们选择的是默认的【English】,没做调整。

第2步,键盘布局,我们使用的是默认的跟English配套的【English(US)】,没做调整。

第3步,安装类型我们依旧使用默认的【Ubuntu Server】,不作调整。

第4步,使用自动安装系统时,网络配置不建议使用静态IP地址。所以,网络设置我们直接使用默认的DHCP就可以了,不作调整。

第5步,默认情况下也不需要配置网络代理,不作调整。

第6步,配置APT软件源,默认的软件源有可能因为在国外影响使用。

所以,这里我们可以使用显式配置方式指定软件源,如https://mirrors.tuna.tsinghua.edu.cn/ubuntu/。在使用自动配置参数apt指定时,示例如下:

autoinstall:  apt:    primary:      - arches: [default]        uri: http://mirrors.tuna.tsinghua.edu.cn/ubuntu/

第7步,存储设备选择这里,如果只有一块存储盘,则无需调整。

第8步,默认情况是只使用一半的存储空间,需要显式指定为使用全部磁盘空间。

所以,在使用自动配置参数storage指定时,我们配置direct直接使用整个磁盘,不留空闲空间,类似于LVM全分配。示例如下:

autoinstall:  storage:    layout:      name: direct

第9步,设置账户信息,这里需要配置一个非root用户。

需要注意的是,在使用自动配置参数identity指定时,密码不能使用明文,需要使用whois包中的mkpasswd或openssl passwd工具来生成加密密码。比如使用openssl passwd计算tt@2025.的加密密码。

root@tt:~# openssl passwd tt@2025.$1$XdP.XBYr$yXkHTxen28g3t74wNJ6N40

然后我们将得到的密码和系统的主机名ttserver、用户名tt一块,写入到autoinstall配置中:

autoinstall:  identity:    hostname: ttserver    password: "$1$XdP.XBYr$yXkHTxen28g3t74wNJ6N40"    username: tt

第10步,启用Ubuntu Pro这里,默认选项就是跳过,不作调整。

第11步,OpenSSH可是服务器的灵魂窗口,我们需要手工配置。

对应的,在配置自动配置参数ssh指定时,我们可以指定安装SSH服务器,并直接指定允许使用密码认证。

autoinstall:  ssh:    install-server: true    allow-pw: true

第12步,安装其他软件包,默认都没有选择,不作调整。

在图形化安装过程中,完成上面的操作就可以等待系统安装完成了,最后一个操作是选择【Reboot Now】执行重启操作。对应的,自动配置参数shutdown的默认值是reboot,表示安装完成后,请求系统自动重新启动,所以我们就不用单独配置了。

既然是定制,那就得整点私货,我们还可以指定一些额外的系统参数。

比如,我们想在部署时指定系统的时区为【Asia/Shanghai】,同时禁用内核崩溃转储(Kdump),节省磁盘和内存(用轻量应用服务器的注意了,0.5GB内存的规格请谨慎使用)。可以写入以下配置:

autoinstall:  timezone: "Asia/Shanghai"  kernel-crash-dumps:     enabled: false

同时,因为默认软件包调整,我们想让系统默认安装一些软件包,比如openVPN、WireGuard等,则可以写入以下配置:

autoinstall:  packages:    - openvpn    - wireguard

当然,我们也想让系统自动调整root用户配置,强制修改root密码;并允许使用密码进行SSH登录,则可以写入以下配置:

autoinstall:  user-data:    chpasswd: {list: "root:tt@2025.", expire: False}    runcmd:      - sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config      - systemctl restart ssh

这就完了吗?考虑到上次我们介绍的KVM配置(手搓KVM虚拟化!Ubuntu 26.04 + KVM 7.0.0,告别VMware的低成本玩法),我们还可以使用late-commands强制将新系统的GRUB也配置为支持串口输出,方便以后通过virsh console进行连接。

autoinstall:  late-commands:    - curtin in-target -- sed -i 's/GRUB_CMDLINE_LINUX_DEFAULT=.*/GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,115200n8"/' /etc/default/grub    - curtin in-target -- update-grub

把前面这些自动配置参数整合到一起,就得到了自动配置所需的autoinstall.yaml文件了。

#cloud-configautoinstall:  version: 1  identity:    hostname: ttserver     password: "$1$XdP.XBYr$yXkHTxen28g3t74wNJ6N40"    username: tt   storage:    layout:      name: direct  network:    network:      version: 2      ethernets:        en_all:          match:            name: "en*"          dhcp4: true  ssh:    install-server: true    allow-pw: true  apt:    primary:      - arches: [default]        uri: http://mirrors.tuna.tsinghua.edu.cn/ubuntu/  packages:    - openvpn    - wireguard  kernel-crash-dumps:    enabled: false  timezone: "Asia/Shanghai"  user-data:    chpasswd: {list: "root:tt@2025.", expire: False}    runcmd:      - sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config      - systemctl restart ssh  late-commands:    - curtin in-target -- sed -i 's/GRUB_CMDLINE_LINUX_DEFAULT=.*/GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,115200n8"/' /etc/default/grub    - curtin in-target -- update-grub

最后,将这个文件拷贝到安装镜像的根目录下,你就能跟我一样实现Ubuntu系统的自动化部署了。

经过测试,在嵌套虚拟化环境下,从开机到部署完成,一共用时767秒。

登录新装的系统,检查系统配置,openVPN和WireGuard都已经成功安装,切换到root用户提权,密码设置也都安排得明明白白,完全符合预期。

测试SSH远程登录,一切顺利。

怎么样?你刷个短视频的时间,一台预装了VPN软件、配好了SSH和用户密码、调优了内核参数的Ubuntu 26.04服务器就脱颖而出了。

此时此刻,你只需要动动手指,就能复刻这套全自动流水线,也可以根据自己的癖好随意魔改。技术的终极奥义不是卷工作量,而是卷效率,把人从重复劳动中解放出来,去摸鱼、去喝咖啡、去思考更有深度的问题。

***推荐阅读***

我们的WireGuard管理系统支持手机电脑了!全平台终端配置,支持扫码连接,一键搞定

保姆级教程:一条命令部署OpenVPN管理系统V4版,支持Win/Mac/安卓/iOS全平台接入

成本省下99.7%!用40元的腾讯云服务器自建IPsecVPN,成功对接企业级飞塔防火墙

别再乱选VPN了!实测数据告诉你:为什么L2TP是个“坑”

SRv6部署第一坑:为什么配置了Locator却Ping不通?

嫌一键部署不过瘾?带你手搓Hermes智能体,主打一个通透

Hyper-V别开!VMware 25H2安装避坑指南,附Hermes新动向

H3C CAS实战:CVM纳管CVK的相爱相杀,这波操作太秀了!

VPP转发性能从10G暴增至24G?揭秘OpenEuler虚拟机的极限压榨术

NVUE不支持OSPFv3?别慌!教你一招搞定SRv6地基

手机也能跑DeepSeek-R1/Qwen3了:零成本搭建AI推理平台

2048卡昇腾910C集群算力集群交付工程手册

2048卡H100算力中心100G无阻塞存储网建设方案


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:铁军哥 衡水铁头哥 衡水铁头哥《拒绝手搓系统!Ubuntu 26.04自动安装实战:让电脑自己“卷”起来》

评论:0   参与:  0