1#!/bin/sh 2 3find_mtd_part() { 4 local PART="$(grep "\"$1\"" /proc/mtd | awk -F: '{print $1}')" 5 local PREFIX=/dev/mtd 6 7 PART="${PART##mtd}" 8 [ -d /dev/mtd ] && PREFIX=/dev/mtd/ 9 echo "${PART:+$PREFIX$PART}" 10} 11 12echo "Save the collect log into debug-log.zip and upload to user" 13 14#Disblae wireless debug log 15iwpriv ath0 dbgLVL 0x100 16iwpriv ath1 dbgLVL 0x100 17 18module_name=`cat /module_name` 19 20# Save the router config file 21/bin/config backup /tmp/NETGEAR_$module_name.cfg 22 23mtd_oops="$(find_mtd_part 'crashdump')" 24 25/sbin/debug_save_panic_log $mtd_oops 26 27cd /tmp 28 29# System will zipped all debug files into 1 zip file and save to client browser 30# So a debug-log.zip file will includes 31# (1) Console log 32# (2) Basic debug information 33# (3) router config file 34# (4) LAN/WAN packet capture 35 36#Disable the capture 37killall tcpdump 38killall tcpdump 39killall basic_log.sh 40killall console_log.sh 41killall wireless_log.sh 42 43echo close > /sys/devices/platform/serial8250/console 44 45dd if=/dev/mtd9 of=/tmp/panic_log.txt bs=131072 count=2 46[ -f /tmp/panic_log.txt ] && unix2dos /tmp/panic_log.txt 47#[ -f /tmp/Panic-log.txt ] && unix2dos /tmp/Panic-log.txt 48[ -f /tmp/Console-log1.txt ] && unix2dos /tmp/Console-log1.txt 49[ -f /tmp/Console-log2.txt ] && unix2dos /tmp/Console-log2.txt 50[ -f /tmp/basic_debug_log.txt ] && unix2dos /tmp/basic_debug_log.txt 51collect_log=`cat /tmp/collect_debug` 52 53if [ "x$collect_log" = "x1" ];then 54 zip debug-log.zip panic_log.txt Console-log1.txt Console-log2.txt basic_debug_log.txt lan.pcap wan.pcap 55else 56 zip debug-log.zip NETGEAR_$module_name.cfg panic_log.txt Console-log1.txt Console-log2.txt basic_debug_log.txt lan.pcap wan.pcap 57fi 58 59cd /tmp 60rm -rf debug-usb debug_cpu debug_flash debug_mem debug_mirror_on debug_session NETGEAR_$module_name.cfg panic_log.txt Console-log1.txt Console-log2.txt basic_debug_log.txt lan.pcap wan.pcap 61 62echo 0 > /tmp/collect_debug 63