Dupletten suchen (bitweise)

Unser allgemeines Manjaro Linux Diskussionsforum.
Benutzeravatar

Themen Author
Siliziumfuchs
Forum Kenner
Forum Kenner
Beiträge: 217
Registriert: Mittwoch 23. Februar 2022, 22:34
Wohnort: Hamburg
CPU: Intel® Core™ i9-11900K
GPU: NVIDIA GeForce RTX 3070
Kernel: 5.15.76-1-MANJARO (64-bit)
Desktop-Variante: KDE-Plasma 5.26.x
GPU Treiber: NVidia 520.56.06
Hat sich bedankt: 19 Mal
Danksagung erhalten: 23 Mal

Dupletten suchen (bitweise)

#1

Beitrag von Siliziumfuchs »

Moin allerseits,

letztens hatte ich einige Dateien von der Datensicherung vom Alt-Rechner hier auf den Manjaro-Rechner kopiert. Dazu hätte ich wohl besser die Kommandoziele nehmen sollen, hatte es aber einfach auf dem KDE-Desktop mit der Maus rüber gezogen.

Nun würde ich gerne nachträglich die Dateien bzw. Verzeichnisse von der Quelle mit den Verzeichnissen im Ziel vergleichen. Wenn sie inhaltlich identisch sind, dann sollten sich ja wohl keine Bitfehler bei der Übertragung eingeschlichen haben.

Nur womit mache ich das am geschicktesten und gibt es da auch ein schönes (KDE-)Programm mit GUI für?
Beim "rmlint-shredder" (bzw. Shredder Duplicate Finder) gehen offenbar meine Vorstellungen der Bedienung und die Vorstellungen der Entwickler unterschiedliche Wege. Anders formuliert: ich habe es bisher nur kurz ausprobiert und bin damit nicht klar gekommen.

Deswegen erst mal nur die Frage: welche Programme würdet ihr empfehlen?

Ernsthafte Fragen nach der Benutzung/Bedienung der empfohlenen Programme folgen dann vielleicht später.
Benutzeravatar

gosia
Forum Held
Forum Held
Beiträge: 2232
Registriert: Dienstag 24. Mai 2016, 13:33
CPU: Intel i5-3210M
GPU: Intel HD 4000
Kernel: 4.19
Desktop-Variante: Openbox
GPU Treiber: i915
Hat sich bedankt: 20 Mal
Danksagung erhalten: 495 Mal

Re: Dupletten suchen (bitweise)

#2

Beitrag von gosia »

Hallo Siliziumfuchs,
kannst ja mal Czkawka probieren und dann berichten ;)
https://github.com/qarmin/czkawka
https://github.com/qarmin/czkawka/blob/ ... ruction.md

viele Grüsse gosia
Benutzeravatar

Themen Author
Siliziumfuchs
Forum Kenner
Forum Kenner
Beiträge: 217
Registriert: Mittwoch 23. Februar 2022, 22:34
Wohnort: Hamburg
CPU: Intel® Core™ i9-11900K
GPU: NVIDIA GeForce RTX 3070
Kernel: 5.15.76-1-MANJARO (64-bit)
Desktop-Variante: KDE-Plasma 5.26.x
GPU Treiber: NVidia 520.56.06
Hat sich bedankt: 19 Mal
Danksagung erhalten: 23 Mal

Re: Dupletten suchen (bitweise)

#3

Beitrag von Siliziumfuchs »

Also auf der Seite von Czkawka habe ich noch Hinweise auf FSLint und Dupeguru gefunden. Wobei bei der FSLint-Webseite fällt dann gleich dieses Update ins Auge:
[Update: Please see the czkawka project, a rust reimplementation,
which is more actively maintained, and easier to install on modern systems.]
;)
Benutzeravatar

Themen Author
Siliziumfuchs
Forum Kenner
Forum Kenner
Beiträge: 217
Registriert: Mittwoch 23. Februar 2022, 22:34
Wohnort: Hamburg
CPU: Intel® Core™ i9-11900K
GPU: NVIDIA GeForce RTX 3070
Kernel: 5.15.76-1-MANJARO (64-bit)
Desktop-Variante: KDE-Plasma 5.26.x
GPU Treiber: NVidia 520.56.06
Hat sich bedankt: 19 Mal
Danksagung erhalten: 23 Mal

Re: Dupletten suchen (bitweise)

#4

Beitrag von Siliziumfuchs »

dupeGuru und FSLint bekommen von mir schon mal einen kleinen Pluspunkt: beide sind offenbar größtenteils in Python programmiert. Da könnte ich mir die Sourcen runterladen, Fehler eventuell selbst finden und beheben und insgesamt an der einen und anderen Stelle vermutlich was lernen.

Bei Czkawka ist das mit Rust als Programmiersprache nun ganz was anderes.

Dafür wird dann bei FSLint wieder ein Punkt abgezogen: es läuft unter Python2. Ich bin zwar selbst erst sehr spät auf Python3 umgestiegen, aber Python2 ist nun auch bei mir tot....

Soviel zur (mehr oder weniger) Theorie. Der praktische Test folgt später...

Benutzer 1635 gelöscht

Re: Dupletten suchen (bitweise)

#5

Beitrag von Benutzer 1635 gelöscht »

Moin Moin,
hast Du Dir einmal fdupes oder rmlint angesehen? Die Programme liegen in den Repos.
Ich kenne sie beide nicht, da ich anders verfahre.

Auch ein guter Hinweis. https://de.comp.os.unix.apps.kde.narkiv ... ettensuche

Nachtrag: Es gibt Situationen, da kann man auf die Nutzung des Terminals nicht verzichten.
Je eher man sich an das Terminal gewöhnt, umso eher wird man sich mit Linux anfreunden.

Gruß

Günther
Erfahrenes Foren Mitglied
Erfahrenes Foren Mitglied
Beiträge: 96
Registriert: Mittwoch 23. Juni 2021, 00:19
CPU: AMD Ryzen 7 7800X3D
GPU: GeForce RTX 4070
Kernel: Manjaro, stable Kernel
Desktop-Variante: KDE Plasma
GPU Treiber: NVIDIA proprietär
Hat sich bedankt: 23 Mal
Danksagung erhalten: 12 Mal

Re: Dupletten suchen (bitweise)

#6

Beitrag von Günther »

dupeGuru kann verschiedene Dateien mit verschiedenen Kriterien suchen und ähnliche Dateien finden. Es funktioniert sehr gut, meiner Meinung nach.

https://dupeguru.voltaicideas.net/
oder auch
https://github.com/arsenetar/dupeguru/
oder auch
https://aur.archlinux.org/packages/dupeguru

Benutzer 1635 gelöscht

Re: Dupletten suchen (bitweise)

#7

Beitrag von Benutzer 1635 gelöscht »

Moin Moin,
Günther hat geschrieben: ↑Sonntag 10. April 2022, 21:31 dupeGuru kann verschiedene Dateien mit verschiedenen Kriterien suchen und ähnliche Dateien finden. Es funktioniert sehr gut, meiner Meinung nach.

https://dupeguru.voltaicideas.net/
oder auch
https://github.com/arsenetar/dupeguru/
oder auch
https://aur.archlinux.org/packages/dupeguru
Allerdings nur als Fremdquelle installierbar.
Benutzeravatar

Themen Author
Siliziumfuchs
Forum Kenner
Forum Kenner
Beiträge: 217
Registriert: Mittwoch 23. Februar 2022, 22:34
Wohnort: Hamburg
CPU: Intel® Core™ i9-11900K
GPU: NVIDIA GeForce RTX 3070
Kernel: 5.15.76-1-MANJARO (64-bit)
Desktop-Variante: KDE-Plasma 5.26.x
GPU Treiber: NVidia 520.56.06
Hat sich bedankt: 19 Mal
Danksagung erhalten: 23 Mal

Re: Dupletten suchen (bitweise)

#8

Beitrag von Siliziumfuchs »

...mal eine (fast) ganz andere Frage: auf dem Desktop mit der Maus ein Verzeichnis oder Dateien von A nach B zu kopieren ist ja 'ne normale Drag&Drop-Aktion wie man sie von allen Desktops seit Jahrzehnten kennt (ob nun unter Linux oder Windows oder auf dem Mac).

Aber das was bei so einer Drag&Drop-Aktion ausgelöst wird, das kann man ja prinzipiell beliebig programmieren. Was macht also hier mein KDE-Desktop wenn ich mit der Maus Dateien von A nach B kopiere? Einfach nur die Daten von der Quelle lesen und in die Zielposition speichern oder wird nach dem Schreiben der Zieldatei noch über irgendeinen Hashcode das Ziel und die Quelle miteinander verglichen?

Gut, mit rsnyc muss ich mich sowieso noch beschäftigen. Die drei Raspis (alle ohne GUI) hier sollen zukünftig ihre Daten gegenseitig sichern und meine Benutzerdaten vom Manajaro-Rechner möchte ich auch noch bei den Raspis abladen.

Aber das ist doch eigentlich unsinnig, wenn man schon eine GUI hat, dann zum kopieren von Daten/Dateien auf die Kommandozeile auszuweichen, weil die GUI nicht so programmiert ist, dass die Daten nach dem kopieren noch auf Gleichheit zwischen Quelle und Ziel verglichen werden.

[BTW] ich kann hier beim KDE-Plasma-Desktop alles mögliche und sehr viel unmögliches konfigurieren... gibt es da auch eine Möglichkeit eben das Verhalten beim Kopieren von Daten zu beeinflussen? Eigentlich mag ich bei KDE ja auch die Möglichkeit "dass man da alles mögliche konfigurieren kann", anderseits ist das Problem bei KDE "dass man da alles mögliche konfigurieren kann". ;) Ich wette, damals (so vor 20 Jahren) hatte KDE nicht die Konfigurationsmöglichkeiten die es jetzt hat. ;D
Benutzeravatar

Themen Author
Siliziumfuchs
Forum Kenner
Forum Kenner
Beiträge: 217
Registriert: Mittwoch 23. Februar 2022, 22:34
Wohnort: Hamburg
CPU: Intel® Core™ i9-11900K
GPU: NVIDIA GeForce RTX 3070
Kernel: 5.15.76-1-MANJARO (64-bit)
Desktop-Variante: KDE-Plasma 5.26.x
GPU Treiber: NVidia 520.56.06
Hat sich bedankt: 19 Mal
Danksagung erhalten: 23 Mal

Re: Dupletten suchen (bitweise)

#9

Beitrag von Siliziumfuchs »

Wie weiter oben (viewtopic.php?p=26756#p26756) versprochen, hier der Testbericht aus der Praxis:

[Wobei der Bericht wohl kürzer ausfallen wird als ich ursprünglich mal dachte. Es hat sich nämlich eine ganz andere Lösung für mein Problem ergeben.]

Zur Installation mit Pamac:
Obwohl beide Programme aus dem AUR installiert wurden, hatte das bei mir völlig problemlos geklappt. Dupeguru als Python-Programm installierte sich sehr zügig, viel Python-Zeug ist ja eh schon vorhanden wenn man sich eine zeitgemäße LinuxDistri installiert und ein paar restliche Sachen hatte ich vielleicht schon durch andere Installationen auf dem System.
Bei Czkawka brauchte der Rechner etwas länger weil er da erstmal eine wohl mehr oder weniger komplette Rust-Entwicklungsumgebung hochziehen musste. Bibliotheken und so weiter...

Bemerkenswertes zur Benutzung (ich habe beide Programme nur kurz getestet und ohne einen Blick in die Handbücher. Kann also sein dass ich hier völligen Bockmist schreibe, aber so hat es sich mir beim ausprobieren dargestellt):
- Bei Dupeguru kann man wohl ein oder mehrere Verzeichnisse zur Referenz erklären und nach dem großen Vergleichen werden die ganzen Dateien in einer langen Liste geführt und nur diejenigen Dateien, die aus Nicht-Referenz-Verzeichnissen kommen, bekommen vorne ein kleines Markierungskästchen in dem man sie mit einem Haken markieren kann (oder auch keinen Haken setzen kann). Mit den markierten Dateien kann man dann diverses machen: kopieren, verschieben (in andere Verzeichnisse oder in den Papierkorb),...

- Bei Czkawka gibt es nach dem ganzen Vergleichen auch eine Liste, aber hier hat jede Datei ein Markierungskästchen! Auch die aus dem/den Referenzverzeichnis(sen)! Nur sind die Kästchen vor den Referenzdateien tot und dort lassen sich keine Markierungen setzen. IMHO für mich völlig überflüssig, solche funktionslosen Kästchen. Beim Vergleichen hatte Czkawka 5972 Duplikate gefunden. Die alle per Hand zu markieren ist völlig illusorisch. Daher gibt es die Möglichkeit nach einigen vorgegebenen Kriterien (z.B. "Select one oldest", "Select one newest") die Dateien zu markieren und man kann auch mit "Select custom" anhand von Pfad- und Dateinnamen eine Selektion vorgeben. So scheint zumindestens bei "Select custom" der Plan zu sein. Bei mir funktioniert das nicht! Bei den Dateien, die aus einem bestimmten Unterverzeichnis kommen, eine Markierung zu setzen: will nicht, tut nicht... :( auch die angezeigten Beispiele funktionieren hier nicht.

Zur angezeigten Dateiliste von Czkawka: es gibt die Spalten "Size", "File Name", "Path". Nun wollte ich mal wissen wonach sich das Programm bei der Selektion "Select one oldest" richtet (z.b. auf welchen Timestamp da eigentlich geachtet wird). Dafür wollte ich die Liste um einige weitere Spalten erweitern. Geht nicht, gibt anscheinend keine Möglichkeit die angezeigten Spalten zu ändern. :(

Also hier scheinen meine Erwartungen in Sachen Bedienung und die Vorstellungen der Entwickler stark voneinander abzuweichen.

- zurück zu Dupeguru: hier kann man die angezeigten Spalten variieren. Aber ich meine ich hätte da noch eine Aktion gefunden die ich bei Dupeguru machen wollte und die dort nicht möglich war. Ich weiß jetzt leider nicht mehr was das war.

Testergebnis:
wie schon weiter oben im andern Posting geschrieben, ziehe ich Programme die in Python geschrieben sind (Dupeguru) Programmen in Rust (Czkawka) [noch] vor. Ändert sich vermutlich, falls ich jemals dazu komme Rust zu lernen. Von daher wird Czkawka hier als erstes von der Platte fliegen.... und Dupeguru wohl kurze Zeit später.

Problemanalyse und Lösung:
Für das was ich hier derzeit eigentlich machen will, erscheint mir so eine Liste in der die Dateinamen untereinander stehen extrem unpraktisch und damit sind dann beide Programme raus....
Ich habe dann überlegt wie ich das Problem nun unter Windows angegangen wäre: da hätte ich TotalCommander (https://www.ghisler.com/) gestartet [ist IMHO von der Bedienung eine mittlere Katastrophe, aber ich bin damals unter DOS auch nicht mit dem NortonCommander sozialisiert worden. Keine Ahnung was ich damals benutzt hatte, der war es jedenfalls nicht.] und vom TotalCommander die Funktion "Verzeichnisse synchronisieren" genutzt.

Dort aber nur den ersten Schritt ("Vergleichen") und nichts synchronisiert. Nach dem vergleichen hat man dann in prinzipiell in zwei Spalten auf der einen Seite die Dateien des einen Verzeichnisses und auf der andere Seite die vom anderen Verzeichnisse.
Und darüber kann man dann über mehre Schalter auswählen was unten in den beiden Spalten angezeigt werden soll: Dateien die nur im linken Verzeichnis existieren/ Dateien die nur rechts rumliegen / Dateien die identisch sind / Dateien die sich voneinander unterscheiden

Zum Beispiel sieht das dann so aus:
60
Da hat das Programm insgesamt 153882 Dateien gefunden, davon sind 117794 links und rechts vorhanden mit gleichem Namen und inhaltlich identisch und im rechten Verzeichnis gibt es noch 36088 Dateien die eben nur dort rechts rumliegen.

Diese angezeigte Liste kann man dann eben filtern, so das z.B. nur die identischen Dateien angezeigt werden. Dann die gewünschten Dateien markieren und dann gibt es da ein Kontextmenü in dem man nicht festlegen kann ob die markierten Dateien nun von Links nach rechts oder von rechts nach links kopiert werden sollen (was dann im nächsten Schritt übe den "Synchronisieren" Knopf [rechts oben] gemacht würde), sondern man kann auch aus dem Kontextmenü die markierten Dateien auf der linken Seite löschen oder auf der rechten Seite löschen oder auf beiden Seiten löschen.

Wenn jemand ein natives Linux-Programm kennt mit entsprechender Darstellung und Funktion: bitte melden! Möchte ich mir ansehen!


Nun habe ich folgendes gemacht: TotalCommander runtergeladen, dann PlayOnLinux und WineTricks (mit abhängigen Dateien) installiert, in der zweiten Runde musste ich noch wine-mone nachinstallieren (bei der Gelegenheit habe ich auch noch wine-gecko installiert, wird vielleicht zukünftig noch von irgendeinem Windows-Programm benötigt) und dann habe ich die Installation von TotalCommander durchlaufen lassen.

Danach dann TotalCommander gestartet, meine Verzeichnisse miteinander verglichen und das Bild von da oben gemacht. :D

Nun habe ich hier also meinen neuen Linux-Rechner und kann auf dem meine Aufgaben mit den Windows-Tools machen, die ich von meinem defekten Windows-Rechner gewohnt bin. [Nun gut, bis jetzt habe ich hier nur ein Windowsprogramm das hier unter Linux läuft. Aber ich habe da noch zwei weitere Kandidaten die ich mal ausprobieren muss.]

Also was sind schon Betriebssysteme... ob nun Linux oder Windows: das Programm läuft... ^-^
habe ich mir vor zwanzig Jahren nicht träumen lassen dass das so einfach funktioniert 8)
Benutzeravatar

Daemon
Forum Held
Forum Held
Beiträge: 959
Registriert: Freitag 22. Dezember 2017, 14:17
CPU: 6082
GPU: wtf
Kernel: pre-linux
Desktop-Variante: pre-linux
GPU Treiber: hab keine
Hat sich bedankt: 21 Mal
Danksagung erhalten: 166 Mal

Re: Dupletten suchen (bitweise)

#10

Beitrag von Daemon »

Für sowas gibt es rsync, dafür gibt es sogar eine, oder mehrere GUIs.
Siamo con il nostro Dio Scuro
Benutzeravatar

Themen Author
Siliziumfuchs
Forum Kenner
Forum Kenner
Beiträge: 217
Registriert: Mittwoch 23. Februar 2022, 22:34
Wohnort: Hamburg
CPU: Intel® Core™ i9-11900K
GPU: NVIDIA GeForce RTX 3070
Kernel: 5.15.76-1-MANJARO (64-bit)
Desktop-Variante: KDE-Plasma 5.26.x
GPU Treiber: NVidia 520.56.06
Hat sich bedankt: 19 Mal
Danksagung erhalten: 23 Mal

Re: Dupletten suchen (bitweise)

#11

Beitrag von Siliziumfuchs »

Die dann die beiden Schritte von rsnyc ("vergleichen von zwei Verzeichnissen" und "löschen und/oder kopieren von beliebigen Dateien") aufteilen und getrennt ermöglichen?

Bei dem wenigen das ich bis jetzt mit rsync gemacht hatte, da wurden gleich beide Schritte zusammen ausgeführt. Aber kann gut sein dass ich da bei den verschiedenen Optionen von rsync verschiedene interessante Optionen übersehen habe. Sind ja doch so einige... ;)

Zu den GUI: wenn man da erstmal nur den Schritt "Verzeichnisse vergleichen" ausführen kann und dann das Ergebnis vom Vergleich präsentiert bekommt (um dann später zu entscheiden was mit welche Datei auf welcher Seite passieren soll), dann her damit. Da muss ich dann noch mal auf die GUIs schauen. Mein erster flüchtiger Eindruck war, das man da über die GUI die verschiedenen Optionen von rsync gezielt auswählen kann (auch wichtig und schön).

Aber ein Punkt bei dem es bei rsync im Vergleich zum TotalCommander IMHO wirklich hakt: nach dem Vergleich steht nicht fest welche Seite nun Quell und welche Ziel ist. Da kann ich beim TotalCommander für jede einzelne Datei festlegen ob die von Links nach rechts oder rechts nach links kopiert werden sollen oder ob die links oder rechts (oder beidseitig) gelöscht werden soll.
Benutzeravatar

Daemon
Forum Held
Forum Held
Beiträge: 959
Registriert: Freitag 22. Dezember 2017, 14:17
CPU: 6082
GPU: wtf
Kernel: pre-linux
Desktop-Variante: pre-linux
GPU Treiber: hab keine
Hat sich bedankt: 21 Mal
Danksagung erhalten: 166 Mal

Re: Dupletten suchen (bitweise)

#12

Beitrag von Daemon »

Ich muss zugeben, dass ich noch eine GUI für rsync benutzt habe. Kenne daher nicht die Auswahl oder was die überhaupt wie machen.
Müsste mich selbst erst wieder reinlesen in rsync, habe das schon länger nicht mehr benutzt.
Siamo con il nostro Dio Scuro
Benutzeravatar

gosia
Forum Held
Forum Held
Beiträge: 2232
Registriert: Dienstag 24. Mai 2016, 13:33
CPU: Intel i5-3210M
GPU: Intel HD 4000
Kernel: 4.19
Desktop-Variante: Openbox
GPU Treiber: i915
Hat sich bedankt: 20 Mal
Danksagung erhalten: 495 Mal

Re: Dupletten suchen (bitweise)

#13

Beitrag von gosia »

Hallo Siliziumfuchs,
leider darf ich aus unklaren Gründen deinen Screenshot nicht sehen

Bild

aber wenn ich deinen Text so überfliege, scheint es mir, dass meld ähnliches kann wie der Totalcommander, nur eben ohne wine ;)
https://meldmerge.org/
ich kann z.B. zwei verzeichnisse durchsuchen und nur die unterschiedlichen (geänderten) Dateien anzeigen lassen

Bild

oder nur die "neuen", das heisst, nur die, die in einem Verzeichnis existieren und im anderen nicht

Bild

und dann wahlweise nach rechts/links kopieren/verschieben oder löschen.

Automatisiert wären solche Aufgaben auch mit Unison möglich
https://www.cis.upenn.edu/~bcpierce/unison/
https://wiki.archlinux.org/title/Unison
zumindest wenn ich richtig verstanden habe, was Du möchtest.

viele Grüsse gosia
Benutzeravatar

Themen Author
Siliziumfuchs
Forum Kenner
Forum Kenner
Beiträge: 217
Registriert: Mittwoch 23. Februar 2022, 22:34
Wohnort: Hamburg
CPU: Intel® Core™ i9-11900K
GPU: NVIDIA GeForce RTX 3070
Kernel: 5.15.76-1-MANJARO (64-bit)
Desktop-Variante: KDE-Plasma 5.26.x
GPU Treiber: NVidia 520.56.06
Hat sich bedankt: 19 Mal
Danksagung erhalten: 23 Mal

Re: Dupletten suchen (bitweise)

#14

Beitrag von Siliziumfuchs »

Also das mit den Screenshots hatten wir doch kürzlich schon in einer anderen Diskussion. Da hatte sich das Problem dann irgendwann von selbst aufgelöst...

Zu "meld": der Name kam mir eben ein wenig vertraut vor... [kurze Zeit später] Ach, das... das hatte ich mir vor einigen Tagen schon mal vorsorglich installiert, aber noch nicht ausprobiert. Werde ich mir mal nachher genauer anschauen. Danke!

Günther
Erfahrenes Foren Mitglied
Erfahrenes Foren Mitglied
Beiträge: 96
Registriert: Mittwoch 23. Juni 2021, 00:19
CPU: AMD Ryzen 7 7800X3D
GPU: GeForce RTX 4070
Kernel: Manjaro, stable Kernel
Desktop-Variante: KDE Plasma
GPU Treiber: NVIDIA proprietär
Hat sich bedankt: 23 Mal
Danksagung erhalten: 12 Mal

Re: Dupletten suchen (bitweise)

#15

Beitrag von Günther »

Hallo Siliziumfuchs,

wenn du einen opensource, fast 1:1 Clon, von TotalCMD suchst, dann kann ich dir nur DoubleCommander empfehlen.

Es besitzt auch dessen "Verzeichnisse synchronisieren" Funktion, unterstützt die Plugins* etc. Ich arbeite seit Jahren erfolgreich damit.

*Unter Linux muss man allerdings diese etwas anpassen, siehe Wiki

Siehe Link bzw. in den offizielen Softwarequellen von Manjaro:
https://doublecmd.sourceforge.io/

:)
Dateianhänge
doublecmd_compare.png
doublecmd_compare.png (140.72 KiB) 2628 mal betrachtet
Antworten

Zurück zu „Manjaro Linux Allgemeine Diskussion“