5tarl0rd
Current Path : /sbin/ |
|
Current File : //sbin/iprsos |
#!/bin/bash
# This script displays information about iprutils, IPR adapters and systemd services
# related to IPR. It will also create an sos report with iprutils information at $file
# when iprsos is invoked with "-o /path/to/file".
function _ipr_dump() {
echo "=== Running 'iprconfig -c dump' ==="
iprconfig -c dump
}
function _lspci() {
echo
echo "=== Running 'lspci' ==="
lspci
}
function _lsscsi() {
echo
echo "=== Running 'lsscsi' ==="
lsscsi
}
function _lsscsi_H() {
echo
echo "=== Running 'lsscsi -H' ==="
lsscsi -H
}
function _check_daemons() {
if which systemctl >/dev/null 2>&1; then
echo
echo === IPR daemons: Running 'systemctl status ipr{init,dump,update}.service' ===
systemctl status iprdump.service
systemctl status iprinit.service
systemctl status iprupdate.service
else
echo
echo === IPR daemons: Running 'service ipr* status' ===
service iprinit status
service iprdump status
service iprupdate status
fi
}
function _etc_ipr() {
echo
echo "=== Contents of '/etc/ipr/ ' ==="
if [ -d /etc/ipr ]; then
ls /etc/ipr/
else
echo "No files at /etc/ipr/"
fi
}
function _var_log_iprdump () {
echo
echo "=== Contents of '/var/log/iprdump*' ==="
if [ -f /var/log/iprdump.? ]; then
ls -lh /var/log/iprdump*
else
echo "No iprdump files found at /var/log."
fi
}
function _var_log_messages() {
echo
echo "=== Contents of '/var/log/messages' ==="
cat /var/log/messages
if [ -f /var/log/dmesg ]; then
echo "=== Contents of '/var/log/dmesg' ==="
cat /var/log/dmesg
fi
if [ -f /var/log/boot.msg ]; then
echo "=== Contents of '/var/log/boot.msg' ==="
cat /var/log/boot.msg
fi
if [ -f /var/log/kern.log ]; then
echo "=== Contents of '/var/log/kern.log' ==="
cat /var/log/kern.log
fi
if [ -f /var/log/syslog ]; then
echo "=== Contents of '/var/log/syslog' ==="
cat /var/log/syslog
fi
}
function _run_sos() {
_ipr_dump
_lspci
_lsscsi
_lsscsi_H
_check_daemons
_etc_ipr
_var_log_iprdump
_var_log_messages
}
args=($@)
if [ -z ${args[0]} ]; then
file=
elif [ ${args[0]} = "-o" ]; then
file=${args[1]}
if [ -z $file ]; then
echo "Usage: ./iprsos -o path/to/file"
exit 1
fi
fi
if [ -z $file ]; then
_run_sos
else
_run_sos > $file
fi
5tarL0rd By