为了做到自动化,操作系统的安装也需要自动化,而自动安装Linux操作系统,自然就会想到用Kickstart。本文只分享centos5/6/7安装使用的几个kickstart文件,笔者将其用在Linux虚拟机的自动安装中。
我共享的kickstart文件,都可以在这里找到:https://github.com/smilejay/other-code/tree/master/kickstart
CentOS 5.x 的一个kickstart文件示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# Kickstart file automatically generated by anaconda. # Kickstart refrence doc: http://molinux.blog.51cto.com/2536040/548247 install text url --url=http://mirrors.163.com/centos/5.11/os/x86_64 #url --url=http://mirrors.ustc.edu.cn/centos/5.11/os/x86_64 key --skip lang en_US.UTF-8 keyboard us network --device eth0 --bootproto dhcp --noipv6 rootpw 123456 #rootpw --iscrypted $1$BARjKhbz$usum13IcRmtCqGK6Lkx25/ # 使用 'grub-crypt --md5' 命令可生成上面的md5密文 authconfig --enableshadow --enablemd5 zerombr clearpart --all --initlabel autopart #selinux --enforcing #firewall --enabled --port=22:tcp selinux --disabled firewall --disabled timezone Asia/Shanghai bootloader --location=partition --driveorder=sda --append="rhgb quiet" skipx poweroff # reboot # 默认就是reboot %packages @base |
CentOS 6.x 的一个kickstart配置文件示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# Kickstart file automatically generated by anaconda. #version=RHEL6.7 install url --url=http://mirrors.ustc.edu.cn/centos/6.7/os/x86_64 #url --url=http://mirrors.163.com/centos/6.7/os/x86_64 #url --url=http://mirrors.aliyun.com/centos/6.7/os/x86_64 lang en_US.UTF-8 keyboard us network --device eth0 --bootproto dhcp --noipv6 #network --device eth0 --bootproto dhcp --ipv6 dhcp rootpw --iscrypted $6$45lFuCoyFZwpy3Gn$kvCuoEVXyK0q6ow7qBmo9vaEyajunJ62LR5HlmAKRAOpK/Z2ZyrSSbaPsSHnhZU2P1MF5e.QDu2wkOOo661It. zerombr clearpart --all --initlabel autopart firewall --service=ssh authconfig --enableshadow --passalgo=sha512 --enablefingerprint selinux --enforcing timezone --utc America/New_York bootloader --location=partition --driveorder=sda --append="rhgb quiet" skipx text cmdline poweroff %packages @base nfs-utils NetworkManager %end |
CentOS 7.x 的一个kickstart配置文件示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# Kickstart file automatically generated by anaconda. #version=CentOS7.2.1511 install url --url=http://mirrors.163.com/centos/7.2.1511/os/x86_64/ #url --url=http://mirrors.tuna.tsinghua.edu.cn/centos/7.2.1511/os/x86_64 #url --url=http://mirrors.ustc.edu.cn/centos/7.2.1511/os/x86_64/ lang en_US.UTF-8 keyboard us network --onboot yes --device eth0 --bootproto dhcp --noipv6 # rootpw 123456 rootpw --iscrypted $6$usXq8bASBPaiTLAg$C7Y9ntvQuIxDmyAkUXQ/3tHJ4JOJyAFukYX0ChGsJ/8HtGfA3lFM8dXen327lgAnClcaLrsNACQ3t.mYjqf56/ zerombr clearpart --all --initlabel autopart authconfig --enableshadow --passalgo=sha512 --enablefingerprint selinux --disabled firewall --disabled timezone --utc Asia/Shanghai bootloader --location=mbr --driveorder=sda --append="" skipx text cmdline poweroff %packages @base @development iptraf screen sysstat nmap-ncat tree nfs-utils NetworkManager %end |
几个注意点:
1. 示例kickstart文件中都是将磁盘全部清空分区并自动重新分区的,比较暴力哈。 可以自己指定,如:part / --fstype="ext4" --ondisk=vda --size=10000 (size以MB为单位;也可以用--percent=95指定百分比)
2. 'grub-crypt --md5'命令可用于生成密码的md5密文,同样也可以是sh512的密文。
3. centos7的kickstart文件中“bootloader --location=mbr” 而不能用centos5/6中的“--location=partition”。
Redhat的kickstart资料:https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Installation_Guide/sect-kickstart-syntax.html
较为详细介绍Kickstart配置的资料:http://molinux.blog.51cto.com/2536040/548247
一个centos 5.x的kickstart使用:https://lazyzhu.com/Linux/Automated-and-quick-install-centos-5-with-kickstart.html
grub-crypt命令生成加密密码:http://mokumsolutions.com/how-generate-encrypted-password-grub-crypt