ISO Datei für diverse Zwecke erstellen
[EDIT: 2009-04-20: BugFix nach "echo Imageerstellung". Löst ein Problem mit dem INPUT_PATH, wenn direkt ein CD-Inhalt als ISO Datei erstellt werden soll...]
Hallo zusammen,
VORWORT:
Dieses Tutorial beschreibt kurz und bündig, wie man aus einem vorhandenen beliebigen Ordner eine ISO-Datei in einem anderen Ordner erstellt.
ANLASS:
...für dieses kurze Tutorial war, dass ich -ohne ein Netzwerk einzurichten- Dateien in einer virtuellen Maschine verwenden wollte (OHNE installierte VMware Tools). Wieso also nicht diesen Vorgang für mich "halbwegs automatisieren????" Und wenn ich schon einmal dabei bin - hier bei Administrator.de wird sich vielleicht auch jemand darüber freuen
Hierzu benötigt man nur das mkisofs Tool aus der CDRTOOLS Sammlung von Jörg Schilling. Die vorkompilierten Win32-Binaries und die DLLs kann man sich hier herunterladen:
[CDRTOOLS Sammlung]
(Bitte die "DLLS needed by mkisofs" und "cygwin1.dll" herunterladen und mit in das Verzeichnis von mkisofs.exe packen! Danke an bastla hierfür! Ich hatte mit der mkisofs aus den c't Offline Update gearbeitet, die auch so funktionierte... )
Desweiteren benötigt man meine Batch-Datei (siehe unten), die sicherlich nicht allen Künsten von Biber, bastla, Dani oder sonstigen Pro's (*mal-einen-Gruß-dalass*) hier entspricht, aber dennoch funktionieren dürfte. :-P
Ausführliche Kommentare findet Ihr in dieser Batchdatei, falls Sie euch interessieren. Den anderen sei kurz erläutert, was nun zu tun ist:
- mkisofs.exe und diese Batch-Datei in einem Ordner speichern.
- ISO-Images werden im Ordner erzeugt, wo auch die Batch-Datei liegt. (Wenn man das ändern möchte, siehe Batch-Datei (SET "OUTPUT_PATH=%~dp0")
- Aufruf der Batch-Datei...
- Entweder die Batch-Datei mit dem Verzeichnisnamen als Parameter von der Konsole starten oder
- das Verzeichnis per Drag and Drop auf die Batch Datei schieben
- Wer es "super-komfortabel" haben möchte und der Punkt 3 schon prima funktioniert, der kann man eine Verknüpfung zu dieser Batch-Datei im "SendTo" Ordner legen. Dann ist diese Batch bequem per "Rechte-Maustaste auf einen Ordner" --> Senden An... verfügbar. Hierzu bitte einfach "Start --> Ausführen --> Sendto" ausführen. Bei wem das nicht funktioniert: "%userprofile%\Sendto" .
Ich hoffe, ich konnte jemanden hiermit helfen und dieser Beitrag fristet hier nicht ein "Tutorial-was-so-oder-so-niemand-irgendwann-brauchen-wird" Dasein
Für Anmerkungen bzw. Kritik bin ich natürlich immer und gerne offen!!!
@ECHO OFF & SETLOCAL
:: Rückgabecodes und Ihre Bedeutung in dieser Batchdatei
:: 1 = Der Eingabepfad existiert nicht
:: 2 = Der Ausgabepfad existiert nicht
:: 3 = Die mkisofs.exe fehlt
:: 9 = Vorzeitige Abbruch bei der Kontrolle der Konfigurationsoptionen
SET "MKISOFS=%~dp0mkisofs.exe"
SET "INPUT_PATH=%~1"
SET "OUTPUT_PATH=%~dp0"
:: Die ISO Volumen- und Dateibezeichnung wird tiefer ermittelt,
:: wenn sichergestellt ist, dass das Verzeichnis auch existiert... ;)
SET "ISO_VOLID="
SET "ISO_IMAGE="
:: Logische Überprüfung...
:: Eingabepfad
if "%INPUT_PATH%" EQU "" EXIT 1
dir /AD "%INPUT_PATH%" >NUL 2>NUL || EXIT 1
:: Danke an Bastla und miniversum für die nächste Zeile
set "ISO_VOLID=%~nx1" & set "ISO_IMAGE=%~nx1"
:: Ausgabepfad
if "%OUTPUT_PATH%" EQU "" EXIT 2
dir /AD "%OUTPUT_PATH%" >NUL 2>NUL || EXIT 2
:: MKISOFS.exe vorhanden???
if not exist "%MKISOFS%" EXIT 3
echo Konfigurationsoptionen
echo ********************************************************
echo Pfad zu mkisofs : %MKISOFS%
echo Eingabepfad : %INPUT_PATH%
echo Ausgabepfad : %OUTPUT_PATH%
echo IsoImage-Dateiname : %ISO_IMAGE%.iso
echo IsoImage Volumenbezeichnung: %ISO_VOLID%
echo ********************************************************
echo.
set /P ERGEBNIS=[Sind diese Einstellungen richtig? (j/n) ]
if /I "%ERGEBNIS%" NEQ "j" exit 9
echo Imageerstellung...
:: BugFix: 2009-04-20
if '%INPUT_PATH:~-1%' NEQ '\' "%MKISOFS%" -iso-level 4 -joliet -joliet-long -rational-rock -output "%OUTPUT_PATH%\%ISO_IMAGE%.iso" -volid "%ISO_VOLID%" "%INPUT_PATH%"
if '%INPUT_PATH:~-1%' EQU '\' "%MKISOFS%" -iso-level 4 -joliet -joliet-long -rational-rock -output "%OUTPUT_PATH%\%ISO_IMAGE%.iso" -volid "%ISO_VOLID%" %INPUT_PATH%
echo.
echo Imageerstellung...FERTIG! Beliebige Taste zum Beenden!
pause > NUL
Gruß
Markus
Content-ID: 108903
Url: https://administrator.de/tutorial/iso-datei-fuer-diverse-zwecke-erstellen-108903.html
Ausgedruckt am: 25.12.2024 um 13:12 Uhr
Ich hätte da noch ein oder zwei Verbesserungsvorschläge:
- Die Zeile 21 und 22 könnte man ersetzen durch:
Der Vorteil wäre der, dass man, wenn man die Batch von der Kommandozeile ausführt, nicht in dem Ordner steht der als Ausgangsverzeichnis angegeben ist, sondern da wo man auch vor dem Start der Batchdatei war.
- Wenn man die Zeile 25 wie folgt ändern: