Beiträge von alpines
-
-
Ist das so richtig:
Genau, du kannst es einfach an den Anfang stellen, ist bei solchen Modifikatoren auch üblich.
Seine Position ist aber nicht zu vernachlässigen, denn der Modifikator gilt erst wenn er aufgerufen wurde.
Folgendes Beispiel findet nur Strings wo das A case sensitiv, und das b case insensitiv ist A(?i)b.
-
Mein Script habe ich dir gerade per PN geschickt. Das läuft in der Tat schon sehr performant. Ich versuche jedes Quentschen an Geschwindigkeit rauszuquetschen, weil im echten Einsatz eine Menge Dateien blitzschnell ausgelesen werden sollen. Wär ja blöd, wenn man ein paar Sekunden auf einen CallTip warten müsste.
Da liegt ja der Hase im Pfeffer. Wann parst du denn die Funktionen, und wann benötigst du das Calltip?
Angenommen du tippst grad #include "MeinTollesInclude.au3", dann ist doch auf jeder halbwegs modernen Mühle bereits die Datei geparst worden bevor du in eine neue Zeile hüpfst und das Calltip zu öffnen versuchst?
Die gesamte GDIPlus.au3 dauert bei mir roundabout 140ms (für 10 Durchläufe!!) und die ist 298KB groß, ich bezweifle mal, dass eigene UDFs auch nur in die Nähe davon kommen.
Bestes Beispiel wäre da der BASS-Wrapper, aber dafür gibts ja Calltips, und die kannst du einfach aus der Calltipsdatei parsen... wesentlich flotter.
Bei deinen Replacements musst du übrigens aufpassen, dass StringRegExpReplace von Haus aus case-sensitiv ist. Das bedeutet, dass deine Patterns mit Ausdrücken wie "ByRef" teilweise nicht funktionieren, wenn der User "byref" schreibt.
Häng da vorne noch ein (?i) dran, damit du case-insensitiv prüfst.
// Edit: Professor Bernd
Bin wahrlich kein RegEx-Profi aber probiers mal mit "(\()(.*)" als Pattern und dann als Replacement " $1 $2".
Analog für ")" wäre es dann "(.*)(\))" und " $1 $2".
Achtung, wenn bei den Patterns etwas nicht gecatcht wird, so wird es ohne zu verändern übernommen. Das bedeutet, dass wenn beim ")" bspw. etwas hinter der Klammer steht, wird das einfach so übernommen.
Ich bin davon ausgegangen, dass du den String bis dahin gesäubert hast.
Um das 1. Pattern zu erklären:
Finde und catch die erste Klammer auf ($1). Dann catche den gesamten Rest des Strings ($2).
Jetzt replacen wir das was wir gefunden haben und fügen vor $1 ein Leerzeichen, also vor die Klammer und anschließend noch zwischen $1 und $2 ein Leerzeichen, also nach der Klammer und vor dem Rest des Strings.
-
Das scheint mir ein einfacher Fall zu sein, ich habe nur s durch h ersetzt. Ist das so in Ordnung?
Das "h" steht in diesem Kontext für horizontale Whitespaces. Folglich werden Zeilenumbrüche nicht gefunden. Wenn dein String bereits teilweise gesäubert ist und keine vertikalen Whitespaces kommen (Zeilenumbrüche, PageBreaks, ...) dann ist das kein Problem.
Bei den folgenden Anweisungen geht es darum, die ausgelesenen Zeilen so zu formatieren, dass die Syntax verdeutlich wird.
Bestimmt geht das, aber wieso verwendest du hierfür eigentlich RegExpReplace? Du ersetzt nur ein Literal mit einem anderen, d.h. du könntest auch einfach StringReplace verwenden.
Kann man von diesen Anweisungen welche zusammenfassen? Ziel ist es, die Geschwindigkeit des Codes zu erhöhen.
Hast du mal ein paar Skripte gebenchmarkt um zu schauen bei welcher Hausnummer du landest? Vielleicht ist es gar nicht nötig deinen Code performanter zu machen.
-
Oscar dein Skript gibt aber nur den ersten Monitor zurück auf dem das Fenster gefunden wurde oder nicht? Das kann ja je nach Monitoranordnung (anschlusstechnisch) und Fenstergröße variieren?
-
-
Mit RAID 10 hast du dann aber immer noch keine Datensicherung. In gewisser Weise hast du damit deine Daten nur 1x, denn sie sind auf 4 Festplatten verteilt. Das einzige was deine Daten (gegen Ausfall) schützt ist die Rebuild Fähigkeit des RAIDs. - Anders ausgedrückt: Keine der 4 Festplatten lässt sich auf einem anderen Gerät (PC o. ä.) auslesen.
Die Platten lassen sich doch nach wie vor verwenden wenn davon eine ausfällt (oder zwei bestimmte). Es geht mir dabei nur um das automatisierte kopieren auf eine andere Platte.
Der Controller lässt dich ja wissen, dass sie degradiert sind, aber du kannst sie immer noch weiter verwenden, solltest das aber nicht tun, weil du ja das RAID rebuilden solltest.
Die alten 4+6TB Platten werde ich dann nochmal explizit als Backup verwenden (meine Daten liegen ja momentan noch unter 10TB) und manuell rüberkopieren, aber dann in einem größeren Intervall.
Wie wärs denn mit einer Dockingstation mit OTB (One-Touch-Backup)? Ist superleicht zu handhaben und kostet mit 20 bis 40 Euro nur einen Bruchteil des RAID Gehäuses.
Da habe ich keine Ahnung wie die Dinger funktionieren. Wenn die gesamte Platte bei jedem Klonen gescannt wird, dann belastet das doch die Platten mehr oder nicht.
Zumindest wenn es einen Sektorklon macht, und kein Dateisystemklon.
An so eine Dockingstation hatte ich auch schon gedacht, bin aber mehr der Fan von Gehäusen, weil ich die nicht zustauben lassen will bzw. nicht rausnehmen will.
-
Was sind deine Gründe dafür? Für RAID 10 brauchst du min. 4 Festplatten um 1x deine Daten zu speichern. Die Daten werden durch die 0 Logik mit Paritäten auf die beiden 1 Logik Pärchen verteilt, wodurch du mit hoher Wahrscheinlichkeit keine der Festplatten einzeln irgendwo anschließen kannst, um auf die Daten zuzugreifen. Durch den RAID 0 Anteil werden die Rebuild Zeiten signifikant steigen, evtl. von 6 auf 20 Stunden, usw.
4fach Gehäuse mit RAID 10. 16-20TB Speicher hätte ich gerne, also (2x)2x8TB im RAID1 und die 2x(2x8TB) im RAID 0. Die erhöhten Geschwindigkeiten sind mir egal, mir gehts nur darum, die beiden Plattenkapazitäten zu einer zu kombinieren um dann nicht Daten getrennt lagern zu müssen.
Rebuildzeiten sind für mich auch eher irrelevant (kann das ganze mit 4x 500GB 2,5" HDDs testen), da ein Rebuild ja extrem selten vorkommt. Ob dieser dann 20 Stunden dauert soll mir egal sein, Backup ist ja noch da.
Bitte versteh das jetzt nich falsch, aber das ist NICHT der Sinn von RAID. RAID ist eine Ausfallsicherung, um Daten mit hoher Verfügbarkeit (normalerweise) 24/7 bereitstellen zu können. Ein An- Ausschalten ist da eigentlich nicht üblich.
Gibts stattdessen was besseres um die Redundanz zu automatisieren ohne, dass ich mich um etwas kümmern muss? Ich will nicht auf eine Software oder ein Script warten, dass die Daten kopiert.
Einen RAID-Verbund sollte es doch nicht kümmern ob er oft (in meinem Falle selten) hoch und runtergefahren wird oder nicht? Der Controller erkennt die Fehler ja sowieso nur beim Lesen/Schreiben der Sektoren.
-
Wichtig ist, alpines hat die Infos für seine Entscheidungshilfe.
Ja, und ich tendiere momentan zu RAID 10 und ein Plattengehäuse mit integriertem RAID-Controller, da Sofware RAID über Windows nur integriert möglich ist.
Dann würden die Platten aber laufen bzw. ausgeschaltet bleiben und ständig an und herunterfahren, wenn eine Anwendung mal alle Platten queryed, was sehr häufig vorkommt.
Sicherheit gegen Viren wäre dann auch nicht mehr gegeben.
Das Gehäuse was ich im Startpost verlinkt hatte unterstützt kein RAID 10, aber es gibt ähnliche von der selben Firma die es tun. Ich muss da einfach meine Angst überwinden, und meine Füße ins Wasser stecken und es einfach mal ausprobieren.
Meine Daten habe ich ja noch da, ich probier einfach wie das Gehäuse reagiert wenn ich bei einem standard RAID 1 eine Platte entferne, wie das Rebuilding von statten geht etc.
-
Ohne Werbung für Bernd machen zu wollen, aber das Calltipfeature ist wirklich heftig gut geworden.
Zwar fehlen fundamentale Sachen wie das automatische Öffnen beim Senden von "(", aber das ist zum größten Teil PSPad geschuldet und ist im Moment nicht effizient implementierbar.
Es gibt *perfekten* Multilineerkennnugssupport, Parameterhopping in Calltips die in Kommentaren sind funktionieren korrekt, ungültige Bezeichner öffnen keine Calltips, und und und...
Es lohnt sich das mal näher anzuschauen (besonders der Multilinesupport) um zu sehen, was man alles in SciTE eigentlich nicht hat.
Da ist ne gewaltige Menge Hirnschmalz reingeflossen.
Generell geht es in dem Projekt ziemlich gut voran, Bernd ist motiviert und wenn es so weiter geht (und die fehlenden Features in PSPad nachgeliefert werden) dann gibt es keine Zweifel daran, dass Bernd den Rest nachliefert.
Vielleicht will der eine oder andere sogar direkt seinen Editor wechseln, wer weiß. Die Zukunft sieht auf jeden Fall rosig aus.
-
-
alpines Ein Punkt ist mir noch eingefallen: Die Wiederherstellung von RAID Festplatten, wenn eine getauscht wird (z. B. nach Ausfall). Ich weiß nicht, ob es auf RAID 1 zutrifft, aber bei RAID allgemein kann das wirklich lange dauern. Vielleicht weiß jemand was dazu?
Das ist abhängig von der Plattengröße da ja die gesamte Festplatte durchgescannt werden sollte und nicht nur die Sektoren die beschrieben sind.
-
-
ZFS und BTRFS schreiben Prüfsummen (bereits vor dem Schreiben im Speicher) für die Blöcke.
Beim Lesen des Blocks bzw. beim Scrubbing wird damit gecheckt ob die Daten noch korrekt sind.
Ist das nicht der Fall wird bei einer Festplatte der Fehler erkannt und man weiß dass die Daten scheiße sind.
Bei einem RAID >= 1 werden die Daten dann vom anderen gesunden Volume genommen.
Beim Scrubbing wird auch der Fehler auf dem fehlerhaften Volume mit den Daten des gesunden Volumes wieder geheilt.
Der Sektor wird auch nur auf einer Platte defekt, da dessen Entstehen ja keine Dateisystemoperation ist sondern Ursachen wie z.B. irgendwelche Störeinflüsse oder sowas hat.Beim RAID bei einem Dateisystem mit Prüfsummen sind diese Fehler daher kein wirkliches Problem.
Ich hatte noch ein 3,5" Gehäuse rumliegen gehabt und hab einfach mal eine 2,5" Platte und eine 3,5" Platte beide über USB (separater Port) angeschlossen.
Im Diskmangement kann ich zwar die Option anwählen ein gespiegeltes Volume zu erzeugen, jedoch kriege ich dann prompt die Meldung, dass der Vorgang von den Datenträgern nicht unterstützt wird (Datenträger von basis nach dynamisch zu konvertieren).
Eine kurze Recherche hat ergeben, dass dynamische Datenträger nur für interne Festplatten spezifiziert ist. Zwar gibt es einen Trick indem man die Platte intern als dynamisch konvertiert und dann extern anschließt, dieser Weg ist aber nicht dokumentiert und da lass ich die Finger davon.
D.h. es kommt offenbar nur ein HW-Controller in Frage (sei es als RPi oder dediziert) wenn ich RAID1 drauf haben möchte. Ansonsten darf ich alles doppelt kopieren.
Edit: Du merkst dass ich auf Windows und NTFS nicht wirklich eingehe. Neben dem Aspekt, dass ich davon keine Ahnung habe versuche ich dich weiter davon wegzubringen und wirklich auf was anderes zu bewegen
Aber einen Ansatz vielleicht noch: Microsoft hat vor einiger Zeit ein Dateisystem rausgebracht, was viele der von dir gewünschten Eigenschaften hat: ReFS
Checksummen für die Datenebene und Spiegelvolumes sind hier wohl mit dabei - damit sollte das von mir beschriebene Verhalten bei Sektorfehlern auch damit handlebar sein.
Allerdings ist es auffällig wie wenig man bisher davon hört - das hat sicherlich Gründe...
Das ist mir auch schon aufgefallen. Man empfiehlt gerne seine Lieblinge und das was sich für einen bewehrt hat, aber es schadet ja nicht seinen Horizont zu erweitern. Software RAID hat sich nach 'ner tollen Sachen angehört und wäre für mein Vorhaben vermutlich ideal gewesen.
ReFS ist in Win Pro nicht mehr verfügbar, nur noch für den Enterprise Markt.
-
Mach das einmal mit deinen Rips und du machst dir auf einmal um exakt sowas ganz intensiv Gedanken...
Sollte es mal in einem blöden Fall dazu kommen, kann ich die `eine´ CD neu rippen, das ist für mich kein Problem. Ärgerlicher wäre es wenn alles flöten ginge.
Aber das ist sehr unrealistisch, weil ich nie was lösche (wieso auch, Speicherplatz ist ja genug da). Da müsste schon die Platte den Geist aufgeben.
Nur dass ich das richtig verstehe: Dass Daten nach versehentlichen oder (bösartigem) Verändern/Löschen wiederhergestellt werden könnten oder nicht siehst du in deinem Fall als vernachlässigbar an. Aber um Dinge wie Bit Rot machst du dir dann hingegen schon Gedanken?
Wie gesagt ist ersteres kaum ein Problem, weil so gut wie nie gelöscht wird. Die zwei Platten die ich momentan nutze (4+6TB) würde ich dann ja als Backup nehmen, also wäre das auch kein Problem.
Mir ging es bei Bitrotting darum, dass ich nicht möchte, dass die Daten schleichend flöten gehen und Bitrotting das erkennt, da hatte ich das Szenario mit dem Extrabackup noch nicht im Kopf.
Wie siehts bei RAID aus wenn ein Sektor defekt wird? Wird die auf der anderen Platte auch direkt defekt? Wird das erkannt? Wird das zurechtgeschoben?
Bei Bitrotting weiß ich, dass das passiert mit dem superduper tollen Werkzeugen in Linux, aber bei Windows Software-RAID weiß ich das bspw nicht.
Deswegen habe ich da ein ungutes Gefühl im Bauch, weil ich nicht weiß wie da reagiert wird.
Mir ist vor paar Jahren mal eine 1TB Platte schleichend kaputtgegangen obwohl CrystalDiskInfo meinte, die sei noch vollständig in Ordnung. Anzahl defekter Sektoren war auch alles paletti.
Nur wenn du mal den 40GB Ordner mit Shadowplay Aufzeichnungen kopieren wolltest hat sich die Platte + Windows einfach komplett stur gestellt. Durfte alles einzeln auf die neue Platte kopieren, damit die defekten Daten den Vorgang nicht unterbrechen.
Bei Software-RAID & NTFS fehlen mir die Erfahrung um da was korrektes dazu zu sagen.
Da scheinen die wenigsten damit Erfahrung zu haben. Vielleicht wäre es hier eine gute Lösung einfach mal das ganze auszuprobieren.
Ich hab noch ein 2,5" Gehäuse rumliegen und schau mal ob ich von Freunden noch eins auftreiben kann, dann kann ich ja zumindest Ausfall simulieren, an andere Rechner anstöpseln.
So wie ich das verstehe möchtest du ein extra System (Sprich NAS) dafür vermeiden?
Sonst gäbe es auch da wohl bestimmte Out-of-the-Box-Lösungen wie die ganzen NAS-Distributionen (FreeNAS, OpenMediaVault etc.).
Genau! Ich habe am Anfang mit dem Gedanken gespielt (Standalone NAS-Kisten sind wahnsinnig teuer) das ganze mit einem RPi aufzuziehen, aber es ist halt einfach Overkill.
Die Platten laufen kaum, und es hat nur ein Rechner darauf Zugriff, also warum der Extraaufwand.
Sowas ziehe ich aber in Erwägung wenn ich von außen Zugriff möchte, ist aber bisher nicht der Fall.
Dann bleibt im Grunde ja eigentlich nur ein Software-RAID auf deinem Windows.
Das ist zumindest das woran ich als erstes gedacht habe und da das bestimmt nicht direkt die beste Lösung ist, dachte ich ich frag mal in die Runde was es da noch so gibt.
-
Das heißt: Wenn irgendwas auf Datenebene völlig schief läuft, dann stelle ich es einfach zu einem gewünschten Zeitpunkt wieder her.
Eine Ransomware auf nem Client kann damit keinen Schaden mehr anrichten, da sie keinerlei Zugriff auf die Snapshot-Ebene hat.
Auch angenehm: Wenn ich beim Programmieren Scheiße baue, kann ich schnell auf den Zustand von vor einer Stunde zurückswitchen - sehr angenehm
So abgesichert gegen eventuelles Löschen oder Viren brauche ich das ja nicht.
Ich verstehe den Hintergedanken, dass man ein bombenfestes Backup hätte, aber es ist so, dass die Platten zu 99% ihrer Lebenszeit aus sind.
Viren sind daher nicht meine größte Sorge, da ich zweifelhafte Software in einer VM teste und mein PC schon befallen/unbenutzbar wäre bevor ich meine Platten wieder anschließe und somit die Platten nicht nutzen könnte, weil Host kaputt.
Ich habe jedoch so meine Zweifel ob man diese unter Windows wirklich produktiv betreiben sollte.
Außerdem ist mir noch nicht ganz klar warum Windows?
Denn dein "NAS" muss doch nicht auf Windows laufen sondern kann doch gleich auf Linux oder BSD laufen.Es zwingt mich keiner Windows zu nutzen, ich könnte mir auch einen Pi anschließen und ein Gehäuse kaufen, und daraus einen NAS machen, und und und....
Das brauche ich aber alles nicht. Tägliche Backups/Snapshots sind für mich überflüssig, da sich die Daten alle paar Wochen/Monate mal ändern wenn ich eine neue Welle an CDs digitalisiere.
Es würde mir reichen wenn ich die 4+6TB dann als Backupplatten nehme und manuell nochmal rüberkopiere (oder ein Sync-Tool nehme und manuell synce) und sie woanders lagere, das wäre vermutlich sogar in meinem Fall die beste Lösung als doppelte Sicherung.
Um das ganze nochmal kurz zusammenzufassen:
Ich will einfach nur Speicher haben, bei dem ich nicht manuell alles doppelt kopieren muss (von dem eben angesprochenen Backup mal abgesehen), und der ausfallsicher ist.
Falls einer der Platten wegen schlechter Manufaktur bereits nach 20 Betriebsstunden den Geist aufgibt, will ich nicht mit leeren Händen darstehen.
Netzwerkzugriff, automatisiertes Backup, Snapshotting ist alles --- für den Moment, und auch sehr wahrscheinlich für die Zukunft --- für mich nicht wichtig, da die Platten sehr selten laufen und sich der Inhalt nur sehr minimal ändert. Es kommen immer nur Daten hinzu, es werden kaum (nie) welche gelöscht.
Daten die ich aktiv nutze werde ich ja auf meiner internen 2TB nochmal haben, sei es Musik oder anderer Kram den ich häufig nutze. Wenn das gelöscht wird ist mir das egal, habs ja noch auf der Externen.
Einfachheit des Systems hat dabei für mich den Vorrang.
Plug-n-Play wäre hier wohl das Zauberwort. Ich hätte das gerne so verwendet, als ob es einfach eine große Festplatte wäre die sich selber gegen Ausfall sichert (Kabel rein, Festplatte sichtbar, Kabel raus, Festplatte weg /// Festplatte kaputt ~> Benachrichtigung bekommen ~> neue einbauen ~> rebuilden).
Windows wird nur verwendet weil es aufm Host-PC läuft, nicht weil ich die Platten mit einem zweiten Computer über Windows managen will.
Mit Software-RAID habe ich bisher absolut Null Erfahrung weshalb meine Fragen eher fundamentaler Natur wären:
Was nützt mir bspw. der Software-RAID von Windows wenn ich ihn nicht an anderen PCs nutzen kann (beim Wechsel des Host), oder ich keine Benachrichtigung bekomme, wenn die Platten degradiert sind?
Kann ich bei vier Platten 2 als eine anzeigen lassen und die anderen zwei dann dementsprechend als RAID1 hinzufügen? Wäre das dann nicht RAID10? Ist es dann empfehlenswerter lieber 2 RAID1 Verbunde laufen zu lassen und die Daten einfach aufzuteilen?
Ich verstehe ja die Sorgen die ihr mir zu vermitteln versucht, aber ich will da die Verhältnismäßigkeit waren.
-
RAID 1 sollte für dich passen. Bevorzuge ich persönlich auch. Ich habe bisher immer Hardware Controller verwendet. Bin ich zwar auch mal auf die Nase gefallen (nach Controller Ausfall, war kein Zugriff auf das RAID-Array mehr möglich) - aber das war vor 15 Jahren und da gab es zum Teil noch unausgereifte Technik.
Kann man die Platten an keinen neuen Controller anschließen? Sind die Informationen auf dem Controller gespeichert oder warum geht alles den Bach runter wenn dieser ausfällt?
Für deinen Anwendungsfall würde ich eher eine Software-RAID-Lösung empfehlen. Die ist zwar etwas langsamer, aber hat den großen Vorteil, dass du nicht an eine spezielle Hardware gebunden bist.
Geschwindigkeiten sind für mich absolut irrelevant. Das höchste was die Platten an Lesezugriffen erfahren ist wenn ich mir eine Serie oder Aufnahmen ansehe, und diese sind im Extremfall 100 Mbit/s, also ~13 MB/s.
Die Schreibgeschwindigkeiten sind auch nicht so wichtig, solange dabei was um die 30-40 MB/s rumkommt ist das vollkommen OK, auch wenn die HDDs 100MB/s+ schaffen sollten.
Speichere alle paar Wochen/Monate mal paar GB drauf, ob die jetzt nun 5 Minuten länger brauchen ist egal.
Windows bietet ja Software RAID an, (ich weiß jetzt grad nur nicht für welche RAID-Typen genau) aber es scheint keine Benachrichtigung zu geben wenn die Platten degradiert sind.
Und auf Eventviewertrickserei bin ich wirklich nicht scharf.
Außerdem kommt noch der Punkt dazu:
Nur mal ein Argument: Für die Paritätsberechnungen kocht jede Software ihr eigenes Süppchen, weshalb eine Widerherstellung unter Windows z. B. nicht funktioniert, wenn du Windows wechselst (z. B. SysRestore, oder wechsel auf anderen Rechner, oder Neuinstallation, usw.).
Es wäre natürlich sehr wünschenswert, gar notwendig, dass ich den Verbund einfach an einen anderen Rechner stöpseln und dort weiternutzen kann falls ich mal mit dem Notebook ran will, oder meinen Host-PC neu aufsetze / wechsle.
RAID 1... na ja, besser als nichts... ist das teuerste RAID.. damit verlierst du über 50% an Speicher... empfehlen würde ich RAID 5... hier eine gute Seite: https://www.storage-insider.de/was-ist-raid-a…-mehr-a-517806/
Über 50%? Ich dachte praktisch genau 50% wenn man noch bisschen Overhead (die paar MB...) vom RAID/Dateisystem abzieht.
Hier würde ich lieber das nehmen was einfacher zu bedienen ist, wo man weniger falsch machen kann.
Wird denn die Paritätsberechnung bei RAID 5 beim Kopieren erledigt und ist beendet wenn der Kopiervorgang beendet ist? Ich möchte nicht einen Kopiervorgang starten und dann was im Hintergrund rödeln haben was dann fehlschlägt wenn ich die Festplatten abschalte.
Wichtig ist aber vor allem, das in Sachen Backup eine gut ausgeklügelte Automatik ins Spiel kommt, da wir Menschen ja gerne dazu neigen, Dinge zu vergessen, auch wenn sie extrem wichtig für uns sind. Deshalb eben nicht nur
RoboCopy und Image des System-Laufwerks erstellen... das ist für mich nämlich die fieseste Arbeit, obwohl ich es gelernt habe und auch gut kann, aber ich hasste es, Windows neu einzurichten, wenn es um mein System geht.Das wird bei mir kaum nötig sind. Die aktuelle nicht-vorhandene Synchronität ist einfach der Faulheit geschuldet, weil die Daten auf mehreren Platten verstreut liegen.
Hätte ich ein RAID 1 Verbund bereits parat, würde ich die Daten, die zu archivieren sind, einfach draufkopiert und das was ich benötige aufm Rechner gelassen.
Die paar GB CDs die ich gerippt habe fehlen drauf, weil eben alles durcheinander ist (hier fehlt ein Coverbild auf der Platte (weil alter Stand), dorthin wurden noch die Rips nicht kopiert, der Ordner wurde umbenannt...).
Aber geplant ist, nach dem Rippen alles direkt draufzuschieben und fertig -- wenn ich so ein System hätte.
Wichtig: RAID ist NICHT das Richtige für Datensicherung!
Zunächst mal sei vereinbart, dass wir von RAID 1 = spiegeln sprechen (und natürlich von RAID Mischversionen, die spiegeln beinhalten). Dabei lautet der Grundsatz: RAID ist eine Ausfallsicherung, KEINE Datensicherung! Viele verwechseln das. Man kann sich das recht einfach vorstellen: Du hast ein RAID 1 mit 2 HDDs, du spiegelst von HDD-1 auf HDD-2. Jetzt löschst du ungewollt Daten auf HDD-1 und schwupps, sind die Daten auf HDD-2 auch weg. Das gleiche gilt für Schäden durch Viren, Ransomware, uvm. Alles was du dir einfängst auf HDD-1 ist auch HDD-2. Wahrscheinlich merkst du das dann erst viel später, weil du ja denkst, du hättest eine Sicherung. Aber leider ist das dannDas ist mir auch klar. RAID ist hier eher Mittel zum Zweck gewesen um automatisiert die Daten gespiegelt zu haben und ich nicht alles doppelt kopieren muss.
Gelöscht wird eigentlich so gut wie gar nichts und war bisher eigentlich kein Problem.
Einmal habe ich 'aus Versehen' meine gesamte D: Festplatte (die Partition) gelöscht, ich weiß den Grund gar nicht mehr, weil ich dachte wenn ich die Partition wieder hinzufüge (ich krieg die Geschichte nicht mehr ganz zusammen) oder rückgängig mache, dass die Daten wieder da wären.
Tja, glücklicherweise konnte ich das meiste mit Data Recovery Software wiederherstellen aber es ist 'ne Menge flöten gegangen... dafür könnt ich heute noch meinen Kopf gegen die Wand hauen.
Aber jetzt könnte man halt wieder damit argumentieren, dass einmal löschen ja reichen würde um seine Daten loszuwerden, aber dann stellt sich hier wieder die Frage nach der Verhältnismäßigkeit wie weit man gewillt ist zu gehen, dass die Daten sicher sind.Für mich reichts, wenn die Daten gespiegelt sind. Eine Löschsicherung wie bei Backups ist nicht notwendig, sonst könnte ich ja gleich die Daten doppelt rüberkopieren und dann jeder Veränderung per Hand nachtragen.
Bei Software habe ich immer die Angst sie nicht korrekt zu verwenden um bspw. das System herunterzufahren, wenn es noch beim Kopieren war, oder das ganze durcheinander zu bringen wenn ich beim Kopieren Daten lösche oder ich nicht weiß ob schon synchronisiert wurde.
Am Anfang überleg dir einfach, was du erreichen willst, was es kosten soll, und wieviel Aufwand du treiben willst. Als Beispiel meine Backupstrategie: In meinem PC sind 3 Festplatten: 1x System (Windows, 250GB SSD), 1 x Daten (2,5" HDD 2GB) und 1x Sicherung (2,5" HDD 2GB).
250GB SSD für Windows aber nur 2GB für Daten und 2GB für Sicherung? Da stimmt doch was nicht
Zusätzlich sichere ich alle 1/2 Jahr auf zwei externe HDDs (je 2GB). Eine davon liegt danach bei mir im Schrank, die andere bei einem Freund an anderer Adresse.
Das ist halt schon Overkill für mich. Wenn mein Host-PC abraucht dann soll das für mich in jedem Fall egal sein. Auf der Boot-Platte sind keine Daten drauf die es wert wären zu speichern, und der Rest läge dann ja auf der 2TB (die darf ruhig mit abrauchen) und auf dem RAID als externes.
Wenn ich schon so paranoid bin, dass ein Blitz mein gesamtes System inkl. Peripherie röstet, dann ziehe ich einfach das Kabel ab wenn ich nicht am RAID bin.
Und sollte es mal so weit kommen, dass das gesamte Haus abraucht, naja, Pech gehabt.
Offsite-Backups hole ich irgendwann nach wenn ich Kohle locker sitzen habe, aber eine 4TB Platte kostet ja schon um die 150€ (je nach dem ob Standard oder 24/7), und da geht schon ordentlich Kohle für das Setup selbst flöten.
-
Da meine Paranoia in letzter Zeit gewachsen ist, dass irgendwann meine Platten den Geist aufgeben möchte ich möglichst fix einen redundanten Speicher einrichten.
Meine aktuelle `Lösung´ sieht wie folgt aus:
In meinem Host-PC habe ich eine 2TB Festplatte, und habe dazu noch zwei externe Festplatten (unterschiedlicher Hersteller), jeweils 4TB und 6TB.
Die 6TB habe ich günstig geschossen, aber die machte schon von Tag-1 an komische Geräusche und der vertraue ich nicht mehr.
Meine Daten (wink wink) sind mittlerweile über 4TB gewachsen und gelagert wird das ganze momentan vollständig auf der 6TB Platte und das Duplikat aufgeteilt auf die 4TB und 2TB interne.
Dabei vergesse ich aber teilweise für mehrere Wochen / Monate alle Platten synchronisiert zu halten indem ich mit WinMerge schaue welche Daten ich noch nicht rüberkopiert habe.
Wie ihr euch denken könnt ist das alles andere als suboptimal, da ich einige Ordner neu benenne oder aktualisiere und das nicht direkt auf die andere Platte synchronisiert wird.
Dafür möchte ich auch keine Skripte schreiben, weil ich denke, dass es auch intelligenter zu lösen wäre.
Ich spiele mit dem Gedanken mir ein vierfaches externes Plattengehäuse wie folgendes zu holen (das ist nur JBoD, kein HW-Raid): https://geizhals.de/raidsonic-icy-…hloc=at&hloc=de
Die Platten wollte ich mir dann einzeln bestellen und je nach Passgröße 4x8TB oder 4x10TB verbauen. Dabei möchte ich 16~20TB Speicher haben (theoretisch täte es die Hälfte auch, da schaue ich lieber nach dem Preis der HDDs) und die restliche Kapazität (wäre dann halb halb) als Redundanzt/Mirror nutzen.
Allerdings habe ich von RAID, bis auf die Bezeichnung und wie sie funktionieren, keine Erfahrung.
Sollte ich lieber einen HW-Raid-Controller nehmen? Tut es der Windows Software RAID-1 auch? Kriege ich irgendwie eine Warnung wenn eine der Platten im Verbund degradiert ist?
Muss ich auf etwas spezielles achten? Kann ich unter Windows auch ZFS verwenden um Bitrotting zu berücksichtigen?
Im Grunde möchte ich doch nur mein Zeugs nochmal auf einer anderen Platte haben um im Fall eines Ausfalls einfach den Verbund aufzulösen und die funktionierende Platte dann auf eine neue frische direkt zu spiegeln.
Das sind zum größten Teil Daten die ich nur extrem selten verwende (also wirklich sehr selten, die externen Platten schmeiße ich alle paar Wochen für ein paar Stunden (wenn es hochkommt...) an).
Daten die ich häufig nutze werde ich auf der 2TB in meinem Rechner nochmal lagern.
Cloud-basierte Lösungen fallen ausnahmslos im vorhinein weg. 1. will ich das persönlich nicht, 2. geben es deutsche Neulandbambusleitungen nicht her (zumindest nicht bei mir).
Wenn ihr Erfahrungen teilen wollt oder Vorschläge habt, haut sie raus!
-
In der Standard-Messagebox geht das nicht - dafür müsste man sich eine eigene GUI-MessageBox erstellen.
Och wie gerne würde ich einfach ein scheußliches Proof-Of-Concept basteln nur um dir zu zeigen, dass es doch möglich ist, aber ich weiß ja wie du das gemeint hast
Der TE wollte übrigens mMn. einen Teil des Strings blinken lassen, das ist mit dem Standardlabel nicht möglich, man müsste den String praktisch in ein eigenes Control packen und dieses dann färben, oder direkt ein anderes Control nehmen.
-
Jetzt bleibt nur noch die Frage wo das ganze stattfinden soll. In einem fremden Programm, in der Konsole, in einer GUI...
Bitte nimm dir beim Erstellen eines Threads doch ein paar Minuten mehr Zeit und schildere dein Problem etwas ausführlicher und gib uns gleich ein Beispiel mit, damit wir, und insbesondere du, keine Zeit an einem XY-Problem verschwenden.