Search
Search
Search
Search
Information
Information
Light
Dark
Open actions menu
Basic upload method
Bypass upload method
Tips!
If you encounter an error (by firewall) while uploading using both methods,
try changing extension of the file before uploading it and rename it right after.
Submit
~
usr
share
bug
mdadm
File Content:
script
#!/bin/bash # # mdadm bug submission control script # # allows Debian's bug tools to include relevant information in bug reports. # # Copyright © martin f. krafft <madduck@debian.org> # distributed under the terms of the Artistic Licence 2.0 # # we need /bin/bash for readline and -n capabalities in the prompt(s) # # maximise information output even in the case of errors set +eu if ! command -v yesno >/dev/null; then if [ -r /usr/share/reportbug/handle_bugscript ]; then exec /usr/share/reportbug/handle_bugscript ". $0" /dev/stdout fi yesno() { read -n1 -p"$1" REPLY case "$REPLY" in [yY]) REPLY=yep;; [nN]) REPLY=nop;; ('') REPLY="$2";; esac } exec 3>&1 fi # do not let people ctrl-c out of the bugscript trap : INT if [ $(id -u) != 0 ]; then if [ -x "$(command -v sudo)" ]; then yesno "Gather system information as root using sudo? (Y/n) " yep if [ "$REPLY" = yep ]; then echo running sudo "$0" "$@"... sudo "$0" "$@" >&3 && exit 0 echo "sudo invocation failed, trying /bin/su..." fi fi yesno "Gather system information as root using su? (Y/n) " yep if [ "$REPLY" = yep ]; then ARGS= for i in "$@"; do ARGS="${ARGS:+$ARGS }'$1'"; shift; done echo "running su root -s '/bin/sh -c $0${ARGS:+ $ARGS}'..." su root -s /bin/sh -c "$0 $ARGS" >&3 && exit 0 unset ARGS echo "su invocation failed." fi # arrive here only if neither sudo nor su worked: yesno "Will you provide system information in the bug report yourself? (N/y) " nop if [ "$REPLY" = yep ]; then cat <<_eof >&3 IMPORTANT: please do not forget to include all relevant system information with this bug report. You could run /usr/share/bug/mdadm/script 3>&1 as root and attach or include the output. _eof exit 0 fi # try our best cat <<_eof >&3 WARNING: the following output was not generated by the root user. If you can, please replace the following up until "-- System Information:" with the output of /usr/share/bug/mdadm/script 3>&1 run as root. Thanks! _eof fi if [ ! -r /proc/mdstat ]; then echo "The local system does not have MD (RAID) support: no drivers loaded." echo "Without MD support, I cannot collect as much information as I'd like." #yesno "Are you sure you want to report a bug at this time? " yep yesno "Hit any key to continue..." yep #[ "$REPLY" = yep ] || exit 1 fi echo "--- mdadm.conf" >&3 if [ -r /etc/mdadm/mdadm.conf ]; then grep '^[^#]' /etc/mdadm/mdadm.conf >&3 elif [ -r /etc/mdadm.conf ]; then grep '^[^#]' /etc/mdadm.conf >&3 else echo no mdadm.conf file. >&3 fi echo >&3 echo "--- /etc/default/mdadm" >&3 if [ -r /etc/default/mdadm ]; then grep '^[^#]' /etc/default/mdadm >&3 else echo no /etc/default/mdadm file. >&3 fi echo >&3 echo "--- /proc/mdstat:" >&3 cat /proc/mdstat >&3 2>&3 || : echo >&3 echo "--- /proc/partitions:" >&3 cat /proc/partitions >&3 2>&3 || : echo >&3 echo "--- LVM physical volumes:" >&3 if [ -x "$(command -v pvs)" ]; then pvs >&3 else echo "LVM does not seem to be used." >&3 fi echo "--- mount output" >&3 mount >&3 echo >&3 echo "--- initrd.img-$(uname -r):" >&3 if [ -r /boot/initrd.img-$(uname -r) ]; then TEMPDIR=$(mktemp -d) OLDPWD="$PWD" cd "$TEMPDIR" zcat /boot/initrd.img-$(uname -r) 2>&3 | cpio -i 2>&3 find -regex '.*/md[a/].+' -type f -exec md5sum {} \; >&3 echo >&3 echo "--- initrd's /conf/conf.d/md:" >&3 if [ -r conf/conf.d/md ]; then cat conf/conf.d/md >&3 else echo "no conf/md file." >&3 fi cd "$OLDPWD" rm -rf "$TEMPDIR" unset TEMPDIR else echo "no initrd.img-$(uname -r) found." >&3 fi echo >&3 if [ -r /proc/modules ]; then echo "--- /proc/modules:" >&3 egrep '(dm_|raid|linear|multipath|faulty)' < /proc/modules >&3 || : echo >&3 fi if [ -f /var/log/syslog ]; then if [ -r /var/log/syslog ]; then echo "--- /var/log/syslog:" >&3 egrep "^\w{3} [ :[:digit:]]{11} ($(hostname)|localhost) (kernel: md|mdadm): " /var/log/syslog >&3 || : echo >&3 else echo "syslog not readable by user." >&3 fi fi echo "--- volume detail:" >&3 for dev in /dev/[hsv]d[a-z]*; do [ ! -r $dev ] && echo "$dev not readable by user." && continue mdadm -E $dev 2>/dev/null && echo -- || echo "$dev is not recognised by mdadm." done >&3 echo >&3 if [ -r /proc/cmdline ]; then echo "--- /proc/cmdline" >&3 cat /proc/cmdline >&3 echo >&3 fi if [ -f /boot/grub/grub.cfg ]; then echo "--- grub2:" >&3 if [ -r /boot/grub/grub.cfg ]; then egrep '^[^#].*\<(root=|raid)' /boot/grub/grub.cfg >&3 || : else echo grub.cfg file not readable. >&3 fi echo >&3 fi if [ -f /boot/grub/menu.lst ]; then echo "--- grub legacy:" >&3 if [ -r /boot/grub/menu.lst ]; then grep '^[^#].*\<root=' /boot/grub/menu.lst >&3 || : else echo menu.lst file not readable. >&3 fi echo >&3 fi if [ -f /etc/lilo.conf ]; then echo "--- lilo:" >&3 if [ -r /etc/lilo.conf ]; then egrep '^([^#].*)?root=' /etc/lilo.conf >&3 || : else echo lilo.conf file not readable. >&3 fi echo >&3 fi echo "--- udev:" >&3 COLUMNS=70 dpkg -l udev | grep '\<udev\>' >&3 md5sum /etc/udev/rules.d/*md* /lib/udev/rules.d/*md* >&3 2>/dev/null echo >&3 echo "--- /dev:" >&3 ls -l /dev/md* /dev/disk/by-* >&3 echo >&3 echo "Auto-generated on $(date -R) by mdadm bugscript" >&3
Edit
Rename
Chmod
Delete