In Fenstern, die gelöscht wurden, finden Sie sie im Papierkorb, wenn Sie nicht die Umschalttaste gedrückt haben.
Was ist mit den Dateien, die von rm -funter Linux gelöscht wurden ?
In Fenstern, die gelöscht wurden, finden Sie sie im Papierkorb, wenn Sie nicht die Umschalttaste gedrückt haben.
Was ist mit den Dateien, die von rm -funter Linux gelöscht wurden ?
Antworten:
Das Erste, woran Sie sich erinnern sollten, ist, dass Sie keine weiteren Schreibaktivitäten mehr auf dem Dateisystem ausführen.
Anschließend können Sie einige Tools ausprobieren, die das Dateisystem untersuchen und versuchen, Daten im gelöschten Knoten zu finden. ' extundelete' ist ein solches Tool bei sourceforge.
extundelete ist ein Dienstprogramm, mit dem gelöschte Dateien von einer ext3- oder ext4- Partition wiederhergestellt werden können. Das ext3-Dateisystem ist das am häufigsten verwendete Dateisystem unter Linux, und ext4 ist sein Nachfolger. extundelete verwendet die im Journal der Partition gespeicherten Informationen, um zu versuchen, eine von der Partition gelöschte Datei wiederherzustellen. Es gibt keine Garantie dafür, dass eine bestimmte Datei nicht gelöscht werden kann. Versuchen Sie daher immer, ein gutes Backup-System einzurichten, oder setzen Sie nach der Wiederherstellung Ihrer Dateien mindestens eines ein!
Der erste Schritt wäre, ein nicht wiederhergestelltes Tool für das Dateisystem zu versuchen, das für Ihr Root-Laufwerk verwendet wird.
Wie bereits erwähnt, sind ext3grep und extundelete die Tools für die ext-Dateisystemfamilie.
Eine weitere Option, die vom Dateityp abhängt, der wiederhergestellt werden soll, besteht darin, einen Datei-Carver auf dem Laufwerk auszuführen. Dies dauert länger als die oben genannten Dienstprogramme.
An erster Stelle steht eine Option, die ich dafür verwendet habe.
Die letzte Option, wenn Sie zufällig eine bestimmte Zeichenfolge in der Datei kennen, besteht darin, das Laufwerk in einem Hex-Editor zu öffnen und nach dieser Zeichenfolge zu suchen.
Abhängig von Ihrer Einrichtung stellt Ihr Fenstermanager möglicherweise einen Papierkorb zur Verfügung.
Letztendlich gibt es absolut keinen Ersatz für ein gutes Backup-System-Setup. Finden Sie eine, die ihre Arbeit erledigt, ohne dass Sie sie berühren, und richten Sie sie ein. Sie sparen sich auf lange Sicht viel Zeit, Ärger und Schmerzen.
Ich werde es versuchen, ext3grep:
http://www.xs4all.nl/~carlo17/howto/undelete_ext3.html
Sie müssen die Partition vor dem Start aushängen .
HTH
Da undelete_ext3 weg zu sein scheint, ist hier ein bescheidenes Bash-Skript, das mir geholfen hat, einige Dateien wiederherzustellen, die mit extundelete oder debugfs nicht erhältlich waren . Lösung geteilt.
Sie können eine Liste der zu betrachtenden Blöcke vorab anzeigen, siehe PRESEED. Es dauert eine Blocknummer pro Zeile. Wenn Sie nicht vorab festlegen, werden standardmäßig alle Blöcke durchsucht.
Da Sie wahrscheinlich einen anderen Anwendungsfall haben, erhalten Sie möglicherweise einen Rahmen, auf den Sie Ihre eigene Filterung stützen können. Sie müssen auf jeden Fall die Werte anpassen, wenn Sie nach anderen Dateitypen suchen.
Beispielaufruf: ./ext-undelete-tar-gz.sh devimage found_files/
#!/bin/bash
# Brute force (linear) search specific tar files with
# certain contents on ext2 / ext3 / ext4 devices or files
#
# .. this is a last resort if extundelete and/or debugfs
# did not find what you were looking for and limited
# in that recoverable data must not have been stored
# in fragments, i.e. non-sequentially
[[ -n "$2" ]] || {
echo "usage: $0 [ device | imagefile ] "\
"[ destdir_for_recovered_data ] "\
"[ max_blocks_to_search (optional) ]"
exit 1
}
IMG=$1
DEST=$2
TMP=/dev/shm/cand.tmp
PRESEED=/dev/shm/cand.list
GZMAGIC=$(echo -e "\x1f\x8b\x08")
TARMAGIC=$(echo -e "ustar")
# max bytes to read into $TMP when a .tar.gz has been found
LEN=$((160*1024))
# pick $TMP for recovery based on matched strings..
FILE_IN_TAR="debian/rules" # ..in the tar index (suffix-search)
FIT_CONTENT="link-doc=" # ..within FILE_IN_TAR matches
# determine FS parameters
BLOCKS=$(tune2fs -l $IMG | grep -Po "(?<=^Block count:).*" | xargs)
BS=$(tune2fs -l $IMG | grep -Po "(?<=^Block size:).*" | xargs)
LEN=$((LEN/BS))
function _dd { dd $@ 2>/dev/null ; }
function _gunzip { gunzip $@ 2>/dev/null ; }
function _tar { tar $@ 2>/dev/null ; }
function inspect_block {
bnum=$1
if _dd if="$IMG" skip=$bnum bs=$BS count=1 | tee "$TMP" \
| _dd bs=1 count=3 \
| grep -qF "$GZMAGIC"
then
if _gunzip -c "$TMP" \
| _dd bs=1 count=5 skip=257 \
| grep -qF "$TARMAGIC"
then
_dd if="$IMG" skip=$((bnum+1)) bs=$BS count=$((LEN-1)) >> "$TMP"
echo -n found $bnum.tar.gz
if _tar xzf "$TMP" -O --wildcards *"$FILE_IN_TAR" \
| grep -qF "$FIT_CONTENT"
then
echo " ..picked, stripping trailing garbage:"
exec 3>&1
gunzip -c "$TMP" 2>&3 | gzip > $DEST/$bnum.tar.gz
exec 3>&-
else
echo
fi
fi
fi
echo -ne "$((bnum+1)) / $BLOCKS done.\r" >&2
}
if [[ -f "$PRESEED" ]]
then
while read bnum
do inspect_block $bnum
done <"$PRESEED"
else
for (( bnum = 0 ; bnum < ${3:-$BLOCKS} ; bnum++ ))
do inspect_block $bnum
done
fi | gzip >"$PRESEED.log.gz"
echo
rmhebt die Verknüpfung der der Datei zugeordneten i-Knoten auf.