usage() {
echo "
- This tool collects information of the hardware this tool is being executed
- on. It can be executed as normal user to collect some basic information or
- with root permissions to collect as much information as possible. By
- default, a file named grml-hwinfo-TIMESTAMP.tar.bz2 storing all collected
- information will be created in the current working directory. Alternatively,
- you can have it create a directory with all information.
+ This tool collects information of the hardware it is being executed on.
+ It can be executed as normal user to collect some basic information or
+ (recommended) with root permissions to collect more system information.
+ If executed without any options a file named grml-hwinfo-TIMESTAMP.tar.bz2
+ storing all collected information is created in the current working directory.
Options:
# disks / devices
[ -f /proc/scsi/scsi ] && cat /proc/scsi/scsi > scsi
- (lspci; lspci -n) | sort > lspci
- [ -r /proc/bus/pnp ] && lspnp > lspnp
- [ -r /proc/bus/usb ] && lsusb > lsusb
+ exectest lspci && lspci -nn > lspci
cat /proc/partitions > partitions
find /proc/ide/ -name geometry -exec grep . {} \; > proc_ide 2>/dev/null
df -h > df 2>/dev/null
- for i in free lsmod mount lsdev ; do
- exectest $i && $i > $i
+ for i in free lsmod mount lsdev lspnp lsusb ; do
+ exectest $i && $i > $i
done
swapon -s > swapon 2>swapon.error
exectest dmsetup && dmsetup ls > dmsetup_ls 2>dmsetup_ls.error
+ # iSCSI
+ if exectest iscsiadm ; then
+ iscsiadm -m session > iscsiadm_session 2>iscsiadm_session.error
+ iscsiadm -m fw > iscsiadm_fw 2>iscsiadm_fw.error
+ iscsiadm -m host > iscsiadm_host 2>iscsiadm_host.error
+ iscsiadm -m iface > iscsiadm_iface 2>iscsiadm_iface.error
+ iscsiadm -m node > iscsiadm_node 2>iscsiadm_node.error
+ iscsiadm -m discovery > iscsiadm_discovery 2>iscsiadm_discovery.error
+ fi
+
+ if exectest lsscsi ; then
+ lsscsi > lsscsi 2>lsscsi.error
+ lsscsi -t > lsscsi_transport 2>lsscsi_transport.error
+ fi
+
for disk in $disklist; do
if exectest smartctl ; then
echo -e "smartctl -a /dev/${disk}:\n" >> smartctl
)
# get rid of empty files
-for file in *; do
+for file in *.error ; do
test -s $file || rm $file
done
# create tarball
if [ -n "$GENERATE_FILE" ] ; then
- tar jcf "${OUTFILE}" "${OUTDIRNAME}"
+ tar acf "${OUTFILE}" "${OUTDIRNAME}"
[ -r "$OUTFILE" ] && echo "$OUTFILE ("$(ls -ahl "$OUTFILE" | awk '{print $5}')") has been generated."
fi