#Deprecated functions since centOs 7 #https://docs.centos.org/en-US/8-docs/advanced-install/assembly_kickstart-commands-and-options-reference/#kickstart-changes_kickstart-commands-and-options-reference text reboot url --mirrorlist=http://mirrorlist.centos.org/?release=8&arch=x86_64&repo=baseos lang en_US.UTF-8 keyboard --vckeymap=us --xlayouts='us' timezone Europe/Berlin --isUtc --nontp clearpart --none --initlabel bootloader --location=mbr --boot-drive=sda part biosboot --fstype="biosboot" --ondisk=sda --size=1 part / --fstype="xfs" --ondisk=sda --grow --label=SLX_SYS %packages @^minimal-environment %end # small python script to extract the password from the kernel command line # expects the password given as: rootpw= %pre --interpreter=/usr/libexec/platform-python import shlex, crypt arg = 'rootpw=' with open('/proc/cmdline', 'r') as f: kcl = f.read().split() # extract the password passwords = [x[len(arg):] for x in kcl if x.startswith(arg)] if len(passwords) == 1: kclpass = passwords[0] # TODO sane fallbacks. This should work most of the time though :) # generate SHA512 hash hash = crypt.crypt(kclpass, crypt.mksalt(crypt.METHOD_SHA512)) with open('/tmp/setup-root-pass', 'w') as f: f.write('rootpw --iscrypted ' + hash) %end # include the created password file %include /tmp/setup-root-pass %post --erroronfail # allow root login for ansible sed 's,^[[:blank:]]*#*PermitRootLogin.*,PermitRootLogin yes,g' /etc/ssh/sshd_config ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules cat > /etc/sysconfig/network-scripts/ifcfg-eth0 <