Απώλεια δεδομένων μετά από διπλό συγχρονισμό Nextcloud

Φιλτατε @m01, ευχαρίστως να σου εξηγήσω τι κατάλαβα από τα πειράματά μου.

Ας τα πάρουμε από την αρχή. Το sync για το οποίο το Nextcloud είναι μία από τις καλύτερες και ευκολότερες λύσεις, γίνεται, μεταξύ του Nextcloud server που τρέχει σε docker (ή και κανονικά σε server με Apache και PHP ) και σε ένα Desktop μηχάνημα. Τώρα το Nextcloud έχει και Desktop client που τρέχει σε Windows, Mac ή και GNU/Linux και αυτό που κάνει είναι να κοιτάζει αν τα περιεχόμενα του φακέλου (στο Desktop) στον οποίον πάνε τα δεδομένα που γίνονται sync έχουν αλλάξει (και με το αλλάξει εννοώ είτε καινούργια αρχεία είτε αρχεία που έχουν σβηστεί ή αλλάξει θέση ή και περιεχόμενο) και συνδέεται αυτόματα με τον Nextcloud server και ανεβάζει τα καινούργια ή αλλαγμένα αρχεία αλλά και σβήνει από τον server τα αρχεία που σβήνουμε από τον φάκελο του Desktop έτσι ώστε ΌΤΙ έχουμε στον ένα φάκελό του Desktop να υπάρχει πανομοιότυπα και στον server.

Δηλαδή με λίγα λόγια 1-προς-1 αντίγραφο του ενός στο άλλο. Και αυτό το σύστημα δουλεύει καλά όταν έχουνε έναν server και όσα μηχανήματα θέλουμε. Μπορούμε επίσης να έχουνε για κάθε Desktop μηχάνημα έναν συγκεκριμένο φάκελο στον server για να μην σβήσουμε κατά λάθος αρχεία που χρειαζόμαστε αλλά όχι σε όλα τα μηχανήματά μας.

Όταν όμως έχουμε ένα Desktop Client και θέλουμε να κάνουμε sync με 2 servers ταυτόχρονα, όταν σετάρουμε το σύστημα αν ο 2ος server δεν περιέχει τά ίδια ακριβώς αρχεία σε αριθμό και θέση και περιεχόμενο με τον πρώτο server το client θα κάνει την λογική κίνηση και θα αλλάξει τα περιεχόμενα του φακέλου στον Desktop. Δηλαδή αν ο 2ος server είναι κενός τότε το Nextcloud Desktop το πρόγραμμα δηλαδή που τρέχει στο Desktop θα σβήσει ότι αρχεία υπάρχουν ήδη στον φάκελο του. Η δεύτερη κίνηση που θα κάνει εφόσον το πρόγραμμα θα δει αλλαγές στην φάκελο αυτόν είναι να ενημερώσει τον 1ο server που είναι συνδεδεμένος στον ίδιο φάκελο με τον 2ο server και έτσι θα χαθούν τα δεδομένα. Το πρόγραμμα έχει δικλίδες ασφαλείας αλλά συνήθως για να γίνει πιο αυτόματα η μεταφορά συνήθως οι χρήστες τις βγάζουν.

Το πρόβλημα είναι ότι κανένας δεν είπε στον @fragos.george ότι και οι δύο servers θα πρέπει να είναι ακριβώς πανομοιότυποι για να μην γίνει αυτή η στραβή.

Μια άλλη λύση είναι να γίνει χρήση διαφορετικών προγραμμάτων όπως το FreeFileSync (αν βεβαία υποστηρίζει το WebDAV πρωτόκολλο) ή ακόμα και το file manager του DE που χρησιμοποιεί ο χρήστης στο GNU/Linux, για να γίνεται μόνο από την μια μεριά συγχρονισμός και με περισσότερο έλεγχο από τον χρήστη.

Sorry για το σεντόνι. Ελπίζω να μην σε μπέρδεψα περισσότερο. Ρώτα με ότι θες και ότι χρειάζεσαι.

Εδώ επίσεις έχω ενα screenshot με τους 2 servers μου και το Desktop για να δεις και τι βγάζει το Nextcloud Desktop

Φίλτατε @GNUTechie

Ειλικρινά σε ευχαριστώ για την εξήγηση.
Όπως έχεις καταλάβει είμαι λίγο pre-historic tui χρήστης. Τέσπα δικό μου πρόβλημα αυτό.

Άρα εδώ (στη δική μου γλώσσα) έχουμε κάτι σαν rclone με gui. Και two-way syncing.
Και αν είναι έτσι, στενοχωριέμαι πολύ για τον @fragos.george .
Δύσκολα, ίσως όχι ακατόρθωτα, θα κάνει ανάκτηση data. Κρίμα από τον Θεό ρε γαμώτο.

Πέραν των data recovery methods που όλοι μας έχουμε αναφέρει, θα ρίξω μια ματιά, μπας και βρώ πως το rclone διαχειρίζεται τέτοιες καταστάσεις και αν μπορεί να γίνει retrieved ή restored.
Ζόρι.

Και πάλι σε ευχαριστώ.

Δεν τρέχει τίποτα ότι σε βολεύει :slight_smile: Έχω κάνει από MSX με κασετόφωνο και MSDOS σε Amstrad PC 1640 με διπλά floppies δεν με λες και φρέσκο εμένα :slight_smile:

Ναι η περιγραφη σου ειναι σωστη.

Ναι. Εγώ θα έλεγα στον @fragos.george να βγάλει τον SSD από το pi4 να το κοτσάρει σαν read-only σε ένα PC με δεύτερο SSD παρόμοιας χωρητικότητας με τον εξωτερικό του pi4 και να προσπαθήσει να ανακτήσει δεδομένα με το testdisk πρώτα και μετά με το photorec. Ίσως ανακτήσει πολλά από τα δεδομένα του αν είναι τυχερός.

Το ίδιο πρότεινε και ο @nikaskonstantinos αλλά να προσθέσω ότι αυτή η διαδικασία θα πάρει καμπόσο χρόνο οπότε ίσως Σαββατοκύριακο που να μην έχει και πολύ δουλειά.

Ρίξε κάνα δυο VM για να αντιγράψεις την κατάσταση και δες τι παίζει με το rclone. Δοκίμασε επίσης το DD που ίσως κάνει καλύτερη δουλειά στο να αντιγράψει τον “κατεστραμμένο” δίσκο.

Καλά πειράματα :slight_smile:

Γι’αυτό είμαστε όλοι μας εδω :slight_smile: Το ένα χέρι νύβει το άλλο και τα δυό το πρόσωπο :slight_smile:

Παίζει κιόλας @GNUTechie να έχει btrfs με αυτόματο snapshot

Ο πρώτος μου υπολογιστής αρχές ‘80. Εννοείται με κασετόφωνο. Προγραμματισμός σε basic.

Μα… αυτό ακριβώς έγινε: το Nextcloud Desktop Client έκανε τη ζημιά!!!

Η εφαρμογή αυτή ΦΥΣΙΚΑ και δεν είναι απαραίτητη, εφόσον τον συγχρονισμό του πηγαίου καταλόγου τον κάνει, ας πούμε, ένας σέρβερ (Nextcloud, SyncThing, ή ό,τιδήποτε άλλο!) εγκατεστημένος εκεί! Δεν ήθελα να “μπλέξω” με έξτρα σέρβερ, γι’ αυτό χρησιμοποιούσα για χρόνια την εφαρμογή, ώσπου έγινε το κακό!!!

Παιδιά, ξεκίνησα photorec σε κάθε ένα Raspberry με τον δικό του SSD έκαστο! Δεν έκανα αυτό που προτείνει ο GNUTechie, για δυο λόγους: πρώτον, δεν έχω άλλον διαθέσιμο δίσκο (πόσο μάλλον μεγαλύτερο, από τον μεγαλύτερο εκ των δυο υπαρχόντων!!!) και τρίτον, παιδιά, και οι δυο SSD’s είναι άδειοι: περιέχουν μόνο έναν κενό κρυφό κατάλογο Lost and Found και ούτε ένα άλλο αρχείο, κρυφό ή φανερό! Υπάρχει περίπτωση τα “διεγραμμένα”/”χαμένα” αρχεία να μην φαίνονται στον χρήστη, αλλά να μπορεί να τα βρει το testdisk/photorec…; Όπως και νά ‘χει, τώρα εκτελούνται δυο photorec και σε 30 ώρες, περίπου, θα δούμε το αποτέλεσμα!!!

Αυτος ηταν ο δικός μου MSX μεχρι που τα κλάταρε… και αν βρω το ιδιο στο ebay το τσιμπησα με την μία :slight_smile:

Θα σου επιστρέψει τα αρχεία αλλά χωρίς την αρχική τους ονομασία. Ο λόγος που έπρεπε χρησιμοποιήσεις άλλους δίσκους ήταν για να μην καταστραφούν δεδομένα. Όπως και να χει, υπομονή και καλή επιτυχία :crossed_fingers:

Φίλοι, τελείωσε η διαδικασία ανάκτησης photorec για έναν εκ των δυο SSD’s. Έβγαλα τον δίσκο από το Raspberry Pi 4 (εκεί έγινε η ανάκτηση) και τον σύνδεσα σε USB στο πισί μου. (Καλά δεν έκανα;). Ο κατάλογος με τα αποτελέσματα του phororec περιέχει 885(!!!) υποκαταλόγους με όνομα recup_dir.1 έως recup_dir.885 συν ένα αρχείο photorec.se2.

Τα περισσότερα αρχεία των υποκαταλόγων αυτών είναι αρχεία txt. Πολλά από τα αρχεία αυτά κειμένου περιέχουν αποσπάσματα(!) από ληφθέντα μηνύματα email από την λίστα ταχυδρομείου a-infos!!! What the Fuck!!! Τι γυρεύουν αποσπάσματα ληφθέντων μηνυμάτων από την λίστα αυτή, σε δίσκο προσαρτημένο στο Raspberry Pi 4 με προορισμό να αποθηκεύει συγχρονισμένα αρχεία του Desktop καταλόγου “Nextcloud”;;;

Υπάρχουν δεκάδες (για να μην πω χιλιάδες!) αρχεία άγνωστου σε εμένα φορμά! Επίσης υπάρχουν binary αρχεία, αρχεία με κατάληξη .java, αρχεία .elf και .gz, και τόσα άλλα ων ουκ εστι αριθμός!

Πώς να τα διαχειριστώ όλα αυτά… Τι πρέπει να κάνω, δεν καταλαβαίνω!

Εντωμεταξύ, το photorec στον δεύτερο SSD δεν τελειώνει ούτε σε πέντε μέρες!!!

(Ερώτηση απελπισίας: πως και πόσο κοστολογείται η ανάθεση της ανάκτησης σε εταιρία που ειδικεύεται…; Γνωρίζεται τέτοιες εταιρίες…;).

Καλημέρα @fragos.george . Όχι δεν γνωρίζω πόσο κοστίζει η ανάκτηση δεδομένων σε τέτοιες εταιρείες. Αν το έχεις αποφασίσει όμως πρέπει να γίνει άμεσα ώστε να μην γίνει overwrite στον δεύτερο δίσκο που δουλεύεις. Οι εταιρείες αυτές σίγουρα έχουν και επαγγελματικά εργαλεία και την εμπειρία αντίστοιχων περιστατικών.

Μου είπαν για την εταιρία Northwind, με εργαστήρια σε Αθήκα και Σαλονίκη! Στο σάιτ τους αναφέρουν ότι η ανάκτηση για δίσκους SSD κοστολογείται από Ευρώ 120…!

Στο θέμα μας: εχθές σύνδεσα το έναν σκληρό (τνν 500GB) στο USB του υπολογιστή μου και επανεκκίνησα τον υπολογιστή μέ ένα ενημερωμένο Tails USB που έχω, ώστε να τρέξω μέσα από εκεί το photorec για τον SSD /dev/sda… Στο τέταρτο ή μισάωρο, το photorec σταμάτησε με μήνυμα “Δεν υπάρχει ελεύθερος χώρος στον δίσκο”!!! Ε, μετά από αυτό, πήγα στο μαγαζί του γείτονα και αγόρασα μισό κιλό κρασί “μαλαγοζιά” και έκατσα και το ήπια! Νισάφι πια!!!

Και όπως είπες πριν, “όσο περνά ο καιρός, τόσο δυσκολότερη γίνεται η ανάκτηση, ιδιαίτερα από τον δίσκο του λάπτοπ”!!!

Αυτό έχει να κάνει περισσότερο με τη συγκεκριμένη διανομή που τρέχεις σε USB και χρησιμοποιεί την ram. Για να μην εξαφανιστούν τα όποια αρχεία υπάρχουν πρέπει να αποσυνδέσεις τον δίσκο. Τα υπόλοιπα τα έχεις ξανακούσει. Βέβαια ελπίζω τουλάχιστον να απόλαυσες τη μαλαγουζιά σου. Ουδέν κακόν αμιγές καλού. Σίγουρα δεν έχεις κανέναν ξεχασμένο HDD πουθενά για να αντιγράψεις τον SSD; Αντί του tails μπορείς να χρησιμοποιήσεις το Rescuezilla, αφού έχεις την ευχέρεια χρήσης USB. https://rescuezilla.com/

Άρα απόψε αποσύνδεσε τους SSD - Απόλαυσε τη μαλαγουζιά - Αύριο πάρε HDD - χρησιμοποίησε backup με Rescuezilla ή ddrescue καλύτερα.

Συγνώμη που θα πάρω θέση, επειδή έχω καεί πάρα πολλές φορές με next + open / cloud..

Πλέον ένα docker για carddav ένα άλλο για caldav και ένα shared files και τέλος.

Δεν είμαι σε θέση να γυρνάω πίσω σε επαφές μήνες επειδή έσκασε ένα update και να χάνω ημερολογιακές εγγραφές και να μένω μόνο με τα αρχεία μου στο χέρι.

Συμφωνώ απολύτως. Αλλά θα πρόσθετα οτι μπορείς να έχεις και ένα nextcloud να υπάρχει με το freedombox γιατί είναι αρκετά εύκολο

Για να είμαστε ακριβείς, το πρόβλημα που παρουσιάστηκε με το NextCloud βρίσκεται στην περίπτωση που πάμε να κάνουμε συγχρονισμό ένα φάκελο σε 2 servers. Αυτή η περίπτωση χρήσης δεν υφίσταται με το Desktop client έστω και αν είναι τεχνικώς εφικτή, δημιουργεί προβλήματα όπως αυτό που έπαθε ο @fragos.george.

Ίσως κάποιος θα πρέπει να πει στο Nextcloud να βάλουν μια επιλογή για το ποια φορά θα έχει ο συγχρονισμός… από το Desktop client προς τον server, από τον server προς τον Desktop client ή και τα δύο παραπάνω.

Έτσι ο χρήστης θα έχει τον πλήρη έλεγχο του συγχρονισμού των αρχείων του και των ημερολογίων του αλλα και των επαφών του.