Ich bezweifle, dass es einen Nutzen gibt, um das, was getan wurde, rückgängig zu machen. Sie können erneut nach Duplikaten suchen, deren Verknüpfungsanzahl und -attribute überprüfen (oder Dupemerge kann dazu beitragen, feste Verknüpfungen zu denselben Dateien zu ermitteln) und das Kopieren von Hand durchführen. Dies kann zumindest helfen, herauszufinden, ob Hardlinks die Ursache von Problemen sind.
Wie kann man viele Hardlinks aufheben?
Ich habe Dupemerge dumm benutzt, um alle meine doppelten Dateien in feste Links umzuwandeln . Jetzt läuft Windows XP nicht mehr richtig, zB startet der Explorer nicht.
Gibt es ein Dienstprogramm, das das Dateisystem durchsucht und nach festen Links sucht, die Datei kopiert, den ursprünglichen Link löscht und die Kopie umbenennt, wobei die ursprünglichen Attribute und der Name erhalten bleiben?
8 Antworten auf die Frage
- Beliebte
- Neu
- Mit Kommentaren
- Aktiv
Da Sie sie in feste Links konvertiert haben, könnten Sie Glück haben und sie werden immer noch als Duplikate angezeigt, wenn Sie so etwas wie DoubleKiller verwenden .
Auf jeden Fall bezweifle ich, dass es für diese genaue Aufgabe einen Nutzen gibt .
Wenn alles andere fehlschlägt, empfehle ich eine Neuinstallation ...
Um das Betriebssystem zu reparieren, verwenden Sie die Systemdatei-Überprüfung:
Legen Sie die Windows XP-Installations-CD ein
Drücken Sie STRG + ALT + ENTF, um den Task-Manager aufzurufen. Gehen Sie zu Datei> Ausführen (Neuer Task), geben Sie sfc / scannow ein und klicken Sie auf OK.
Hinweis: Dadurch werden nur die Systemdateien wiederhergestellt, aber Sie werden wieder gestartet. Für andere betroffene Software müssen Sie die Installation ggf. erneut installieren oder reparieren.
Aktualisieren.
Dinge, die nicht funktionierten:
- Ich habe kein nettes Werkzeug gefunden, um Hardlinks rückgängig zu machen (dh id hardlinks, kopiere die Datei, lösche hardlink, benenne die Kopie in den Hardlink-Namen um).
- Ran chkdsk in der Wiederherstellungskonsole (nachdem alle Dateien dekomprimiert wurden)
- Auf meiner Lenovo-Systemdiskette konnte ich Windows XP Home nicht neu installieren, und das Rescue and Recovery-Programm von Lenovo würde Windows nicht neu installieren
- Das Kopieren (auf eine zweite Partition) und zurück half nicht
Was ich getan habe:
kopierte mein Laufwerk C: in eine andere Partition in einem Verzeichnis "\ c-drive-2009Nov4 mit Richcopy"
Im Mai habe ich eine neue, größere Festplatte installiert und auf der neuen Festplatte eine Partition erstellt, die meiner alten C: -Partition entspricht. Dann kopierte ich mit einem USB-Halter von meinem alten c: zur neuen C: -Partition auf der neuen Festplatte. Dann habe ich die Daten verschoben und auf eine neue große Datenpartition installiert, wobei eine c: -Systempartition von 70 GB im äußeren, schnelleren Ring der HD verbleibt. Also habe ich es einfach nochmal getan, indem ich eine Live-Boot-Linux-GParted verwendete, um meine Partition von Mai auf meine verworfene Partition zu kopieren.
Dann benutzte ich die Kopie meines aktuellen C-Laufwerks, um alle einfachen Dateien wiederzugeben, die ich brauchte, z. B. aktualisierte BAT-Dateien, und neuere Programme neu zu installieren.
Ich habe FEBE verwendet, um mein Firefox-Profil zu sichern. Daher habe ich die FF-Einstellungen in Windows und Ubuntu, das ich auf einer anderen Partition installiert habe, mit dem Backup zurückgesetzt. Unter Ubuntu hatte ich noch einen Webzugang und ein Hilfsprogramm. Hat ziemlich gut funktioniert, auch wenn auf dem langsamen Teil der HD hängen geblieben ist.
Verluste: einige "Give-a-way-of-day" -Programme, die ich nicht erneut registrieren kann, einige Programmeinstellungen.
SameFiles Assistant 3.1 könnte funktionieren:
Same Files Assistant ist das Dienstprogramm zum Verwalten von festen Links.
Speziell eine Funktion hat:
- Sie können feste Links jederzeit auf die regulären Dateien zurücksetzen.
Versuchen Sie es mit Hard Link Magic, es könnte helfen.
Auch Junction von Microsoft kann rekursiv Verzeichnisse durchsuchen und Knotenpunkte auflisten / löschen.
Erstellen Sie einfach einen Systemwiederherstellungspunkt, bevor Sie diese Manipulationen durchführen.
Ich habe ein Perl-Skript geschrieben, das alle regulären Dateien identifiziert, die feste Verknüpfungen zu denselben Daten sind. Das Skript funktioniert gut unter UNIX und Cygwin . Ich habe es nicht mit Strawberry Perl oder einem anderen Windows-Port von Perl getestet, aber ich dachte, ich würde es trotzdem teilen. Unter Windows (Cygwin) würde ich ein Terminal öffnen und machen ./list-dup-hard-links /cygdrive/c/
.
#!/usr/bin/perl # # NAME # # list-dup-hard-links - list regular file names pointing to the same inode # # SYNOPSIS # # list-dup-hard-links DIRECTORY # # DESCRIPTION # # For each inode that is referred to by more than one regular file, print # the inode number and the list of corresponding files. # # AUTHOR # # Peter John Acklam <pjacklam@online.no> use strict; # restrict unsafe constructs use warnings; # control optional warnings use File::Find; # traverse a file tree if (@ARGV != 1) { die "Usage: $0 DIRECTORY\n"; } my $start_dir = shift; # starting directory my $start_dev = (stat $start_dir)[0]; # device number of where we start my %inum2files; # map each inode number to file(s) sub wanted { return if -l; # skip symlinks my @fileinfo = stat(); # get file info if (-d _) { # if a directory my $this_dev = $fileinfo[0]; # get device number if ($this_dev != $start_dev) { # if we crossed a device boundary $File::Find::prune = 1; # mark directory for pruning return; # and return } } return unless -f _; # continue only if a regular file my $inum = $fileinfo[1]; # get inode number push @{ $inum2files{$inum} }, # append this file to the list of $File::Find::name; # all files with this inode number } find(\&wanted, $start_dir); # traverse the file tree while (my ($inum, $files) = each %inum2files) { next if @$files < 2; # skip non-duplicates print "\nInode number: $inum\n\n" # print header or die "$0: print failed: $!\n"; for my $file (@$files) { print " $file\n" # print file name or die "$0: print failed: $!\n"; } }
Bei Unix verbinden feste Links zu einer Datei dieselbe "Inode-Nummer". Die Funktion "stat" gibt Dateieigenschaften wie Größe, Modus, Änderungsdatum, Änderungsdatum, Inode-Nummer, ... zurück, gibt jedoch die Inode-Nummer "0" für eine beliebige Datei in Windows zurück. Verwenden Sie perl Win32 :: IdentifyFile (CPAN), um eine Lokalisierung der Dateifestplatte zu erhalten. Hard Links "Links" auf die gleiche Festplatte "Lokalisierung".
Verwandte Probleme
-
4
Wie finde ich heraus, wer bei Windows XP angemeldet ist?
-
3
Was ist der Deal mit dem Ordner C: \ Programme \ xerox \ nwwia?
-
3
Warum führt das Entfernen des USB-Sticks zu einem blauen Bildschirm?
-
2
Gibt es eine Möglichkeit, einen Menüeintrag "Senden an -> E-Mail-Empfänger" an Google Mail zu sen...
-
2
Warum kann das IIS-Installationsprogramm staxmem.dll nicht kopieren, obwohl es sich im angegebenen O...
-
1
DNS-Einstellungen pro Windows-Benutzer wechseln?
-
4
Gibt es eine Möglichkeit, den Scanner eines Multifunktionsdruckers gemeinsam zu nutzen?
-
8
So verhindern Sie, dass die Taskleiste bei der Verwendung von Remote-Desktop schrumpft?
-
20
Verpasse ich etwas, wenn ich unter Windows XP bleibe?
-
1
Was kann ich unter Windows XP ausschalten, um Speicher freizugeben, ohne alles zu beschädigen