设为首页 收藏本站
查看: 764|回复: 0

[经验分享] pxe + preseed.cfg 实现自动安装debian 7.4

[复制链接]

尚未签到

发表于 2018-5-15 07:56:16 | 显示全部楼层 |阅读模式

  实验环境
  vmware 10, debian 7.4,路由器pppoe上网方式,

内网网关:192.168.1.1
内网dns :192.168.1.1
本机  ip    :192.168.1.160


准备工作
1)安装所需软件 tftpd-hpa ,isc-dhcp-server,apache
2)下载 netboot.tar.gz, 并将其解压到 tftp server 的根目录当中
http://mirrors.163.com/debian/dists/wheezy/main/installer-i386/current/images/netboot/netboot.tar.gz


1、配置tftp server,根目录为 /srv/tftp
root@debian:/srv/tftp/fai# cat /etc/default/tftpd-hpa
# /etc/default/tftpd-hpa


TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp/"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"





编辑 pxelinux.cfg/default


root@debian:/srv/tftp# cat pxelinux.cfg/default
# D-I config version 2.0
#include debian-installer/i386/boot-screens/menu.cfg
default debian-installer/i386/boot-screens/vesamenu.c32
prompt 0
timeout 0
default auto
label auto
menu label ^Auto install
menu default
kernel debian-installer/i386/linux
append auto=true priority=critical vga=788 initrd=debian-installer/i386/initrd.gz debian-installer/allow_unauthenticated=true  nterface=auto netcfg/dhcp_timeout=60 netcfg/choose_interface=auto url=http://192.168.1.160/preseed.cfg
root@debian:/srv/tftp#



======================================


2、配置dhcp 服务:
vi /etc/dhcp/dhcpd.conf
subnet 192.168.1.0  netmask 255.255.255.0 {
  range 192.168.1.200 192.168.1.220;
  option domain-name-servers 192.168.1.1;
#  option domain-name "internal.example.org";
  option routers 192.168.1.1;
  option broadcast-address 192.168.1.255;
  default-lease-time 600;
  max-lease-time 7200;
  next-server 192.168.1.160;
  filename  "pxelinux.0";
}



  3、 编辑 preseed.cfg 文件
  这个是重点,前面的dhcp 、tftp很容易。这里可以直接使用官方提供的模板来修改

模板位置:http://www.debian.org/releases/wheezy/example-preseed.txt
官方的安装手册:http://www.debian.org/releases/wheezy/i386/
文档介绍的很详细,可以很好的学习一下,这次试验就是根据这个文档来做的,没什么技术含量,只是做了一个实践而已。
  我使用是的 preseed.cfg 文件内容如下:该文件位于apache的网页文件根目录。使用 debconf-set-selections -cpreseed.cfg检测其语法正确性。
  


root@debian:/var/www# grep -vE  "^$|^#" preseed.cfg
d-i debian-installer/locale string en_US.UTF-8
## 键盘配置这一项,在使用示例文件中的  d-i keymap select us   不起作用,还是会出现选择键盘布局的交互式界面,采用下一行的配置,即可正常进行下去。
d-i keyboard-configuration/xkb-keymap select us  
d-i netcfg/choose_interface select auto
d-i netcfg/get_hostname string unassigned-hostname
d-i netcfg/get_domain string unassigned-domain
d-i mirror/country string manual


# 软件源这里,要使用官方的镜像源,使用dvd或者cd搭建的局域网apt源,无法实现自动安装系统,中途会出现严重警告,需要人为干预,才可进行下去,这不能实现自动安装。当然也可以考虑对官方源的摸一个分支做一个本地镜像,但是花费的时间和磁盘空间比较大,没有做这个。
d-i mirror/http/hostname string mirrors.163.com
d-i mirror/http/directory string /debian
d-i mirror/http/proxy string
d-i passwd/make-user boolean false
d-i passwd/root-password password admin
d-i passwd/root-password-again password admin
d-i clock-setup/utc boolean true
d-i time/zone string US/Eastern
d-i clock-setup/ntp boolean true
d-i partman-auto/method string lvm
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-lvm/confirm boolean true
d-i partman-lvm/confirm_nooverwrite boolean true
d-i partman-auto/choose_recipe select atomic
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
d-i partman-md/confirm boolean true
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
d-i debian-installer/allow_unauthenticated boolean true


#这里选择安装标准套件,默认情况下,示例文件将此注释掉了,然后安装时要安装1300多个包,使用standard,只要用100多个,节省时间。当然,实际情况还要根据需求来
tasksel tasksel/first multiselect  standard
d-i finish-install/reboot_in_progress note


4, 这个过程只是最简单的实现了自动化安装,还有更多的自定义方面的内容可以修改,比如指定安装某些软件,安装完执行某些脚本等,还有个方案是 使用fai 工具,接下来就是学习fai这一个方法。









  

  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-460213-1-1.html 上篇帖子: ansible学习笔记(一):ansible for debian安装 下篇帖子: fai 自动安装debian 7.4
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表