Löschen Sie leeren Festplattenspeicher auf einem Win 3.1 / DOS 6.22-System mit integrierten Tools sicher

1050
porg

Ich habe einen Retro-Laptop von 1994, ein IBM Thinkpad 340, das ich verschenken möchte, aber zuerst die gelöschten Dateien sicher löschen möchte.

Das System enthält sowohl eine GUI- als auch eine CLI- undeleteAnwendung, in der die zuvor gelöschten Dateien und ihre jeweiligen Wiederherstellungschancen nach der Anzahl der intakten Cluster aufgelistet sind.

Ich suche nach einer Lösung wie dem cipheroder sdeleteauf neueren Windows-Systemen, um die leeren Datenträgerbereiche mit mehreren Null- / Zufalls-Schreibdurchläufen mit Tools zu überschreiben, die in Windows 3.1 mit DOS 6.22 integriert sind.

Ich möchte vermeiden, irgendetwas extra installieren oder ein Wartungs-Betriebssystem von Diskette booten zu müssen, da ich keine einfache Datenschnittstelle zu diesem Retro-Gerät zur Hand habe: Keine Vernetzung auf dem Retro-Laptop, keine Disketten auf meinen aktuellen Geräten und Ich möchte vermeiden, ein USB-Diskettenlaufwerk zu kaufen.

Wenn ich keine Softwarelösung oder kein USB-Diskettenlaufwerk bekomme, müsste ich auf eine Hardwarelösung zurückgreifen: Zerlegen Sie den Retro-Laptop. Holen Sie sich die Festplatte heraus. Verbinden Sie das Festplattenlaufwerk über meine USB-ATA / IDE-Bridge (Adapter / Konverter) mit einem Host-Computer mit den Tools meiner Wahl. Ich möchte jedoch eine solche invasive Operation mit dem glücklicherweise noch funktionsfähigen Retro-Laptop vermeiden.

Google liefert auf diesen älteren Systemen vor dem WWW keine nützlichen Informationen zu Software-Hilfsprogrammen. Ich würde mich über einen Hinweis von jemandem mit Erfahrung in diesen alten Systemen / Geräten freuen!


So habe ich mein Problem in der Praxis gelöst

1) Überschreiben mit Zufallsdaten: Ich File Manager verwendet, um doppelte c:\windows\systemInhalte in Dummy - Verzeichnis c:\aamehrmals plus einige Restdaten bis File Managerzeigte 0KB freefür c:\. Dann wiederholte Lösch-Duplikat-Zyklen, um insgesamt etwa 7 vollständige Überschreibungen zu erzielen. Schließlich das falsche Verzeichnis gelöscht. - Komplimente an @KodyBrown

2) Mit Nullen überschreiben: Kaufte eine USB-Diskette (6 €, 2. Hand) für meinen modernen Laptop und erstellte eine bootfähige Diskette mit KillDisk für DOS v4.1 (endgültige Version von 2008, keine weitere Entwicklung). In KillDisk gebootet und den nicht verwendeten Speicherplatz mit Nullen gelöscht. Auf diese Weise haben mögliche zukünftige Datenwiederherstellungsversuche eine bessere Chance, gültige Daten statt gefälschter Daten zu finden. Zur Bestätigung schaute ich mir die Rohdatendaten an und die leeren Teile wurden tatsächlich mit Nulldaten gefüllt ( 0x00).

Trotzdem bin ich immer noch neugierig auf die ursprüngliche theoretische Ausgabe

Für Geek-Stolz und andere interessierte Benutzer ohne Diskettenlaufwerk. Ich würde mich immer noch über ein funktionierendes DOS 6.22-Shell-Skript freuen, das den Datenträgerrest mit mehreren zufälligen Datendurchläufen und einem endgültigen Null-Datendurchlauf richtig füllen kann. Biete an, es zu testen und Feedback zu geben. Im Anwendungsfall hat man keine Datenschnittstelle zum Retro-Gerät (kein Netzwerk, keine Diskette) und muss diese daher manuell eingeben. Erinnerung an die Mikrocomputer-Tage der 1980er Jahre mit Quellcode in Computerzeitschriften. Charmant ;-)

3
Bitte bearbeiten Sie Ihre Frage: Sie haben nicht einmal eine Diskettenverbindung? Es kann hilfreich sein, das genaue Modell des Laptops hinzuzufügen, mit dem Sie sich befassen. JakeGould vor 7 Jahren 0
Das Diskettenlaufwerk des IBM Thinkpad 340 funktioniert einwandfrei, aber wie gesagt, ich habe "keine Disketten auf meinen aktuellen Geräten". Ich werde jedoch einen Computer mit einem Diskettenlaufwerk oder einem USB-Diskettenlaufwerk in die Hände bekommen und dann ein bootfähiges Diskettenlaufwerk-Wartungs-Betriebssystem wie [KillDisk für DOS] (http://www.killdisk.com/) installieren, das wie angekündigt ist Funktion zum "Löschen aller nicht verwendeten Speicherplätze auf den Festplatten, ohne vorhandene Daten zu berühren". porg vor 7 Jahren 1
USB-Diskettenlaufwerke (externe Diskettenlaufwerke, die über einen USB-Anschluss an ein System angeschlossen werden) sind heutzutage allgemein verfügbar. Sie kosten etwa 10 bis 20 Dollar. Wenn Sie von einer PC-Reparaturwerkstatt in Ihrer Nähe wissen, haben sie möglicherweise eine auf Lager. JakeGould vor 7 Jahren 0
Befinden sich auf dem Computer Dolmetscher / Compiler für Skriptsprachen? Jede Sprache sollte in der Lage sein, Null-Gigabyte-Werte in Dateien zu generieren, aber ".bat" gehört nicht zu denen, mit denen ich sprechen kann. John Dvorak vor 7 Jahren 0
In Bash könnte ein einfaches "yes> o" funktionieren. John Dvorak vor 7 Jahren 0
@JanDvorak Leichte Tangente basierend auf Bash: Warum sollte man [`yes`] (http://ss64.com/bash/yes.html) verwenden, wenn etwas wie` cat / dev / zero> junkfile.txt` funktionieren würde? JakeGould vor 7 Jahren 0
... oder das. Aber da Sie sowieso einen Prozess verwenden, warum sollten Sie "cat" anstelle von "yes" verwenden? John Dvorak vor 7 Jahren 0
@ JanDvorak Wissen Sie, was "cat / dev / zero" ist? Es ist nicht nur "Katze". Tun Sie auf jeden Fall, was Sie wünschen. Ich habe jedoch noch nie gehört, dass jemand mit dem "Ja" -Befehl Speicherplatz gelöscht hat. JakeGould vor 7 Jahren 0
Eine Batch-Datei könnte dies ziemlich leicht tun. Ich schreibe heute Abend einen, wenn ich einen freien Moment habe. Kody Brown vor 7 Jahren 0
@ KodyBrown Wow, sehr geschätzt! Wäre so cool, eine native Lösung zu haben. Ich hoffe, Sie finden eine Lösung, die tatsächlich auf einem DOS 6.22-System funktioniert. porg vor 7 Jahren 0
@KodyBrown So schließen Sie dieses Problem: Haben Sie ein DOS-6.x-Stapelskript ausgeführt und keine funktionierende Lösung erstellt? Oder gerade noch keine Zeit gefunden? Würde mich wirklich über theoretische Neugier freuen, obwohl das Problem für mich praktisch gelöst ist. porg vor 7 Jahren 0

2 Antworten auf die Frage

2
Kody Brown

Eine einfache Möglichkeit, dies zu erreichen, besteht darin, das Windows-Verzeichnis immer wieder zu kopieren und lediglich weitere Kopien davon zu erstellen, bis der Speicherplatz knapp wird. Löschen Sie die soeben erstellten Kopien. Dann wiederholen Sie es so oft, wie Sie es für nötig halten (passt).

Dadurch wird der gesamte freie Speicherplatz auf der Festplatte effektiv überschrieben.

AKTUALISIERTE:

Hier ist eine Batchdatei zur Automatisierung des Prozesses. Ich habe es auf einer alten Version von FreeDOS getestet, die in einem VMware-Gast ausgeführt wird. Ich denke, es sollte unter DOS 5 und neuer funktionieren.

Legen Sie diese Datei im Stammverzeichnis Ihres Laufwerks C: (dh:) ab C:\CLEAN.BATund führen Sie sie von dort aus aus.

Jedes Mal, wenn es ausgeführt wird, wird es einmal "überschrieben". Dann müssen Sie alle Dateien im C:\TMPVerzeichnis löschen, um Speicherplatz freizugeben ( C:\TMP>DEL *.*). (Ich wollte nicht, dass die Batchdatei alle Dateien allein löscht, nur für den Fall.)

Sie können es so oft ausführen, wie Sie es für notwendig erachten. Jedes Mal, wenn Sie es ausführen, ist es ein einzelnes Überschreiben. Sie sollten es also ein paar Mal oder dreimal ausführen, um sicher zu sein.

CLEAN.BAT

@ECHO OFF  IF "%1"=="" GOTO :INIT  :PARSE SET ARG1=%1 SET ARG2=%2 SET ARG3=%3 SET ARG4=%4  IF NOT "%4"=="" GOTO :LAST IF NOT "%3"=="" GOTO :LOOP4 IF NOT "%2"=="" GOTO :LOOP3 IF NOT "%1"=="" GOTO :LOOP2  :INIT C: CD\ IF NOT EXIST "C:\TMP\" MKDIR C:\TMP >NUL CHDIR C:\TMP  COPY C:\WINDOWS\SETUP.EXE SETUP.EXE >NUL COPY SETUP.EXE+SETUP.EXE FILE.0 >NUL  :LOOP1 FOR %%E IN (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 1 2 3 4 5 6 7 8 9 0) DO CALL C:\CLEAN.BAT %%E GOTO :END  :LOOP2 FOR %%F IN (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 1 2 3 4 5 6 7 8 9 0) DO CALL C:\CLEAN.BAT %ARG1% %%F GOTO :END  :LOOP3 FOR %%G IN (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 1 2 3 4 5 6 7 8 9 0) DO CALL C:\CLEAN.BAT %ARG1% %ARG2% %%G GOTO :END  :LOOP4 FOR %%H IN (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 1 2 3 4 5 6 7 8 9 0) DO CALL C:\CLEAN.BAT %ARG1% %ARG2% %ARG3% %%H GOTO :END  :LAST COPY FILE.0 F%ARG1%%ARG2%%ARG3%%ARG4%.0 IF NOT "%ERRORLEVEL%"=="0" EXIT GOTO :END  :END 

Die SETUP.EXE-Datei in meinem Windows 3.1-Verzeichnis ist knapp 500 KB. Um den Vorgang etwas zu beschleunigen, kopiere ich ihn (zweimal) in eine neue Datei und verwende ihn, so dass der Prozess praktisch alle Daten außer 950 KB des Laufwerks löscht. Sie können eine kleinere Datei auswählen, um mehr Details zu erhalten, aber Sie haben möglicherweise Probleme mit zu vielen Dateien in einem einzigen Verzeichnis.

FreeDOS ändert auch nicht, errorlevelwenn ein Kopiervorgang fehlschlägt. MSDOS war immer gut in Bezug auf die errorlevelAntworten, daher sollten Sie nicht darauf eingehen. Wenn Sie sagen, dass die temporäre Datei aufgrund von Speicherplatz nicht kopiert werden konnte, können Sie Ctrl+Cden Prozess sicher stoppen ( ).

Zusätzlich oder anstatt das Windows-Verzeichnis zu verwenden, können Sie wiederholt eine einzelne große Datei kopieren. Sie können auch ein paar Minuten damit verbringen, eine sehr große Datei zu erstellen, um weniger Male mit `copy large.fil + large.fil + large.fil new.fil` zu kopieren. Dadurch werden mehrere Dateien (oder dieselbe Datei mehrmals für sich selbst) in einer einzigen Datei verkettet. Führen Sie dann denselben Befehl mehrmals mit "new.fil" aus, und er wird exponentiell wachsen. Ich weiß, dass die Verkettung von Kopien unter DOS funktioniert, ich bin jedoch nicht sicher, ob sie selbst kopiert werden soll. Kody Brown vor 7 Jahren 0
Das ist ein guter Ansatz nur mit eingebauten Werkzeugen! Dies ist mir nie in den Sinn gekommen, da es so rau und brutal erscheint, aber es tut, was es soll. PROS: + Funktioniert sofort. + Jeder kann es leicht machen. CONS: - Es dauert einige Zeit, bis Sie nach Größe der Datei / Verzeichnis suchen und schätzen, wie oft Sie welche kopieren müssen. - Es ist unwahrscheinlich, dass das letzte unbenutzte Byte gelöscht wird, da das Betriebssystem oder ein Teil der anderen wahrscheinlich Speicherplatz reserviert. porg vor 7 Jahren 0
komisch, das ist * genau * das, was viele sichere Löschanwendungen tun, nur mit der Defragmentierungs-API. Journeyman Geek vor 7 Jahren 0
Ein weiteres CON: - Da Win 3.1 ein Einzelbenutzer-Betriebssystem mit nur rudimentären Datei- / Verzeichnisberechtigungen war, befinden sich die sensiblen Benutzerdaten wahrscheinlich im Windows-Systemverzeichnis aufgrund von Design oder nachlässigem Benutzerverhalten. Wählen Sie ein unempfindliches Verzeichnis für die Duplizierung von Daten! porg vor 7 Jahren 0
-2
porg

Verlassen Sie Windows in DOS, um möglichst wenige Nebenwirkungen zu haben (virtueller Speicher, Dateisperren usw.). Führen Sie SCANDISKdann alle Reparaturen und Optimierungen aus und sagen Sie "Ja" und danach "Ja" DEFRAG. Dies mischt Ihre Daten zumindest ein bisschen.

Fertig gemacht und danach fand der interne undeleteBefehl nichts mehr.

Forensische Software für professionelle Daten findet immer noch Zeug, aber Ihr potenziell neugieriger begabter Freund oder Käufer aus zweiter Hand kann mit den internen undeleteTools zumindest nichts finden .