migmedia.net

lost+found

Hibernate Desaster

2007-10-25
Tags: computer, gentoo

Wenn die Platte cached, crashed das Filesystem.

Mein neuer Freund heist:

#> xfs_repair /dev/hda6

Und dann kontrollieren, welche Daten verschwunden sind…

Bus Error ähnlich wie im Gentoo Forum beschrieben. Zwecks dessen kam dieses Skript zustande:

./check_install.sh app-portage/layman

#!/bin/bash
if [ ! -n "$1" ]
then
        echo "Usage: `basename $0` [full/package-dir] "
        exit $E_BADARGS
fi

check() {
        path="/var/db/pkg"

        files=($(cat $path/$1*/CONTENTS))
        pkg="$(< $path/$1*/CATEGORY)/$(< $path/$1*/PF)"

        LIMIT=${#files[@]}
        for ((a=1; a <= LIMIT ; a++))
        do
                fil=
                md5=
                case "${files[$a]}" in
                        dir)
                                # ignore
                                ((a++))
                        ;;
                        sym)
                                fil=${files[((++a))]}
                                ((a+=4))
                        ;;
                        obj)
                                fil=${files[((++a))]}
                                md5=${files[((++a))]}
                                ((a++))
                                if [[ "$md5  $fil" != "$(md5sum $fil)" ]]; then
                                        echo "$fil wrong checksum ($pkg)"
                                fi
                        ;;

                esac
        done
}

check $1