generic/fedora-18-x86_64-minimal.ks | 58 +++++++++++++++++++++++++++--------- 1 file changed, 45 insertions(+), 13 deletions(-) New commits: commit 7e8b4ca4673a5386ee7a7890883379bd606595d3 Author: Matthew Miller <mattdm@xxxxxxxxxx> Date: Thu Dec 13 10:23:43 2012 -0500 relatime diff --git a/generic/fedora-18-x86_64-minimal.ks b/generic/fedora-18-x86_64-minimal.ks index 9609d2d..c93832c 100644 --- a/generic/fedora-18-x86_64-minimal.ks +++ b/generic/fedora-18-x86_64-minimal.ks @@ -71,7 +71,7 @@ iptables-services echo -n "Writing fstab" cat <<EOF > /etc/fstab -LABEL=_/ / ext4 defaults 1 1 +LABEL=_/ / ext4 defaults,relatime 1 1 EOF echo . commit f414d98bb75c04f413cbb7125aee32a404661210 Author: Matthew Miller <mattdm@xxxxxxxxxx> Date: Thu Dec 13 10:01:10 2012 -0500 echo some comments in the post script diff --git a/generic/fedora-18-x86_64-minimal.ks b/generic/fedora-18-x86_64-minimal.ks index db0b1ce..9609d2d 100644 --- a/generic/fedora-18-x86_64-minimal.ks +++ b/generic/fedora-18-x86_64-minimal.ks @@ -69,34 +69,44 @@ iptables-services %post --erroronfail +echo -n "Writing fstab" cat <<EOF > /etc/fstab LABEL=_/ / ext4 defaults 1 1 EOF +echo . - -# grub tweaks +echo -n "Grub tweaks" echo GRUB_TIMEOUT=0 > /etc/default/grub sed -ie 's/^set timeout=5/set timeout=0/' /boot/grub2/grub.cfg +echo . # for EC2, need to figure out how to set up menu.list for pv-grub + # setup systemd to boot to the right runlevel +echo -n "Setting default runlevel to multiuser text mode" rm -f /etc/systemd/system/default.target ln -s /lib/systemd/system/multi-user.target /etc/systemd/system/default.target +echo . # because we didn't install rsyslog, enable persistent journal +echo -n "Enabling persistent journal" mkdir /var/log/journal/ +echo . # this is installed by default but we don't need it in virt +echo "Removing linux-firmware package." yum -C -y remove linux-firmware # Remove firewalld; was supposed to be optional in F18, but is required to # be present for install/image building. +echo "Removing firewalld and dependencies" yum -C -y remove firewalld # These are all pulled in by firewalld yum -C -y remove cairo dbus-glib dbus-python ebtables fontconfig fontpackages-filesystem gobject-introspection js libdrm libpciaccess libpng libselinux-python libwayland-client libwayland-server libX11 libX11-common libXau libxcb libXdamage libXext libXfixes libXrender libXxf86vm mesa-libEGL mesa-libgbm mesa-libGL mesa-libglapi pixman polkit pycairo pygobject2 pygobject3 python-decorator python-slip python-slip-dbus # Non-firewalld-firewall +echo -n "Writing static firewall" cat <<EOF > /etc/sysconfig/iptables # Simple static firewall loaded by iptables.service. Replace # this with your own custom rules, run lokkit, or switch to @@ -115,15 +125,19 @@ cat <<EOF > /etc/sysconfig/iptables -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT EOF +echo . # Because memory is scarce resource in most cloud/virt environments, # and because this impedes forensics, we are differing from the Fedora # default of having /tmp on tmpfs. +echo "Disabling tmpfs for /tmp." systemctl mask tmp.mount +echo "Zeroing out empty space." # This forces the filesystem to reclaim space from deleted files dd bs=1M if=/dev/zero of=/var/tmp/zeros || : rm -f /var/tmp/zeros +echo "(Don't worry -- that out-of-space error was expected.)" %end commit b3502d2e9da149691a5b985b960152de61c1cd62 Author: Matthew Miller <mattdm@xxxxxxxxxx> Date: Thu Dec 13 09:38:50 2012 -0500 tmp in disk instead of tmpfs diff --git a/generic/fedora-18-x86_64-minimal.ks b/generic/fedora-18-x86_64-minimal.ks index e2acef4..db0b1ce 100644 --- a/generic/fedora-18-x86_64-minimal.ks +++ b/generic/fedora-18-x86_64-minimal.ks @@ -116,6 +116,11 @@ cat <<EOF > /etc/sysconfig/iptables COMMIT EOF +# Because memory is scarce resource in most cloud/virt environments, +# and because this impedes forensics, we are differing from the Fedora +# default of having /tmp on tmpfs. +systemctl mask tmp.mount + # This forces the filesystem to reclaim space from deleted files dd bs=1M if=/dev/zero of=/var/tmp/zeros || : rm -f /var/tmp/zeros commit 7923fea15cd6e70109df9932491159629189f555 Author: Matthew Miller <mattdm@xxxxxxxxxx> Date: Thu Dec 13 08:52:57 2012 -0500 rootfs-resize doesn't work diff --git a/generic/fedora-18-x86_64-minimal.ks b/generic/fedora-18-x86_64-minimal.ks index e3e777d..e2acef4 100644 --- a/generic/fedora-18-x86_64-minimal.ks +++ b/generic/fedora-18-x86_64-minimal.ks @@ -22,8 +22,6 @@ network --bootproto=dhcp --device=eth0 --onboot=on services --enabled=network,sshd,rsyslog,iptables -# Define how large you want your rootfs to be. -# See root-resizefs below. part biosboot --fstype=biosboot --size=1 --ondisk sda part / --size 1024 --fstype ext4 --ondisk sda @@ -48,10 +46,6 @@ firewalld # security groups you can remove this. iptables-services -# Grows the filesystem to match the actual device size. You could instead -# choose the final size above and remove this. -rootfs-resize - # Some things from @core we can do without in a minimal install -biosdevname -plymouth @@ -126,8 +120,5 @@ EOF dd bs=1M if=/dev/zero of=/var/tmp/zeros || : rm -f /var/tmp/zeros -# This is used by rootfs-resize -touch /.rootfs-repartition - %end commit e00949b300e88568d7c128013e85172cd9258f7e Author: Matthew Miller <mattdm@xxxxxxxxxx> Date: Thu Dec 13 07:59:14 2012 -0500 add some notes (and rootfs-resize) diff --git a/generic/fedora-18-x86_64-minimal.ks b/generic/fedora-18-x86_64-minimal.ks index b760eb3..e3e777d 100644 --- a/generic/fedora-18-x86_64-minimal.ks +++ b/generic/fedora-18-x86_64-minimal.ks @@ -8,40 +8,58 @@ lang en_US.UTF-8 keyboard us timezone --utc America/New_York + auth --useshadow --enablemd5 selinux --enforcing + # this is actually not used, but a static firewall # matching these rules is generated below. firewall --service=ssh --service=http --service=https + bootloader --timeout=0 --location=mbr --driveorder=sda + network --bootproto=dhcp --device=eth0 --onboot=on services --enabled=network,sshd,rsyslog,iptables -# Define how large you want your rootfs to be +# Define how large you want your rootfs to be. +# See root-resizefs below. part biosboot --fstype=biosboot --size=1 --ondisk sda part / --size 1024 --fstype ext4 --ondisk sda # Repositories repo --name=fedora --mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-18&arch=$basearch -# We start with @core, and then add a few more packages to make a nice -# functional Fedora-like but still reasonably minimal cloud image. + +# Packag list. +# "Obsessively minimal as we can reasonably get and still be Fedora." %packages --nobase @core kernel + +# Not needed with pv-grub (as in EC2). Would be nice to have +# something smaller for F19 (syslinux?), but this is what we have now. grub2 + +# Needed initially, but removed below. firewalld + +# Basic firewall. If you're going to rely on your cloud service's +# security groups you can remove this. iptables-services +# Grows the filesystem to match the actual device size. You could instead +# choose the final size above and remove this. +rootfs-resize -# and, some things from @core we can do without in a minimal install +# Some things from @core we can do without in a minimal install -biosdevname -plymouth -NetworkManager -polkit -# ultra-minimal, in fact. +# These are "leaf" packages which can be done without in an ultra-minimal +# install, but which actually remove typical functionality -e2fsprogs -audit -rsyslog @@ -53,7 +71,8 @@ iptables-services %end -# Configuration + + %post --erroronfail cat <<EOF > /etc/fstab @@ -77,10 +96,10 @@ mkdir /var/log/journal/ # this is installed by default but we don't need it in virt yum -C -y remove linux-firmware -# remove firewalld; was supposed to be optional in F18, but is required to -# be present for image building. +# Remove firewalld; was supposed to be optional in F18, but is required to +# be present for install/image building. yum -C -y remove firewalld -# +# These are all pulled in by firewalld yum -C -y remove cairo dbus-glib dbus-python ebtables fontconfig fontpackages-filesystem gobject-introspection js libdrm libpciaccess libpng libselinux-python libwayland-client libwayland-server libX11 libX11-common libXau libxcb libXdamage libXext libXfixes libXrender libXxf86vm mesa-libEGL mesa-libgbm mesa-libGL mesa-libglapi pixman polkit pycairo pygobject2 pygobject3 python-decorator python-slip python-slip-dbus # Non-firewalld-firewall @@ -107,5 +126,8 @@ EOF dd bs=1M if=/dev/zero of=/var/tmp/zeros || : rm -f /var/tmp/zeros +# This is used by rootfs-resize +touch /.rootfs-repartition + %end _______________________________________________ cloud mailing list cloud@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/cloud