ابتدا تنظیمات اولیه را طبق مراحل زیر انجام میدهیم تا پکیج های مورد نیاز نصب و آماده سازی اولیه انجام گردد.
# Install packages
yum install -y wget open-vm-tools cloud-init cloud-utils-growpart
# Permit root login
sed -i "/PermitRootLogin/d" /etc/ssh/sshd_config && echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
# Disable predictable interface name
sed -i -r 's/GRUB_CMDLINE_LINUX="(.*)"/GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0 \1"/g' /etc/default/grub
# Remove all interface config files except loopback
find /etc/sysconfig/network-scripts/ -type f -not -name 'ifcfg-lo' -name 'ifcfg-*' -delete
# Disable UUID for partitions in grub config
echo 'GRUB_DISABLE_LINUX_UUID="true"' >> /etc/default/grub
# Replace UUID in /etc/fstab with device file name
# Recreate grub configuration
grub2-mkconfig -o /boot/grub2/grub.cfg
# Set timezone
timedatectl set-timezone Asia/Tehran
# Activate local repository mirror
sed -i -r "s/\#baseurl=http:\/\/mirror.centos.org/baseurl=http:\/\/centos.mirror.afranet.com/g ; s/(^mirrorlist=\.*)/\#\1/g" /etc/yum.repos.d/*
# Create swap file (if needed)
touch /swap.img
chmod 600 /swap.img
dd if=/dev/zero of=/swap.img bs=1024k count=2000
mkswap /swap.img
swapon /swap.img
echo "/swap.img none swap sw 0 0" >> /etc/fstab
# Download password and ssh key management script
curl https://shop.afranet.net/files/cloud-password-manager -o /usr/sbin/cloud-password-manager
chmod +x /usr/sbin/cloud-password-manager
# Activate ConfigSDrive and CloudStack datasource in Cloud-init
echo 'datasource: ConfigDrive, CloudStack' > /etc/cloud/ds-identify.cfg
# Configure Cloud-init
curl https://shop.afranet.net/files/cloud-init.cfg -o /etc/cloud/cloud.cfg.d/zzz-afracloud.cfg
پس از انجام مراحل اولیه تنظیمات نهایی را طبق دستورات زیر انجام میدهیم.
yum clean all
cloud-init clean -ls
rm -rf /var/log/* /root/.bash_history /root/.cache/ /root/.ssh/ /root/.viminfo /root/snap /root/.password.md5 /var/lib/NetworkManager/dhclient-*.lease /etc/udev/rules.d/70-persistent-net.rules /root/anaconda-ks.cfg
passwd -d root
unset HISTFILE
history -c
shutdown -h now