Here is the latest stable code for bugreporter-udeb.postinst with $REPORT_MEDIA_DEV support.
On Sun, Aug 22, 2004 at 04:13:11AM +0200, Osamu Aoki wrote: > > Please check test iso image which has USB bug report and my > cdrom-detect at: > http://people.debian.org/~osamu/pub/ > and use: > sarge-i386-netinst-bug.iso new bugreport to floppy and USB > with cdrom-detect fix
#!/bin/sh -e . /usr/share/debconf/confmodule log() { logger -t bugreporter-udeb -p user.debug "$@" } # REPORT_MEDIA_DEV can be set to use non auto detected devices for report NO_FLOPPY=0 if [ -n "$REPORT_MEDIA_DEV" ]; then DEVS="$REPORT_MEDIA_DEV" else DEVS="" if [ "$REPORT_MEDIA_DEV" = "nofloppy" ]; then NO_FLOPPY=1 fi fi if [ "" = "$DILOGDIR" ]; then DILOGDIR=/var/log/ fi # make sure we have a directory if [ ! -d $DILOGDIR ]; then mkdir -p $DILOGDIR fi copy_cdebconf_db() { destdir="$1" # Save database to disk # kill -? <pid-of-debconf> cp -a /var/lib/cdebconf "$destdir" } db_input critical bugreporter-udeb/insert_floppy || [ $? -eq 30 ] db_go log "Genarate files with HW info, debconf database info etc. into $DILOGDIR" db_progress START 0 7 debian-installer/bugreporter-udeb/title /bin/package-versions > $DILOGDIR/package-versions db_progress STEP 1 /bin/report-hw > $DILOGDIR/hardware-summary db_progress STEP 1 # Idea from rootskel/src-bootfloppy. [2004-08-20] mountfloppy() { # Try mounting USB memory devices (how about firewire?) if [ -x /usr/sbin/usb-discover ]; then /usr/sbin/usb-discover fi # This is currently needed or usb-storage won't load (for ide_fix_driveid). modprobe ide-core >/dev/null modprobe usb-storage >/dev/null modprobe sd_mod >/dev/null log "Required modules activated." if [ "$DEVS" = "" ]; then # Find possible block devices on floppy if [ -d /dev/floppy ] && [ "$NO_FLOPPY" = "0" ]; then DEVS="$DEVS `find /dev/floppy -type b -name '?' || true`" fi # Find possible block devices on scsi (including USB floppy and stick) if [ -d /dev/scsi ]; then DEVS="$DEVS `find /dev/scsi -type b || true`" #DEVS="$DEVS `find /dev/scsi -type b \( -name 'part*' -o -name '?' \) ||true`" fi fi log "Devices found: $DEVS" db_progress STEP 1 # Mount first vfat block device on /floppy even if USB storage. MOUNTED=0 for dev in $DEVS; do if [ -b "$dev" ] && mount $dev -o rw -tvfat /floppy 2>/dev/null; then MOUNTED=1 break else log "This can not be mounted as vfat, rw: $dev" umount /floppy 2>/dev/null || true fi done if [ "$MOUNTED" = 0 ]; then exit 1 fi log "On /floppy, mounted a vfat/rw/block device: $dev" return 0 } if [ -d /floppy ]; then umount /floppy 2>/dev/null || true else mkdir /floppy fi # Find a floppy or USB storage and mount it on /floppy if mountfloppy ; then db_progress STEP 1 # Let's try to save many several install logs. for i in 00 01 02 03 04 05 06 07 08 09 \ 10 11 12 13 14 15 16 17 18 19 \ 20 21 22 23 24 25 26 27 28 29 END ; do if [ "$i" = "END" ] ; then log "No space in the storage media." exit 1 fi LOGDIR=debian${i} if [ ! -e "/floppy/$LOGDIR" ] ; then log "Found an unused directory name: $LOGDIR" break fi done db_progress STEP 1 log "Save d-i install logs to $LOGDIR" mkdir /floppy/$LOGDIR for file in \ /var/log/messages \ /var/log/syslog \ /var/log/partman \ $DILOGDIR/hardware-summary \ $DILOGDIR/package-versions; do if [ -e $file ]; then cp $file /floppy/$LOGDIR/ fi done db_progress STEP 1 umount /floppy 2>/dev/null || true db_progress STEP 1 db_progress STOP else db_progress STEP 4 db_progress STOP db_input critical bugreporter-udeb/no_floppy || [ $? -eq 30 ] db_go fi
signature.asc
Description: Digital signature