anaconda/anaconda-40.22.3.13/scripts/log-capture
2024-11-14 21:39:56 -08:00

66 lines
1.4 KiB
Bash
Executable file

#!/bin/bash
date=$(date +%F_%H%M%S)
OUTDIR=/tmp/log-capture-${date}
ARCHIVE=${1-/tmp/log-capture.tar.bz2}
# shellcheck disable=SC2068
_to_log() { local OutputFile=$(tr ' /' '_' <<<"$@"); $@ >${OUTDIR}/${OutputFile}; }
mkdir -p ${OUTDIR}
cd ${OUTDIR}
if [[ ! -f /tmp/ks.cfg ]];then
echo "# No /tmp/ks.cfg present" > ${OUTDIR}/ks.cfg
else
_to_log cat /mnt/sysimage/root/ks.cfg
fi
# the /mnt/sysimage/root/anaconda-ks.cfg file
# might not yet exist when this script is called
if [[ ! -f /mnt/sysimage/root/anaconda-ks.cfg ]];then
echo "# No /mnt/sysimage/root/anaconda-ks.cfg" > ${OUTDIR}/anaconda-ks.cfg
else
_to_log cat /mnt/sysimage/root/anaconda-ks.cfg
fi
_to_log date
_to_log dmesg
_to_log dmidecode
_to_log lspci -vvnn
# run fdisk -l on all disks
for DEV_NAME in $(list-harddrives | cut -d " " -f 1)
do
_to_log fdisk -l /dev/${DEV_NAME}
done
_to_log ls -lR /dev
_to_log dmsetup ls --tree
_to_log lvm pvs
_to_log lvm vgs
_to_log lvm lvs
_to_log cat /proc/mdstat
_to_log cat /proc/partitions
_to_log mount
_to_log df -h
_to_log cat /proc/meminfo
_to_log cat /proc/cpuinfo
_to_log ps axf
_to_log lsof
_to_log ip -s li
_to_log ip a
_to_log ip r
_to_log journalctl
cp /etc/resolv.conf ${OUTDIR}
cp /tmp/*.log ${OUTDIR}
cp /root/lorax-packages.log ${OUTDIR}
if [[ -e /tmp/pre-anaconda-logs/ ]];then
cp -r /tmp/pre-anaconda-logs ${OUTDIR}
fi
tar cfa ${ARCHIVE} ${OUTDIR}
echo -e "\nFinished gathering data\nUpload ${ARCHIVE} to another system\n"