通过cobbler可以实现半自动化安装系统(因为需要手动选择菜单,安装对应的系统,默认local安装),但是安装centos7系统,有三个问题;*
1,在ks文件上设置了--bootproto=static --device=ens33 --onboot=yes --ip= --netmask --gateway= --ipv6=auto --activate,当系统安装好后查看网卡配置信息时,仍然时dhcp模式,并且IP,掩码,网关并没有配置;怎么可以通过设定的ks文件自动配置网卡信息?
2,在ks文件上配置的网卡名称--device=ens33,系统安装后,通过ifconfig看到的配置网卡名称仍然是eth0,但是网卡的配置文件名称(/etc/sysconfig/network-scripts/ifcfg-)是ens33,配置文件NAME=ens33,DEVICE=ens33(我不想用eth0作为网卡名称,我像让系统自己自动命名的网卡名称)。(ifconfig查看的网卡名称和网卡配置信息不一致!)因为ifconfig查看到的网卡是eth0和网卡配置文件名及配置文件内网卡名称ens33不同,导致配置/etc/sysconfig/network-scripts/ifcfg-ens33配置信息,重启网卡后不生效,需要将网卡配置文件名和配置文件的DEVICE、NAME,ens33改为eth0 ,并且关闭/卸载NetworkManager后,才可以通过/etc/sysconfig/network-scripts/ifcfg-eth0配置网卡,就是说比较麻烦,怎么才可以自动识别centos7的网卡名称信息,而不是手动输入指定网卡名称。cobbler默认好像就是eth0。
3,cobbler改变默认启动项(不是local)后,服务器启动后会无限的安装系统,通过什么方式可以实现,开机就从网络中安装系统,系统安装后,直接从local启动服务器,而不是在无人参与的情况下无限制的做系统?下面是ks文件信息。希望您能帮我解惑,越详细越好。
总结:目前我可以通过cobbler做系统,但是主要就是网卡(网络)部分出现问题,网卡名称我想用系统自动分配的名称,而不是、不是、不是(重要的话说三遍)类似eth0、eth1命名,我想让我所设置的,做完系统就是我想要的,就跟用系统盘做的一样,如果是多网卡怎么配置。可以把我下面的ks文件修改一下或者重新做一个也行。还有一个问题,我通过配置/var/lib/tftpboot/pxelinux.cfg/default文件可以设置默认选择的启动菜单。但是做完系统后,仍然还会选择默认菜单,出现重复做系统的情况。用什么办法可以实现,从开机自动选择系统菜单做系统,系统做完重启之后,实现本地(local)开机,而不是再次选择默认的系统菜单。
install
keyboard 'us'
#rootpw --iscrypted="$1$random-p$hWuOLQDqdHnV5/VQDgxS60"
rootpw --plaintext zzzaaa
url --url="$tree"
lang en_US
auth --useshadow --passalgo=sha512
text
reboot
firstboot --disable
selinux --disabled
firewall --disabled
#network --bootproto=dhcp --device=eth0 --onboot=yes --ipv6=auto --activate
network --bootproto=static --device=ens33 --gateway=192.168.3.1 --ip=192.168.3.111 --nameserver=8.8.8.8 --netmask=255.255.255.0 --ipv6=auto --activate
#$SNIPPET('network_config')
network --hostname=cobbler
timezone Asia/Shanghai
bootloader --append="net.ifnames=0" --location=mbr
zerombr
clearpart --all --initlabel
part /boot --fstype="xfs" --size=500
part / --fstype="xfs" --grow --size=1
part swap --fstype="swap" --size=4000
#part /data --fstype="xfs" --size=10000
%packages
@^minimal
autofs
vim-enhanced
yum-utils
bash-completion
net-tools
%end
%post --interpreter=/bin/bash
%end
```