kickstart无人值守安装虚拟机

1、检查网络,能否上网

2、安装dhcp

yum install dhcp –y

 配置

vim /etc/dhcp/dhcpd.conf

启动/etc/init.d/dhcpd start

 3、使客户机可以外网

vim /etc/sysctl.conf


sysctl -p   

nat转发

iptables –F

iptables -t nat -A POSTROUTING -s 192.168.102.0/24  -j MASQUERADE

4、安装tftp服务器

yum install tftp-server -y

修改配置文件


启动

/etc/init.d/xinetd start

检查


5、安装httpd服务

   yum install httpd -y

   启动

   /etc/init.d/httpd start

6、准备pxe开机引导文件

yum install syslinux -y

cd /var/lib/tftpboot/

cp /usr/share/syslinux/pxelinux.0 .

cp /var/www/html/centos/isolinux/* .

mkdir pxelinux.cfg

cd pxelinux.cfg/

mv ../isolinux.cfg default

vim default


mkdir /var/www/html/ks

cd /var/www/html/ks

vim 6.5-ks.cfg


# Kickstart file automatically generated by anaconda.

#version=DEVEL

install

url --url=http://10.0.0.200/centos/

lang en_US.UTF-8

keyboard us

network --onboot yes --device eth0 --bootproto dhcp --noipv6

# Kickstart file automatically generated by anaconda.

 

#version=DEVEL

install

url --url=http://10.0.0.200/centos/

lang en_US.UTF-8

keyboard us

network --onboot yes --device eth0 --bootproto dhcp --noipv6

firewall --disabled

authconfig --enableshadow --passalgo=sha512

selinux --disabled

timezone Asia/Shanghai

bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"

# The following is the partition information you requested

# Note that any partitions you deleted are not expressed

# here so unless you clear all partitions first, this is

# not guaranteed to work

zerombr

clearpart --all --initlabel

part /boot --fstype=ext4 --asprimary --size=200

part swap --asprimary --size=2048

part / --fstype=ext4 --grow --asprimary --size=200

 

reboot

 

repo --name="CentOS"  --baseurl=http://10.0.0.200/centos/ --cost=100

 

%packages

@base

@compat-libraries

@core

@debugging

@server-policy

@workstation-policy

python-dmidecode

sgpio

device-mapper-persistent-data

net-tools

vim

lrzsz

wget

tree

screen

lsof

tcpdump

%end

 

%post

echo 'begin youhua' >>/tmp/install.log

chkconfig|awk '{print $1}'|grep -Ev 'crond|rsyslog|sshd|sysstat|network'|awk '{print "chkconfig " $0 " off"}'|bash

sed -i 's@#UseDNS yes@UseDNS no@g' /etc/ssh/sshd_config

sed -i '/^GSSAPIAuthentication yes/d' /etc/ssh/sshd_config

>/etc/issue

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

sed -i 's#^HOSTNAME=.*$#HOSTNAME=oldboy#g' /etc/sysconfig/network

%end


开始pxe安装centos6.5

创建一台新机器,设置网络适配器为lan区段


完成
<think>嗯,用户现在想要无人值守安装Ubuntu系统的解决方案。我需要先回顾一下之前的对话历史。用户之前询问了关于GPT分区和BIOS引导分区的配置步骤,我给出了分步指南和相关问题。现在用户的新问题是关于无人值守安装的,这涉及到自动化安装流程。 首先,用户提供的引用中提到了Kickstart文件,这应该是关键。引用3里提到将Kickstart文件放入ubuntu_files目录,并修改启动菜单的配置。用户可能需要详细的步骤来创建和配置Kickstart文件,以及如何将其集成到安装介质中。 另外,用户还提到了Unattended Upgrades(引用1),虽然这属于系统安装后的自动更新配置,但可能用户希望整个安装过程包括后续的更新都是自动化的,所以可能需要提及这部分作为补充。 接下来,用户可能需要的步骤包括:创建Kickstart配置文件、准备安装媒介、配置引导参数、执行无人值守安装,以及安装后的自动化设置(如安全更新)。需要确保每一步都详细,并且给出具体的命令和示例,比如如何生成Kickstart文件,如何修改ISO镜像中的配置,以及如何验证安装结果。 还要考虑用户可能的疑问,比如如何测试Kickstart文件的有效性,如何处理不同的硬件环境,或者如何集成其他软件安装(如SQL Server,引用2中提到的)。虽然用户主要需求是无人值守安装Ubuntu,但如果在自动化安装后需要自动安装其他软件,可能需要扩展Kickstart文件的内容,包括%post部分。 需要确保回答结构清晰,步骤明确,并且参考之前的回答风格,使用代码块和分点说明。同时,生成的相关问题要围绕用户可能进一步想了解的内容,比如如何调试Kickstart错误,如何自动化安装特定软件,或者如何处理分区配置与之前的问题相结合。</think>### 无人值守安装Ubuntu系统分步指南 --- #### 一、核心工具选择 无人值守安装主要依赖**Kickstart**技术,可通过配置文件自动化完成分区、软件包选择、用户配置等操作[^3]。以下是具体实现步骤: --- #### 二、创建Kickstart配置文件 1. **生成基础模板**(Ubuntu 22.04为例): ```bash sudo apt-get install system-config-kickstart system-config-kickstart # 图形化生成基础配置 ``` 2. **关键配置示例**: ```kickstart # 语言与区域 lang en_US keyboard us timezone Asia/Shanghai # 网络配置 network --bootproto=dhcp # 分区方案(参考用户之前的分区需求) part /boot --fstype=ext4 --size=512 part bios_grub --fstype=biosboot --size=1 part / --fstype=ext4 --size=20480 # 用户与认证 rootpw --plaintext yourpassword user admin --password=admin123 --groups=sudo # 软件包选择 %packages @ubuntu-server openssh-server unattended-upgrades # 启用安全更新自动化[^1] %end # 后安装脚本(可选SQL Server等软件安装[^2]) %post apt-get install -y mssql-server %end ``` --- #### 三、准备安装媒介 1. **挂载Ubuntu ISO**: ```bash mkdir -p /mnt/iso mount -o loop ubuntu-22.04-live-server.iso /mnt/iso ``` 2. **集成配置文件**: ```bash cp ks.cfg ubuntu_files/ # 将Kickstart文件放入ISO修改目录[^3] ``` 3. **修改引导配置**: 编辑`isolinux/txt.cfg`,添加自动安装入口: ```cfg label autoinstall menu label ^Auto Install Ubuntu kernel /casper/vmlinuz append initrd=/casper/initrd autoinstall ds=nocloud-net;s=/cdrom/ubuntu_files/ quiet --- ``` --- #### 四、执行无人值守安装 1. **创建启动盘**: ```bash sudo xorriso -as mkisofs -r -V "AutoUbuntu" -o autoinstall.iso -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table /mnt/iso ``` 2. **启动验证**: ```bash qemu-system-x86_64 -cdrom autoinstall.iso -m 2048 # 虚拟机测试 ``` --- #### 五、安装后自动化增强 1. **启用无人值守安全更新**: ```bash sudo dpkg-reconfigure -plow unattended-upgrades # 交互式配置[^1] ``` 2. **验证更新策略**: ```yaml # 文件 /etc/apt/apt.conf.d/50unattended-upgrades Unattended-Upgrade::Allowed-Origins { "${distro_id}:${distro_codename}"; "${distro_id}:${distro_codename}-security"; }; ``` --- ### 关键问题解决技巧 1. **调试日志获取**: ```bash journalctl -b | grep cloud-init # 查看自动化安装日志 ``` 2. **硬件适配方案**: - 使用`d-i debian-installer/allow_unauthenticated boolean true`跳过驱动认证 - 在`%post`阶段添加特定硬件驱动安装脚本 --- ### 相关拓展问题 1. 如何为Kickstart添加LVM分区配置? 2. 无人值守安装时如何处理多磁盘阵列(RAID)? 3. 如何在自动化安装中集成OpenCV编译环境[^4]? 4. 如何通过PXE网络实现批量无人值守部署?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值