cobbler 3.3.4 配置ubuntu 22.04 自动安装
1.下载Ubuntu 22.04 iso 镜像
# https://releases.ubuntu.com/jammy/ubuntu-22.04.3-live-server-amd64.iso mount -o loop ubuntu-22.04.3-live-server-amd64.iso /mnt cp -r /mnt/* /iso # /iso 目录已经映射到cobbler容器中 cp ubuntu-22.04.3-live-server-amd64.iso /iso
2.将ubuntu导入cobbler
- 将 iso 导入容器中
# 进入docker容器 cp /iso/ubuntu-22.04.3-live-server-amd64.iso /var/www/cobbler/pub/
- 生成 自动装机的 user-data 数据
# 生成用户密码 mkpasswd -m sha-512
# 生成 user-data 文件,注意 storage部分,包含 /data,如果不需要,可以适当修改,注意必须有 #cloud-config
cat /var/lib/cobbler/templates/user-data
#cloud-config
autoinstall:
apt:
disable_components: []
fallback: abort
geoip: true
mirror-selection:
primary:
- country-mirror
- arches:
- amd64
- i386
uri: http://archive.ubuntu.com/ubuntu
- arches:
- s390x
- arm64
- armhf
- powerpc
- ppc64el
- riscv64
uri: http://ports.ubuntu.com/ubuntu-ports
preserve_sources_list: false
codecs:
install: false
drivers:
install: false
identity:
hostname: localhost
password: $6$OR1F3IXjXFHJWv6x$QC//5HhN0luMfZ7HbsVCi8WwrxYINqhN9l2TDUBJ2ZHs0t2fD.JmALSQDevHfqqj.0rEtXQL8odIoCjC7scnE0
realname: username_u1 ## 注意修改
username: username_u1 ## 注意修改
kernel:
package: linux-generic
keyboard:
layout: us
toggle: null
variant: ''
locale: en_US.UTF-8
network:
ethernets:
enp23s0f0:
dhcp4: true
version: 2
source:
id: ubuntu-server-minimal
search_drivers: false
ssh:
allow-pw: true
authorized-keys: []
install-server: true
storage:
swap:
size: 0
config:
- ptable: gpt
path: /dev/sda
wipe: superblock-recursive
preserve: false
name: ''
grub_device: true
type: disk
id: disk-sda
- device: disk-sda
size: 1048576
flag: bios_grub
number: 1
preserve: false
grub_device: false
path: /dev/sda1
type: partition
id: partition-2
- device: disk-sda
size: 524288000
wipe: superblock
number: 2
preserve: false
grub_device: false
path: /dev/sda2
type: partition
id: partition-3
- fstype: ext4
volume: partition-3
preserve: false
type: format
id: format-1
- device: disk-sda
size: 322122547200
wipe: superblock
number: 3
preserve: false
grub_device: false
path: /dev/sda3
type: partition
id: partition-4
- fstype: xfs
volume: partition-4
preserve: false
type: format
id: format-2
- device: disk-sda
size: 637006774272
wipe: superblock
number: 4
preserve: false
grub_device: false
path: /dev/sda4
type: partition
id: partition-5
- fstype: xfs
volume: partition-5
preserve: false
type: format
id: format-3
- path: /
device: format-3
type: mount
id: mount-3
- path: /boot
device: format-1
type: mount
id: mount-1
- path: /data
device: format-2
type: mount
id: mount-2
updates: security
version: 1
late-commands:
- rm /target/etc/apt/apt.conf.d/99needrestart
- echo 'username_u1 ALL=(ALL) NOPASSWD:ALL' > /target/etc/sudoers.d/username_u1 #注意修改
- echo 'PermitRootLogin yes' >> /target/etc/ssh/sshd_config
- cobbler 操作
#检查是否有 ubuntu 22.04 的 signature,如果没有就执行update
cobbler signature report|grep jammy
cobbler signature update
# 导入镜像
cobbler import --arch=x86_64 --path=/iso/ubuntu-22.04.3 --name=ubu22
# 检查 distro 列表
cobbler distro list
# 会输出
ubu22-casper-x86_64
# 生成 cobbler loaders,目录 /var/lib/cobbler/loaders
cobbler mkloaders
# 导入 user-data 数据,cobbler 会查找 /var/lib/cobbler/templates/user-data
cobbler profile edit --name=ubu22-casper-x86_64 --autoinstall=user-data
# 将 user-data 拷贝一份到 /var/www/cobbler/pub/目录,最后安装时根据 该目录下的文件来安装的
ln -s /var/lib/cobbler/templates/user-data /var/www/cobbler/pub/user-data
# 创建 meta-data 空文件
touch /var/www/cobbler/pub/meta-data
# 执行 cobbler profile
cobbler profile edit --kernel-options="url=http://172.19.4.34/cblr/pub/ubuntu-22.04.3-live-server-amd64.iso \
ip=dhcp autoinstall \
cloud-config-url=/dev/null \
ds=nocloud-net;s=http://172.19.4.34/cblr/pub/" --name=ubu22-casper-x86_64
cobbler sync # 输出 TASK COMPLETE
cat /var/lib/tftpboot/pxelinux.cfg/default
DEFAULT menu
PROMPT 0
MENU TITLE Cobbler | <https://cobbler.github.io>
TIMEOUT 200
TOTALTIMEOUT 6000
ONTIMEOUT local
LABEL local
MENU LABEL (local)
MENU DEFAULT
LOCALBOOT -1
LABEL ubu22-casper-x86_64
MENU LABEL ubu22-casper-x86_64
kernel /images/ubu22-casper-x86_64/vmlinuz
append initrd=/images/ubu22-casper-x86_64/initrd url=http://172.19.4.34/cblr/pub/ubuntu-22.04.3-live-server-amd64.iso ip=dhcp autoinstall cloud-config-url=/dev/null ds=nocloud-net;s=http://172.19.4.34/cblr/pub/ auto-install/enable=true priority=critical netcfg/choose_interface=auto url=http://172.19.4.34/cblr/svc/op/autoinstall/profile/ubu22-casper-x86_64 hostname=ubu22-casper-x8664 domain=local.lan suite=jammy
ipappend 2
MENU end
至此完成。

浙公网安备 33010602011771号