Newsgroup: it.comp.os.linux.sys
Titolo: problemi con RAID e UPS

Salve a tutti ho 2 problemi a cui vi chiedo di aiutarmi se
potete......
dunque la situazione è la seguente,macchina LINUX SUSE 9.0 kernel
2.4.26 con un disco di sistema IDE e 2 dischi sata in RAID software (
raidtools se non erro ),la macchina è collegata ad un'UPS perche deve
restare sempre accesa;ora i problemi sono:
1) esiste un programma che interroghi il sistema per capire se i
dischi sono sempre funzionanti e nel caso non lo siano allerti in
qualche modo il sysadmin ( mail,ma piu semplicemente messaggio al
sistema) comunque in modo del tutto automatico senza bisogno di
digitare a manina cat /proc/mdstat insomma....conoscete qualcosa che
puo fare questa cosa ?????
2)Il PC e collegato ad un'UPS dell'APC ( modello BACK UPS PRO 650) 
che è supportato da Linux e infatti funziona bene, se va via corrente
dopo un tot si spegne e questo va bene,però non va bene il fatto che
poi rimane spento quando torna corrente,invece dovrebbe riaccendersi
quando la corrente torna,si puo fare??
se non fosse collegato all'UPS e va via corrente,quando torna la
macchina si riaccende automaticamente però il rischio che si guasti
qualcosa nel sistema è elevato.
Se sapete qualcosa fatemi sapere OK???
ciao 
Paolo
<Paoloo(dot).Landornoo>AT(&t)libero(dot)it

 quando la corrente torna,si puo fare??
Il problema è che il programma di gestione fa _spegnere_ il PC quando 
sta un tot senza corrente, in realtà deve solo _arrestarlo_, ovvero fare 
un halt, non un poweroff. In debian c'è ad esempio /etc/defaults/halt 
che contiene HALT=poweroff, devi mettere HALT=halt; in altre 
distribuzioni non so, dovrai cercare lo script di halt (tipo 
/etc/init.d/halt) e modificare le opzioni con cui viene chiamato halt. 
Infatti deve essere l'UPS che si spegne (tramite --killpower), e il PC 
con lui.
-- 
|  Alessandro Giacomin [tenicoz]
|  ~, sweet ~

 puo fare questa cosa ?????
Su debian esiste il pacchetto mdadm che ha un demone che controlla proprio
mdstat e maila l'admin se qualcosa non è sincronizzato.
Sulla tua non ho idea.
Max

 /success
# Stop blogd before umounting /var
test -x /sbin/blogd && killproc -QUIT /sbin/blogd
# Redirect our mesages to default console
test -n "$REDIRECT" && exec 0<> $REDIRECT 1>&0 2>&0
echo "Sending all processes the TERM signal..."
killall5 -15
echo -e "$rc_done_up"
sleep 1
test "$1" = "fast" -o -e /fastboot || sleep 4
echo "Sending all processes the KILL signal..."
killall5 -9
echo -e "$rc_done_up"
if test "$HOSTTYPE" = "s390" ; then
    HWCLOCK_ACCESS=no
fi
if test "$HWCLOCK_ACCESS" != "no" ; then
        echo -n "Set Hardware Clock to the current System Time"
        # write back to hardware clock and calculate adjtime
        /sbin/hwclock --systohc $HWCLOCK
        rc_status -v -r
fi
echo "Turning off swap"
sync ; sync
rc_reset
swapoff -a &> /dev/null
rc_status -v1 -r
# Something forgotten?
if test -r /proc/swaps ; then
    # Use cat and a pipe because swapoff changes
    # /proc/swaps during direct read call
    cat /proc/swaps | \
    while read des rest ; do
        test "$des" = "Filename" && continue
        swapoff $des &> /dev/null
    done
fi
mounts=/etc/fstab
test -r /proc/mounts && mounts=/proc/mounts
# First umount intermezzo filesystems
test -x /usr/sbin/umountizo -a ! -z "`grep -i intermezzo <$mounts`" &&
/usb/sbin/umountizo >/dev/null 2>&1
reverse < $mounts | \
while read des fs type rest; do
    case "$des"  in
        ""|\#*)    continue ;;
        /dev/loop*)
                   umount $fs
                   losetup $des &> /dev/null
                   test $? -eq 0 && losetup -d $des ;;
    esac
    case "$fs"   in
        /proc)     continue ;;
        /dev/pts)  continue ;;
        /dev)      continue ;;
        /dev/shm)  continue ;;
    esac
    case "$type" in
        proc)      umount -t proc     $fs ;;
        devpts)    umount -t devpts   $fs ;;
        devfs)     umount -t devfs    $fs ;;
        shm)       umount -t shm      $fs ;;
        usbdevfs)  umount -t usbdevfs $fs ;;
    esac
done
UMOUNT_FAILED=false
echo "Unmounting file systems"
umount -avt noproc,nonfs,nosmbfs || {
    rc_status
    UMOUNT_FAILED=true
}
rc_status -v1 -r
if test "$UMOUNT_FAILED" = true ; then
    echo "Oops: umount failed :-(  --  trying to remount readonly..."
    mounts=/etc/fstab
    test -r /proc/mounts && mounts=/proc/mounts
    # Use cat and a pipe because umount changes
    # /proc/mounts during direct read call
    cat $mounts | \
    while read des fs type rest; do
        case "$des" in ""|\#*) continue ;; esac
        case "$type" in
            swap)     continue ;; # No umount on swap devices
            proc)     continue ;; # Required
            nfs)      continue ;; # Avoid hanging reboot/halt
            smbfs)    continue ;; # Avoid hanging reboot/halt
        esac
        mount -v -n -o remount,ro $fs
    done
    echo "extra sync..."
    sync; sync
    echo "... hope now it's ok to reboot."
fi
if test -d /etc/lvmtab.d -a -x /sbin/vgchange ; then
    /sbin/vgchange -a n
fi
umount -anvt proc
# maybe we use Multiple devices
if test -f /etc/mdtab -a -x /sbin/mdstop ; then
    echo -n "Disable Multiple Devices"
    /sbin/mdstop -a
    rc_status -v1 -r
fi
# commented out since raidstop needs an argument
# normal shutdown is done automatically
#if test -f /etc/raidtab -a -x /sbin/raidstop ; then
#    echo -n "Disable Multiple Devices"
#    /sbin/raidstop --all
#    rc_status -v1 -r
#fi
# on umsdos fs this would lead to an error message, so direct errors
to
# /dev/null
mount -no remount,ro / 2> /dev/null
sync
# Make reboot noise and wait a few seconds to give harddisks the
chance
# to really flush their buffers before power goes down.
if test -n "$REDIRECT" ; then
    sleep 1
    case "$HALT_SOUND" in
    "yes"|"quint")
        echo -en "\033[10;393]\a\033[10;262]"
        sleep 1
        ;;
    "octave")
        for tone in 524 491 440 393 349 328 295 ; do
            echo -en "\033[10;${tone}]\a"
            usleep 125000
        done
        echo -en "\033[10;262]"
        ;;
    *)
        echo -en "\033[10;440]\a"
        usleep 250000
        ;;
    esac
else
    echo -en "\a"
    sleep 2
fi
echo $message
echo -en "\a"
# Set system console back to intial value
test -n "$REDIRECT" -a -n "$CONSOLE" && setconsole $REDIRECT <
$CONSOLE
# Now talk to kernel
exec $command -d -f
grazie ancora 
Paolo

mdadm è presente anche sulla SUSE 9.0 l'ho installato me lo studio un momentino e 
se ho problemi ( spero di no ;-)))) vi faccio sapere.
Grazie  Paolo

                             command="halt -p"
dove trovi "halt -p" (p=poweroff) copia, commenta, incolla e sostituisci 
con "halt".


Scusa ;-)))) hai ragione ora provo,grazie.......