Tips Linux Explorers | ![]() |
All Things Linux Forum | ![]() |
Great Linux Links | ![]() |
LinuxClues.com | ![]() |
Hometown | ![]() |
CODE |
$ kwrite sound.sh |
CODE |
#!/bin/sh # soundchk.sh # Rev 1.00 2003-10-13 Initial Release - Mandrake 9.1 specific # Rev 1.01 2003-10-13 Added Checking Devices # Added grep steps to restrict output. Really needed for Knoppix. # Add file exists tests to find correct tools # Completed port to Knoppix 3.3. Should also be much better for UNKNOWN. # Rev 1.02 2003-10-14 Added test -x for aumix # Fix bug in lspci greps # Rev 1.03 2003-11-24 Add additional tests from alsa aadebug script # Rev 1.04 2003-11-25 Fix typo in 1.03 lspci grep # Add check for artsd # Add check for using cdrom # Rev 1.05 2005-01-22 Adapted to udev and kernel 2.6 by Bruno # Rev 1.06 2005-01-23 Adapted by Bruno to better suit SUSE and Slackware # Rev 1.07 2005-01-23 Added a bit of interactivity at the end --Bruno # Rev 1.08 2005-01-23 Adapted chkconfig to suit SUSE --Bruno echo echo "soundchk.sh v1.08 - Running Sound Configuration Checks" echo echo # time and user date=$(date) echo "Today is $date" me=$(whoami) echo "Sound tested by $me" echo echo echo "== Identifying System ==" uname -s -r -v -p -o cat /proc/cpuinfo | grep -i "model name" cat /proc/cpuinfo | grep -i "cpu mhz" cat /proc/meminfo | grep -i memtotal cat /proc/meminfo | grep -i swaptotal echo echo "== Checking dsp devices ==" ls -l /dev | egrep -i dsp\|sound echo echo "== Checking mixer devices ==" ls -l /dev | egrep -i dsp\|mixer echo echo "== Checking Knotify ==" cat ~/.kde/share/config/knotifyrc # adapted to suit SUSE and Slack echo echo "== Checking Driver ==" if test -f /usr/bin/lspcidrake then /usr/bin/lspcidrake -v | egrep -i "(audio|multimedia|host bridge)" elif test -f /sbin/lspci then /sbin/lspci -v | egrep -i "(audio|multimedia|host bridge)" elif test -f /bin/lspci then /sbin/lspci -v | egrep -i "(audio|multimedia|host bridge)" elif test -f /usr/bin/lspci then /usr/bin/lspci -v | egrep -i "(audio|multimedia|host bridge)" else echo "==> Test not available on this system !" fi echo echo "== Checking Actual Driver in Use (/etc/modules.conf) kernel 2.4 ==" if test -f /etc/modules.conf; then cat /etc/modules.conf | egrep -i snd\|sound else echo "==> Test not available on this system !" fi # added for kernel 2.6 by Bruno echo echo "== Checking Actual Driver in Use (/etc/modprobe.conf) kernel 2.6 ==" if test -f /etc/modprobe.conf; then cat /etc/modprobe.conf | egrep -i snd\|sound else echo "==> Test not available on this system !" fi if test -d /dev/snd; then echo echo "== Checking alsa /dev/snd ==" ls --color=none /dev/snd fi echo echo "== Checking if Module Loaded ==" /sbin/lsmod | egrep -i snd\|sound\|audio\|game echo if test -x /sbin/chkconfig; then echo "== Checking in what level Sound service is configured to run ==" /sbin/chkconfig --list sound echo echo "== Checking in what level Alsa service is configured to run ==" /sbin/chkconfig --list alsa echo echo "== Checking in what level AlsaSound is configured to run ( Only SUSE !! ) ==" /sbin/chkconfig --list alsasound else echo "==> Test for run levels not available on this system !" fi echo echo "== Checking if Sound Volume muted ==" if test -x /usr/bin/aumix; then aumix -q else echo "==> Test not available on this system !" fi echo echo "== Checking artsd setup ==" ps -A -f | grep -i artsd | grep -v grep echo echo "== Checking which program uses the sound card or cdrom ==" echo " (no output is okay)" if test -x /sbin/fuser; then /sbin/fuser -v /dev/dsp /sbin/fuser -v /dev/cdrom else /bin/fuser -v /dev/dsp /bin/fuser -v /dev/cdrom fi # Extra test added by Bruno echo echo "== Test wav file . . . . . please wait ==" # test on SUSE if test -f /opt/kde3/share/sounds/KDE_Startup.wav then /usr/bin/play /opt/kde3/share/sounds/KDE_Startup.wav # test on Slackware elif test -f /opt/kde/share/sounds/KDE_Startup.wav then /usr/bin/play /opt/kde/share/sounds/KDE_Startup.wav # test on Mandrake, Fedora and PClos elif test -f /usr/share/sounds/KDE_Startup.wav then /usr/bin/play /usr/share/sounds/KDE_Startup.wav else echo "==> Test not available on this system !" fi # Interactive part echo -n "Did you hear the soundfile Yes/No ?:" read answer # the user did not enter anything: while [ -z "$answer" ]; do echo "You did not tell me Yes or No !!!" echo -n "Did you hear the soundfile Yes/No ?:" read answer done echo "You typed: $answer Thanks !" sleep 2 echo echo "== End of Checks ;-)" echo |
CODE |
$ chmod 755 sound.sh |
CODE |
$ ./sound.sh |
Tips Linux Explorers | ![]() |
All Things Linux Forum | ![]() |
Great Linux Links | ![]() |
LinuxClues.com | ![]() |
Hometown | ![]() |