On dom, 03 sep 2000, Manel Marin escribi�:

> Hola a todos,
> 
> Me acabo de cambiar el disco duro por uno de 20GB (je, je X-)
> 
> Y como lo queria comprobar a fondo cada dia (hasta que se acabe la garantia 
> :-)
> ya que ya me he pillado los dedos dos veces por no hacerlo, he mejorado un
> script que hace tiempo que hice y me ha quedado "tan guai" que os lo envio
> para que lo disfruteis (que de eso va el soft libre, �no?)
> 
> �alguien ha hecho algo parecido para testear la memoria? �Y la placa base?

Compilate el kernel, con eso sobra. Un saludo.


> 
> Modo de uso (extraido del script):
> 
> # Uso:  testhd                # Testea todas las particiones de todos los 
> discos
> #     testhd /dev/hda /dev/hdb        # Testea los discos (todo seguido)
> #     testhd /dev/hda1 /dev/hda2      # Testea las particiones
> #
> # Sugiero: Lanzar como root desde cron una vez a la semana, se nos enviar� un
> #     mail con el resultado (Es una feature de cron ;-)
> #     Tambi�n se puede usar por root desde un terminal mostrando progreso
> 
> �A questa guai?
> 
> 
> Saludos,
> -- 
> -------------------------------------------------
> Manel Marin   e-mail: [EMAIL PROTECTED]
> Linux Powered (Debian 2.2 potato)  kernel 2.2.17
> 
> Mira mis chuletas de Linux en  http://perso.wanadoo.es/manel3
> -------------------------------------------------
> Mi petici�n de drivers para Linux es la n� 33126
>  (Pasate por http://www.libranet.com/petition.html ;-)

> #!/bin/sh
> #     testhd (0.02)  Test de disco duro autom�tico (usuario/cron)
> #
> # Copyright Manel Marin @ 2000 Cubierto por la licencia GNU GPL disponible en
> # http://www.gnu.org/copyleft/gpl.html  Se puede copiar, distribuir y 
> modificar
> # libremente bajo los t�rminos de la GPL e incluyendo siempre este p�rrafo
> #
> #
> # Uso:  testhd                # Testea todas las particiones de todos los 
> discos
> #     testhd /dev/hda /dev/hdb        # Testea los discos (todo seguido)
> #     testhd /dev/hda1 /dev/hda2      # Testea las particiones
> #
> # Sugiero: Lanzar como root desde cron una vez a la semana, se nos enviar� un
> #     mail con el resultado (Es una feature de cron ;-)
> #     Tambi�n se puede usar por root desde un terminal mostrando progreso
> #
> #6.11.99 (0.01)
> #     Utiliza df para conocer particiones y su tama�o
> #     y badblocks para testear las particiones montadas
> #3.9.00 (0.02)
> #     Emplear df para mostrar ocupaci�n
> #     Utilizar fdisk -l para hacer lista de particiones de todos los discos
> #     Utilizar fdisk -s para obtener los bloques de cada partici�n
> #     Mostrar progreso si se lanza desde usuario (y *NO* desde cron)
> #     Cronometrar el tiempo de test de cada partici�n y medir la carga del
> #      sistema antes y despu�s
> #
> 
> 
> # SE ESPECIFICA PARTICION/ES A TESTEAR
> if [ "$1" != "" ]
> then
>     echo "testhd: Testeando $*"
>     echo
>     TESTLIST="$*"
> else
>     # NO SE ESPECIFICA PARTICION A TESTEAR, TESTEAR TODAS LAS PARTICIONES
> 
>     echo "testhd: Testeando todas las particiones..."
> 
>     # HACER LISTA CON LAS PARTICIONES DE TODOS LOS DISCOS
>     TESTLIST=`fdisk -l | awk '
>     # Las particiones empiezan con "/dev" en la primera palabra, y no queremos
>     # las extendidas, ya que son "contenedores" para otras particiones
>       $1 ~ "^\/dev" && $0 !~ "Extend"  { LISTA = LISTA " "$1 }
>       END { print LISTA }
>     '`
>     echo "$TESTLIST"
>     echo
> fi
> 
> # EN MODO CONSOLA MOSTRAR PROGRESO (Desde cron *NO*)
> # TRUCO: $USER no est� definida en la ejecuci�n desde cron
> if [ $USER ]
> then 
>     MODE="-s"         # Lanzado por usuario: Mostrar progreso
> else
>     MODE="-v"         # Lanzado por cron: NO mostrar progreso
> fi
> 
> # MOSTRAR CARGA DEL SISTEMA
> echo -n "CARGA:  "
> cat /proc/loadavg
> 
> # MOSTRAR INFO DE OCUPACION
> echo "DF:"
> df
> echo
> 
> # PROCESAR LA LISTA (TEST DE PARTICIONES UNA A UNA)
> for TEST in $TESTLIST
> do
> 
>     # CONSEGUIR EL TAMA�O EN BLOQUES
>     HD_BLOCKS=`fdisk -s $TEST`
> 
>     # TESTEAR HD Y DAR MENSAJE DE RESULTADO Y TIEMPO EMPLEADO
>     echo "* Testeando $TEST de $HD_BLOCKS bloques"
>     time badblocks $MODE $TEST $HD_BLOCKS
>     if [ $? == 0 ]
>     then
>       echo -n "CARGA:  "
>       cat /proc/loadavg               # Mostrar carga del sistema
>       echo
>       echo "--- testhd: OK ---"
>     else
>       echo -n "CARGA:  "
>       cat /proc/loadavg               # Mostrar carga del sistema
>       echo
>       echo "!!! testhd: *** ERROR ****************** !!!"
>     fi
>     echo
> 
> done


-- 
___ __  __  __
| |/ / / /\/ /  Rodolfo Garc�a Pe�as
| / / / /\  /   http://www.hispalinux.es/~kix
| \ \/ / /  \   http://www.thekix.com
| |\ \/ / /\ \  [EMAIL PROTECTED] [EMAIL PROTECTED]
                       - - -
Register Linux User 62951. Debian 2.2 Kernel 2.4.0-test7
... Pensamos demasiado y sentimos muy poco ...
                         Charlie Chaplin, 1940

Responder a