Was kann ich nicht im Windows-Ordner symlink / mklink (dh Booten verhindern)

1426
Joshua Laferriere

Ich habe ein riesiges Projekt. Ich habe das Scripting runter gebracht. Das Skript gibt eine Liste aller Dateien ab einer bestimmten Größe in einer TXT-Datei aus. Ich verschiebe die Dateien dann auf eine andere Festplatte (je nachdem, wie ich mein Startlaufwerk eingerichtet habe), lösche das Original und stelle einen Symlink zu ihm her.

Mein Ziel ist es, alle Dateien unter 512 KB auf eine SSD zu verschieben und den Rest auf dem RAID zu behalten.

Ich habe es mit Program Files und Program Files (x86) und Benutzern perfekt ausprobiert. Beim Windows-Laufwerk bekomme ich jedoch einen BCD-Bootfehler.

Ich entschied mich jedoch, mein Betriebssystem auf das RAID zu verschieben und alle Dateien auf die SSD zu verschieben (ich habe es vorher anders gemacht), weil ich dachte, dass das RAID möglicherweise nicht geladen wird, bevor die symbolischen Verknüpfungen stattfinden können.

Ich habe es zum Booten gebracht, indem ich die folgenden Ordner alleine gelassen habe: Assembly, alle Dateien in Windows \ System32 und Syswow64 und Boot.

Ich denke, es könnte nur eine Versuchs- und Irrtumssache sein.

Hier sind die Batch-Dateien, wenn jemand interessiert ist

filesize.bat

@Echo Off SetLocal EnableDelayedExpansion  set maxbytesize=1048576  for /f "tokens=*" %%A in ('dir /a-d /b /s') DO ( If %%~zA GTR %maxbytesize% ( echo %%A )  ) >> list2.txt 

Ich verwende eine win7rescuepe-Live-CD mit openofficeportable, um die Datei "Combine.csv" zu erstellen (einfach list2.txt in Spalte a kopieren und einfügen, eine schnelle Suche / Ersetzung im Zielpfad durchführen und den Inhalt in Spalte b kopieren, als Kombination speichern.) .csv).

transfer.bat

echo off  SetLocal EnableDelayedExpansion  Set n= Set m=  for /f "tokens=1,2* delims=," %%A in (combined.csv) DO ( Set /a n+=1 Set /a m+=1 echo %%A echo %%B echo F|xcopy %%A %%B /Y /f > nul IF EXIST %%B DEL %%A IF EXIST %%B MKLINK %%A %%B  ) 
1
Sie wissen, dass es in Ihrem Windows-Laufwerk Hardlinks gibt, richtig? Wenn Sie WinSxS beispielsweise auf ein anderes Laufwerk als System32 verschoben haben, werden die Verknüpfungen zwischen den Dateien unterbrochen. Dies kann je nach den Geschehnissen wichtig sein. Mehrdad vor 13 Jahren 2

3 Antworten auf die Frage

0
Joshua Laferriere

Nun, ich habe meine Winsxs verschoben und die Dinge funktionieren gut. Ich denke, dass sie funktionieren, weil der Pfad immer noch derselbe ist, also sollte es gut sein, ihn zu verschieben, wenn etwas hart damit verbunden ist. Ich hatte früher Probleme, aber ich denke, dass die Dateien nicht kopiert werden konnten. Ich habe neu installiert und konnte alle früheren Probleme beheben

Als Update. Ich habe den inf-Ordner auch nicht verschoben

Ich überlege, das Skript neu zu schreiben, um diese Ordner automatisch zu überspringen. Ich könnte einen einfachen Test durchführen, indem ich Mountpunkte anstelle von SOME-Dateien verwende, um zu sehen, was bootfähig ist und was nicht.

Hardlinks funktionieren mit Verzeichniseinträgen und nicht mit Pfaden. Daher werden sie beim Verschieben in ein anderes Dateisystem beschädigt. grawity vor 13 Jahren 0
0
Joshua Laferriere

Ich habe meine Fahrt jetzt dreimal überarbeitet. Ich entschied mich für das Boot-Gerät der SSD wegen der Ordner, die ich in Ruhe lassen muss (sys32 / syswow, inf usw.). Ich möchte das RAID aufgrund von 4K-Lesevorgängen nicht. Es funktioniert super! Dies ist ein wirklich guter Weg, um einen schnelleren Start mit hd-Lastverteilung zu erreichen. Ich habe auch ein kostenloses Ramdisk-Tool verwendet, um eine Ramdisk zu mounten und meine temporären Dateien zuzuweisen, sodass meine SSD keine Zeit mit dem Schreiben von temporären Dateien verschwendet und mehr Durchsatz für 4-k-Lese- / Schreibvorgänge zur Verfügung steht

Bitte kombinieren Sie wenn möglich Ihre Antworten. oKtosiTe vor 13 Jahren 0
0

wie das anzuzeigende Symbol. Im Gegensatz zu einem symbolischen Link können Sie in DOS nicht "cd ./shortcut-name" verwenden (in Unix / Linux können Sie "cd ./symlink-name"), und es funktioniert wie ein echtes Unterverzeichnis