home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ST-Computer Leser-CD 1999 January
/
STC_CD_01_1999.iso
/
utility
/
lifee1_1
/
lsave.stg
< prev
Wrap
Text File
|
2000-01-08
|
12KB
|
305 lines
##ACE-STGPAR 4 0021
@database "Die Anleitung zu LifeSaver"
@subject "Dokumentation/Sonstige"
@author "Olaf Piesche"
@$VER: 1.0 (@:"__DATE__")
@options +gz-s-d12
@node Main "LifeSaver"
@{U}Inhaltsverzeichnis LifeSaver@{0}
@limage lsave.img 0 solid
@{U}Inhalt:@{0}
Was ist das?
Was braucht man?
Wie macht man's?
Wie macht er's?
Und was macht das?
Macht das was kaputt?
Und wer hat das gemacht?
History
@endnode
@node "Was ist das?"
@{U}Was ist das? LifeSaver@{0}
Wieder ein Programm, das aus der Notwendigkeit entstanden ist.
Nachdem Rainer Wiesenfeller mich mehrmals darauf aufmerksam machte,
da₧ ihm beim Shutdown seines Rechners immer wieder die Ramdisk
verloren geht, setzte ich mich mit dem Vorsatz hin, hier Abhilfe zu
schaffen.
LifeSaver ist das Ergebnis.
Inzwischen hat sich LifeSaver zu einem Backup-Programm ausgewachsen,
mit dem man z.B. bei jedem Shutdown eine Datenrettung ausführen
lassen kann.
@endnode
@node "Was braucht man?"
@{U}Was braucht man? LifeSaver@{0}
-Einen TOS-kompatiblen Rechner
-der unter MiNT oder MagiC (mindestens 3.0!) läuft - das
Betriebssystem mu₧ also ein erweitertes Dateisystem bieten
-eine Festplatte wäre zu empfehlen...
-einige zu rettende Daten. ;-)
-einen Bildschirmmodus mit mindestens 16 Farben
-und, je nach Geschwindigkeit der Massenspeicher-Medien ein wenig
Geduld, bis die Datenrettung abgeschlossen ist.
@endnode
@node "Wie macht man's?"
@{U}Wie macht man's? LifeSaver@{0}
Erwarten Sie hier jetzt bitte keine Aufklärungsarbeit, ich will nur
kurz die Bedienung und Funktionsweise von LifeSaver erklären.
Beim Starten mit gedrückter ALTERNATE-, SHIFT- oder CONTROL-Taste wird der
Konfigurationsdialog geöffnet, in dem durch Klick auf die Anzeigefelder in
einer Dateiauswahl bis zu 5 Quellpfade und ein Zielpfad der Datenrettung
eingestellt werden können. Rechtsklick auf einen der Quellpfade löscht
diesen.
@limage config.img 0 solid
@{B}"Info"@{0} sollte klar sein.
Unter @{B}"nicht retten"@{0} können 12 Datei-Extensionen angegeben
werden, die von der Datenrettung ausgeschlossen werden sollen. Klick
auf eine der Extensions öffnet ein Popup, in dem die Extension
einzutragen ist. Die Extensionen haben momentan eine maximale Länge
von 3 Zeichen. Rechtsklick löscht eine Extension.
Im @{B}"Backup-Modus"@{0} kopiert LifeSaver nur die Dateien, deren
Archiv-Bit gesetzt ist, also die, die sich wirklich seit der letzten
Rettung geändert haben. Hieraus folgt natürlich, da₧ LifeSaver bei
den kopierten Quelldateien das Archivbit löscht.
@{B}"Nachfragen"@{0} bewirkt, da₧ LifeSaver vor der Datensicherung
noch einmal die Möglichkeit zum Abbruch gibt.
@{B}OK@{0} speichert die Konfiguration in der Datei LIFESAVE.CFG, die
im Verzeichnis, in dem sich auch das Programm befindet, angelegt und
von dort auch wieder geladen wird.
@{B}Hierbei gibt es aber eine Ausnahme:@{0}
@{I}Soll LifeSaver aus dem MagiC-Shutdown heraus aufgerufen werden,
mu₧ die Datei LIFESAVE.CFG in das Verzeichnis kopiert werden, in dem
sich das Shutdown-Programm befindet (in der Regel wird das das
Verzeichnis des Desktops sein, also z.B. C:\GEMSYS\GEMDESK).
Am besten Konfigurieren Sie LifeSaver erst einmal und legen eine
Kopie der Konfigurationsdatei ins Shutdown-Verzeichnis, so da₧ immer
eine Kopie der Konfigurationsdatei im LifeSaver-Programmdirectory
erhalten bleibt, die zum weiterkonfigurieren verwendet werden kann
(wenn LifeSaver nicht aus einem Shutdown heraus aufgerufen wird,
sucht er die Konfigurationsdatei in seinem Verzeichnis).@{0}
Wenn das Betriebssystem es unterstützt, können Sie auch einfach einen
Link (Alias) auf die Konfigurationsdatei ins Shutdown-Verzeichnis legen.
Von diesem Fall abgesehen sollte LifeSaver seine Konfigurationsdatei aber
immer in seinem Verzeichnis suchen und anlegen.
Wird LifeSaver ohne ALT/SHIFT/CTRL gestartet, kopiert er alle Dateien
inklusive Verzeichnisstruktur aus den Quellverzeichnissen ins
Zielverzeichnis. In einem Dialog wird hierbei der Fortschritt der Aktion
angezeigt.
@limage copy.img 0 solid
Zuerst werden die Dateien aus den Quellverzeichnissen gesucht, wobei
gleich Ausschlu₧extensions und Backup-Modus berücksichtigt werden.
Beim Suchen der Dateien wird bei "übersprungen" die Anzahl der
Dateien angezeigt, die aufgrund der Ausschlu₧extensions oder eines
gelöschten Archivbits nicht mitkopiert werden. Unter "von insgesamt"
steht (nach dem Suchvorgang) die Anzahl an Dateien, die sich
insgesamt im Quellverzeichnis befinden, und neben "suche Dateien" die
Anzahl Dateien, die gefunden wurden und kopiert werden.
Dann wechselt die Anzeige von "suche Dateien" auf "kopiere Dateien",
und genau das passiert dann auch. Evtl. auftretende Fehler werden mit
einer Alertbox angemahnt und unter "Fehler" gezählt, die insgesamt
geretteten Dateien stehen bei "gerettet", und die Anzeige in der
Busybox gibt die Anzahl an Dateien an, die noch kopiert werden müssen.
LifeSaver kopiert hierbei auch Dateien, die grö₧er als der momentan
freie Arbeitsspeicher sind. Hierbei wird die Puffergrö₧e dynamisch
gewählt, woraus sich auch die Zeit ergibt, die zum Kopieren solch
gro₧er Dateien benötigt wird (umgekehrt proportional zur Puffergrö₧e,
oder noch schlimmer). Wenn eine Datei auf diese Art kopiert wird,
teilt sich der rote Busybalken vertikal und in der unteren Hälfte
läuft ein grüner Balken von links nach rechts, der angibt, wie weit
die Datei kopiert ist.
Sollte ein Fehler auftreten, wird eine Alertbox ausgegeben.
Bereits beim Suchen der Dateien wird im Zielverzeichnis auch der
Quellverzeichnisbaum angelegt.
Ist das Quellverzeichnis z.B.
@{B}"f:\rette\mich\hier"@{0}
mit dem Unterordner
@{B}"\heraus"@{0}
und das Zielverzeichnis
@{B}"d:\hierhin",@{0}
wird im Verzeichnis @{B}"d:\hierhin"@{0} zuerst ein Ordner namens
@{B}"f"@{0} und in diesem der Verzeichnisbaum
@{B}"rette\mich\hier\heraus"@{0} angelegt. Die weitere
Verzeichnisstruktur des Quellverzeichnisses wird beim Kopieren auch
komplett ins Zielverzeichnis übernommen, im Ziel befinden sich dann
Ordner mit den jeweiligen Laufwerksbuchstaben der Quelllaufwerke.
Dieses Vorgehen ist deshalb nötig, weil sich auf unterschiedlichen
Partitionen und in unterschiedlichen Ordnern zwar Ordner und Dateien
gleichen Namens befinden dürfen, jedoch nicht im gleichen
Verzeichnis. Wollte man also die Ordner "f:\rettemich" und
"d:\rettemich" nach c retten, wären das zwei mit dem gleichen Namen
auf c, und das geht nicht. ;-)
Die Datenrettung lä₧t sich natürlich am angenehmsten verwirklichen,
indem man LifeSaver z.B. ins Stop-Verzeichnis von MagiC legt (je nach
Desktop/Shutdownprogramm und/oder Betriebssystem). Eben so, da₧ er
bei einem Shutdown automatisch gestartet wird. Beachten Sie hierzu
bitte die Ma₧nahmen für den MagiC-Shutdown.
@{B}Wichtig ist, LifeSaver nicht bei den Kopieraktionen gewaltsam zu
unterbrechen! D.h., auf keinen Fall einen Reset ausführen, während
LifeSaver Dateien kopiert, sonst kann u.U. der Verzeichnisbaum des
Quell- oder Ziellaufwerkes beschädigt werden!@{0}
Mit "Abbruch" kann der Kopiervorgang unterbrochen werden.
@endnode
@node "Wie macht er's?"
@{U}Wie macht er's? LifeSaver@{0}
LifeSaver funktioniert durch die Verwendung der Funktionen Dopendir und
Dreaddir nur auf erweiterten Filesystemen, also MinixFS, MagiC VFAT, etc.!
Wo die Einschränkung bezüglich der Menge der zu kopierenden Verzeichnisse
liegt, konnte ich noch nicht herausfinden, aber es gibt mit Sicherheit eine,
da rekursive Funktionen verwendet werden, und selbst 150K Stack werden
irgendwann einmal voll. ;-)
Theoretisch jedoch sollten 2048 Dateien pro Quellpfad die Obergrenze
sein, ich habe mit Testverzeichnissen mit bis zu 800 Dateien
getestet, und das ging einwandfrei.
Bereits beim Aufbau der Dateiliste werden die Ausschlu₧extensions und
der Backup-Modus berücksichtigt, um die Dateiliste so klein wie
möglich zu halten. Rein rechnerisch mü₧te die Obergrenze für zu
kopierende Unterverzeichnisse pro Quellverzeichnis bei etwa 300-400
liegen.
Die Geschwindigkeit ist, soweit ich das beurteilen kann, vertretbar
(im Kopiermodus wurde mein Testverzeichnis mit 849 Dateien in 73
Ordnern in über 10 Megabytes in ein Zielverzeichnis kopiert
(Ergebnis: 70 Ordner, 669 Dateien, 5.2 Megabytes), wofür etwa 2,5
Minuten benötigt wurden (Quantum IDE -> IBM SCSI, bei recht
fragmentierten Partitionen).
@endnode
@node "Und was macht das?"
@{U}Und was macht das? LifeSaver@{0}
Eigentlich gar nix. ;-)
LifeSaver ist Mailware. Wer das Programm nutzt, verpflichtet sich
damit, mir eine e-mail unter
olaf_piesche@W2.maus.de
zu schicken.
Gleiches gilt auch für Anregungen oder (hoffentlich konstruktive)
Kritik (worauf ich hoffe, denn Anregungen kann man nie genug haben),
kleine Spenden werden auch nicht zurückgewiesen ;-)
LifeSaver darf ansonsten frei kopiert und über jeglichen Weg
verbreitet werden.
Ausnahme sind PD-Sammlungen, in solche darf LifeSaver nur mit meiner
ausdrücklichen Genehmigung aufgenommen werden!
@endnode
@node "Macht das was kaputt?"
@{U}Macht das was kaputt? LifeSaver@{0}
Ich übernehme grundsätzlich keine Haftung. Jedenfalls nicht für
irgendwelche Schäden, die eventuell durch LifeSaver verursacht
werden. Ich habe das Programm aber auf meinem Rechner eine Weile
ausgetestet, und bis jetzt ist meine Festplatte noch heil ;-)
Au₧erdem wurde LifeSaver von Rainer Wiesenfeller unter MagiC PC,
von Christian Eyrich unter MiNT/N.AES und von Hans-Joachim Riedl
ebenfalls unter MagiC getestet und für nicht Festplattengefährdend
befunden (FSK: 20MB ;-)).
@endnode
@node "Und wer hat das gemacht?"
@{U}Und wer hat das gemacht? LifeSaver@{0}
Idee, Betatest:
Rainer Wiesenfeller
Weiterer Betatest:
Hans-Joachim Riedl
Christian Eyrich
Der Rest:
Olaf Piesche
olaf_piesche@w2.maus.de
(C) Therapy Seriouz Software 1998
Viel Spa₧ und gerettete Daten!
@endnode
@node "History"
@{U}History LifeSaver@{0}
History:
V1.0->V1.1
- Sondertaste zum Öffnen des Konfigurationsdialogs kann jetzt
SHIFT, CTRL oder ALT sein, da unterschiedliche Desktops
unterschiedliche Belegungen für Vieweraufruf/Single-Start haben.
- wenn beim Kopieren Fehler aufgetreten sind, wird dies zum Schlu₧
mit einer Alertbox mitgeteilt.
- Bugfix beim Ermitteln der dynamischen Puffergrö₧e
- wenn keine Konfigurationsdatei gefunden wurde, kann man den
Konfigurationsdialog aus dem darauf folgenden Alert aufrufen.
Was bis jetzt noch geplant ist:
- Anpassung fürs SingleTOS-Filesystem (Fsfirst/Fsnext)
- Logfile mit Protokoll der Kopieraktionen und vor allem der Fehler
- Möglichkeit, den Shutdown abzubrechen, wenn Fehler aufgetreten
sind
- Beliebig viele Quellpfade (hallo, Holger)
- Rauswerfen der rekursiven Funktionen, damit nicht mehr soviel
Stack benötigt wird und die Unterordnerobergrenze (das neue Unwort
des Jahres?) nicht mehr so niedrig liegt
Bekannte Bugs:
- Mit dem alternativen Shutdown-Programm für Magic findet
LifeSaver seinen Pfad nicht korrekt und kann daher nicht aus
dem MagiC-Shutdown heraus gestartet werden.
@endnode