ΜΗΝΥΜΑ ΣΦΑΛΜΑΤΟΣ ΚΑΤΑ ΤΟ ΑΝΟΙΓΜΑ ΑΡΧΕΙΟΥ LIBREOFFICE WRITER ΣΤΟΥΣ CLIENT

Ξεκίνησε από d_oikon, 14 Ιαν 2020, 12:44:35 ΜΜ

« προηγούμενο - επόμενο »

d_oikon

Κατά το άνοιγμα ενός ήδη αποθηκευμένου αρχείου writer στου client, τις περισσότερες φορές (όχι πάντα) ανοίγει το συγκεκριμένο παράθυρο σφάλματος. Αν βέβαια κλείσουν το παράθυρο πατώντας το x τότε ανοίγει κανονικά το αρχείο. Αλλά είναι πολύ κουραστικό κάθε φορά να λες στους μαθητές τι να κάνουν. Ή να βλέπουν το σφάλμα και να σε ρωτάνε κάθε φορά (!!) :o

ioakyriazis

Το μήνυμα σου λέει ότι το Writer έκλεισε χωρίς να αποθηκευτούν οι αλλαγές στο αρχείο. Σου προτείνει να κάνεις ανάκτηση του αρχείου.
Για να σταματήσει το μήνυμα, θα πρέπει να κάνεις αυτό που σου ζητάει, όχι να το κλείνεις από το [X].

Μήπως κάνεις επανεκκίνηση τον client ενώ το Writer είναι ανοιχτό; Αν το κάνεις αυτό θα βλέπεις το μήνυμα συνέχεια.

ioakyriazis

Επανέρχομαι, γιατί αντιμετώπισα την ίδια περίπτωση: Ακόμα κι όταν κάνω ανάκτηση του εγγράφου, την επόμενη φορά που θα το ανοίξω θα ζητήσει ανάκτηση.

Αυτή τη φορά έκανα 'Απόρριψη' και μου έβγαλε ένα άλλο παραθυράκι, στο οποίο έλεγε να ανοίξω το αρχείο 'Μόνο για ανάγνωση' και να το ξανακλείσω, για να επανέλθει το αρχείο ανάκτησης.
Αυτό διόρθωσε το πρόβλημα.

d_oikon

Παράθεση από: ioakyriazis στις 17 Ιαν 2020, 10:01:15 ΠΜ
Αυτή τη φορά έκανα 'Απόρριψη' και μου έβγαλε ένα άλλο παραθυράκι, στο οποίο έλεγε να ανοίξω το αρχείο 'Μόνο για ανάγνωση' και να το ξανακλείσω, για να επανέλθει το αρχείο ανάκτησης.
Αυτό διόρθωσε το πρόβλημα.
Έχω την εντύπωση ότι και την επόμενη φορά, πάλι θα στο κάνει. Γενικά όμως είναι θεματάκι. Γιατί δεν είναι ότι συμβαίνει στον δικό μου υπολογιστή, οπότε να το κάνω μία φορά και μετά να μην ξανά εμφανιστεί. Είναι στα pc των μαθητών. Πολλά pc πολλοί χρήστες.
Κάτι άλλο πρέπει να συμβαίνει στον server κατά την εκτέλεση του writer. Σαν να "μπλέκονται" οι χρήστες μεταξύ τους. Σαν να νομίζει ότι κάθε φορά ανοίγει ένας χρήστης το πρόγραμμα (το οποίο ούτε κι αυτό συμβαίνει γιατί τελικά ο κάθε χρήστης αποθηκεύει το δικό του αρχείο writer.)

ioakyriazis

Τότε να διώξουμε τα προσωρινά αρχεία με το χέρι. Δώσε αυτό σε ένα τερματικό στον server:

sudo rm /home/student*/.~lock*

για να διώξει όλα τα προσωρινά αρχεία του libreoffice από τους χρήστες studentXX

ntalkos

Καλησπέρα.
Ακόμα και σε μένα που δεν έχω LTSP, συμβαίνει αυτό κατά κόρον. Και δεν έχω διαπιστώσει πότε συμβαίνει. Δεν είναι απαραίτητο να έχει κλείσει απότομα ο client με το αρχείο ανοιχτό. Το έχω δει να συμβαίνει και σε άσχετη φάση.

Τώρα αυτό που προτείνει ο ioakyriazis για χερουλάτη διαγραφή των lock αρχείων ίσως είναι καλό workaround. Με ένα σκριπτάκι ίσως στο boot.

alkisg

Δείτε λίγο και το https://alkisg.mysch.gr/steki/index.php?topic=6850.0

Αν το κάνει συχνά, αξίζει να γίνει ένας wrapper /usr/local/bin/soffice, που θα σβήνει τα locks πριν τρέξει το /usr/bin/soffice. Έτσι η διαγραφή θα γίνεται την κατάλληλη στιγμή, όταν παν να ανοίξουν το libreoffice από τα μενού.

thanos

Συνήθως ξεκινάω εγώ το LibreOffice από τον Επόπτη, με

soffice --norestore

για να μην έχω θέματα με την Αυτόματη Ανάκτηση.

ntalkos

Αυτή είναι μια καλή λύση, αλλά
- θα πρέπει πάντα να είναι ο δάσκαλος εκεί, αντί να μάθουν οι μαθητές να το κάνουν &
- το σφάλμα βγαίνει ακόμα κι όταν ανοίγουν οι μαθητές από μόνοι τους συγκεκριμένο αρχείο

Καλημέρα!

ntalkos

Θα κάνω άλλη μια ερώτηση. Τοπικά στο raspberry, πού βρίσκονται αυτά τα lock αρχεία. Εχω αυτή τη στιγμή περίπτωση Writer που όταν ανοίγει, μου λέει για ανάκτηση εγγράφων, αλλά δεν μπορώ να βρω πού είναι αυτά τα lock αρχεία...

ioakyriazis


Κανονικά είναι στον προσωπικό φάκελο του χρήστη. Δε νομίζω να είναι διαφορετικά στο raspberry.
Είναι κρυφά αρχεία (ότι ξεκινάει με τελεία στο linux είναι κρυφό αρχείο), οπότε για να τα δεις θα πρέπει να δώσεις στο τερματικό ls -a, ή από το παράθυρο της εξερεύνησης (caja, nautilus, ...) με Ctrl + H ή από το μενού Προβολή -> Εμφάνιση κρυφών αρχείων.

ntalkos

Κι εγώ αυτά έχω κάνει. Δυστυχώς δεν υπάρχει τίποτα.

Ενώ σε άλλο client, ανοίγω αρχείο odt και βλέπω να δημιουργείται lock αρχείο. Κλείνω το αρχείο, εξαφανίζεται το lock. Όπως θα έπρεπε δηλαδή.

Άρα, μυριζομαι κάποιο bug. Δεν εξηγείται αλλιώς. Για την ώρα υιοθέτησα και γω τη λύση που προτείνεται εδώ
https://askubuntu.com/questions/553824/how-to-disable-locking-in-libreoffice
και θα δω πώς θα πάει. Ούτως ή άλλως, τα raspberry λειτουργούν ως single user mode. Τι μπορεί να πάει στραβά...


alkisg

Σε αυτό το topic εμπλέκονται δύο θέματα. Ένα είναι η ανάκτηση σε περίπτωση βίαιου τερματισμού του LibreOffice, και ένα η αδυναμία ανοίγματος αρχείου γιατί παραπονιέται ότι είναι ανοικτό από άλλον, λόγω των αρχείων .lock.
Οι πληροφορίες ανάκτησης δεν σχετίζονται με τα .lock αρχεία τα οποία είναι για αποκλειστικό άνοιγμα αρχείου.

Η πρόταση του thanos λογικά λύνει το θέμα της ανάκτησης,
ενώ η πρόταση του ntalkos λογικά λύνει το θέμα των .lock αρχείων.

Λάμπρο εσύ δεν έχεις θέμα αποκλειστικής χρήσης αλλά ανάκτησης, οπότε μάλλον πρέπει να δοκιμάσεις τη λύση του Θάνου.

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

Κώδικας: Bash
sudo -i
printf '#!/bin/sh\npgrep soffice.bin >/dev/null || rm -f ~/.config/libreoffice/*/.lock\nexec /usr/bin/libreoffice --norestore "$@"\n' > /usr/local/bin/libreoffice
chmod +x /usr/local/bin/libreoffice
exit


Όποιος έχει LTSP θα χρειαστεί και δημοσίευση εικονικού δίσκου.

Με τις παραπάνω εντολές, φτιάξαμε έναν "wrapper" (περιτύλιγμα εκτελέσιμου) στο /usr/local/bin/libreoffice, ο οποίος έχει προτεραιότητα από το συνηθισμένο LibreOffice που βρίσκεται στο /usr/bin/libreoffice. Με αυτόν τον τρόπο δηλαδή μπορούμε να αλλάζουμε τις προεπιλεγμένες παραμέτρους των προγραμμάτων. Επιπρόσθετα, του βάλαμε να σβήνει τα αρχεία .lock για την περίπτωση που αναφέρει ο d_oikon παρακάτω.

Σε άλλο παράδειγμα, αν κάποιος θέλει να τρέχει το tuxtype fullscreen, πάλι θα έφτιαχνε έναν τέτοιο wrapper (και αυτό το κάνουν ήδη τα sch-scripts).

Αν το μετανιώσαμε και θέλουμε να σβήσουμε τον wrapper, δίνουμε:

Κώδικας: Bash
sudo rm /usr/local/bin/libreoffice

ntalkos


d_oikon

Παράθεση από: ioakyriazis στις 17 Ιαν 2020, 01:09:48 ΜΜ
Τότε να διώξουμε τα προσωρινά αρχεία με το χέρι. Δώσε αυτό σε ένα τερματικό στον server:

sudo rm /home/student*/.~lock*

για να διώξει όλα τα προσωρινά αρχεία του libreoffice από τους χρήστες studentXX

Προσωπικά εκτέλεσα την εντολή sudo rm /home/*/.~lock* έτσι ώστε να πιάσει όλους τους φακέλους των μαθητών, μιας και οι φάκελοι δεν είναι της μορφής student*, αλλά a1-01...a1-13 έως st3-01...st3-13. Δεν ξέρω αν έκανα λάθος πάνω σε αυτό!
Παρόλα αυτά συνεχίζει το ίδιο να μου κάνει.
Μετά έκανα το εξής για να δω τι γίνεται με τα lock αρχεία.
...Μπήκα ως μαθητής σε έναν από τους client, άνοιξα ένα αποθηκευμένο αρχείο writer και παρατήρησα (μέσα από τον server, στον φάκελο του μαθητή) ότι το αρχείο .~lock. δημιουργείται κανονικά και όταν κλείσω το αρχείο από τον client τότε διαγράφεται το αρχείο .~lock. που είχε δημιουργηθεί. Παρόλο όμως που διαγράφεται, όταν πάω πάλι να ανοίξω αρχείο LibreOffice (είτε writer είτε impress) πάλι βγάζει το ίδιο μήνυμα  :( :-\