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:
exectest hwinfo && hwinfo log=hwinfo
exectest numactl && numactl --hardware > numactl
exectest x86info && x86info > x86info 2>x86info.2
-
- # net stuff
- exectest ifconfig && ifconfig -v -a > ifconfig
- exectest ip && ip route show > ip_route
- exectest ip && ip link show > ip_link
- exectest route && route -n > route
+ exectest lscpu && lscpu > lscpu
+
+ # net stuff, net-tools:
+ exectest ifconfig && ifconfig -v -a > ifconfig
+ exectest route && route -n > route
+
+ # net stuff, iproute:
+ exectest ip && ip addrlabel list > ip_addrlabel
+ exectest ip && ip addr show > ip_addr
+ exectest ip && ip link show > ip_link
+ exectest ip && ip maddr show > ip_maddr
+ exectest ip && ip mroute show > ip_mroute
+ exectest ip && ip mrule show > ip_mrule
+ exectest ip && ip neigh show > ip_neigh
+ exectest ip && ip netns list > ip_netns
+ exectest ip && ip ntable show > ip_ntable
+ exectest ip && ip route show > ip_route
+ exectest ip && ip rule show > ip_rule
+ exectest ip && ip tunnel show > ip_tunnel
+ exectest ip && ip tuntap show > ip_tuntap
# software
if exectest dpkg ; then
# power management
exectest laptop-detect && laptop-detect >/dev/null 2>/dev/null && echo "0" > laptop_detected
- exectest acpi_available && acpi_available && cat /proc/acpi/info > acpi_info
+ if [ -r /proc/acpi/info ] ; then
+ cat /proc/acpi/info > acpi_info
+ fi
+
exectest acpi && acpi > acpi 2> acpi.error && acpi -v > acpi.version
[ -r /proc/apm/ ] && apm > apm
exectest lvdisplay && lvdisplay > lvdisplay 2>lvdisplay.error
exectest dmsetup && dmsetup ls > dmsetup_ls 2>dmsetup_ls.error
+ exectest dmsetup && dmsetup ls --tree > dmsetup_ls_tree 2>dmsetup_ls_tree.error
+ exectest lsblk && lsblk > lsblk 2>lsblk.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 "\n\n" >> sdparm
fi
+ if exectest sg_inq ; then
+ echo -e "sg_inq /dev/${disk}:\n" >> sg_inq
+ sg_inq /dev/$disk >> sg_inq
+ echo -e "\n\n" >> sg_inq
+ fi
+
file -s /dev/$disk?* | grep -v ": empty" >> file_disk
done
fi
# 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