https://buttondown.com/hillelwayne/archive/my-gripes-with-prolog/ #Programming #CodeQuality #DeveloperHumor #TechRants #HackerNews #ngated
I'm the author and maintainer of the automation-code that my company uses to build Red Hat (and similar) AMIs and Azure VM-templates. One of our customers has decided that they don't want to use CentOS Stream 8 as their "free" EL8 option. Instead, they want to use Oracle Linux 8.
Now, I hate Oracle already. And, their version of RHEL 8 has a lot of annoyances about it. Most recently, discovered that their UEK kernel is faaaaat.
Prior to our EL8 build-automation, it was always sufficient to have a /boot partition that was 400-512MiB in size. One that size could usually house up to three kernel-RPMs worth of content. Unfortunately, while that's still true of RHEL 8, CentOS Stream 8 and a couple of the other clones, it's not true of Oracle Linux 8. In investigating what the problem was and to try to forecast how much space I'd need to set aside in Oracle Linux 8's specific disk-geometry, I found:
# df -PH /boot /boot/efi
Filesystem Size Used Avail Use% Mounted on
/dev/nvme0n1p3 762M 434M 328M 57% /boot
/dev/nvme0n1p2 64M 5.3M 59M 9% /boot/efi
# find /boot -type f | \
xargs rpm -qf --qf '%{name}\n' | \
grep -v not\ owned | \
sort -u | \
xargs rpm -qi | \
awk '$1=="Name" { n=$3} $1=="Size" {s=$3 / 1024 / 1024 } $1=="Description" { printf("%7.3f %s\n",s,n) }' | \
sort -n
0.000 grub2-pc
2.259 grub2-efi-x64
2.726 shim-x64
71.003 kernel-core
109.875 kernel-uek-coreThe above is with only one iteration of the kernel-core and kernel-uek RPMs installed. Looks like, if I want to accommodate two kernels worth of rollback (or just one "new" kernel on top of the running-kernel), I'll need to double or treble the space I need to allocate for RHEL 8, CentOS Stream 8 and a couple of the other clones.