最后活跃于 1705433115

VM template cleanup

修订 4c04a50fdeb7b951f3766b0c66d5aece833dbab3

cleanup.sh 原始文件
1#!/bin/sh -eux
2
3major_version="`sed 's/^.\+ release \([.0-9]\+\).*/\1/' /etc/redhat-release | awk -F. '{print $1}'`";
4
5# make sure we use dnf on EL 8+
6if [ "$major_version" -ge 8 ]; then
7 pkg_cmd="dnf"
8else
9 pkg_cmd="yum"
10fi
11
12
13echo "Remove development and kernel source packages"
14$pkg_cmd -y remove gcc cpp gc kernel-devel kernel-headers glibc-devel elfutils-libelf-devel glibc-headers kernel-devel kernel-headers
15
16if [ "$major_version" -ge 8 ]; then
17 echo "remove orphaned packages"
18 dnf -y autoremove
19 echo "Remove previous kernels that preserved for rollbacks"
20 dnf -y remove -y $(dnf repoquery --installonly --latest-limit=-1 -q)
21else
22 echo "Remove previous kernels that preserved for rollbacks"
23 if ! command -v package-cleanup >/dev/null 2>&1; then
24 yum -y install yum-utils
25 fi
26 package-cleanup --oldkernels --count=1 -y
27fi
28
29# Avoid ~200 meg firmware package we don't need
30# this cannot be done in the KS file so we do it here
31echo "Removing extra firmware packages"
32$pkg_cmd -y remove linux-firmware
33
34echo "clean all package cache information"
35$pkg_cmd -y clean all --enablerepo=\*;
36
37# Clean up network interface persistence
38rm -f /etc/udev/rules.d/70-persistent-net.rules;
39mkdir -p /etc/udev/rules.d/70-persistent-net.rules;
40rm -f /lib/udev/rules.d/75-persistent-net-generator.rules;
41rm -rf /dev/.udev/;
42
43for ndev in `ls -1 /etc/sysconfig/network-scripts/ifcfg-*`; do
44 if [ "`basename $ndev`" != "ifcfg-lo" ]; then
45 sed -i '/^HWADDR/d' "$ndev";
46 sed -i '/^UUID/d' "$ndev";
47 fi
48done
49
50
51echo "truncate any logs that have built up during the install"
52find /var/log -type f -exec truncate --size=0 {} \;
53
54echo "remove the install log"
55rm -f /root/anaconda-ks.cfg /root/original-ks.cfg
56
57echo "remove the contents of /tmp and /var/tmp"
58rm -rf /tmp/* /var/tmp/*
59
60echo "Clear the history so our install commands aren't there"
61rm -f /root/.wget-hsts