HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //usr/local/sbin/growvar
#!/bin/bash
# dib-lint: disable=dibdebugtrace
set -exu
set -o pipefail

var_dev=$(df -P /var | tail -n 1 | awk '/.*/ { print $1 }')

if [ -z "${var_dev}" ]; then
    echo "*** Root device not found?"
    exit 1
fi

udev_var=$(udevadm info --query=all --name $var_dev)

part=$(grep ID_PART_ENTRY_DISK <<< "${udev_var}" | cut -d= -f2)
if [ -z "${part}" ]; then
    echo "*** var partition not found!"
    exit 1
fi
part_no=$(grep ID_PART_ENTRY_NUMBER <<< "${udev_var}" | cut -d= -f2)
if [ -z "${part_no}" ]; then
    echo "*** Var partition number not found!"
    exit 1
fi

disk=$(find /sys/dev/block -name ${part})
disk="/dev/$(source ${disk}/uevent; echo $DEVNAME)"

set +e
growpart $disk $part_no
# Error code 1 means no change
if [ "$?" -le 1 ]; then
    # always return true because this might not work if were are non ext4
    resize2fs $var_dev || true
fi