Το Στέκι των Πληροφορικών

Γενικά => Τεχνική υποστήριξη => Linux => Μήνυμα ξεκίνησε από: alkisg στις 18 Οκτ 2021, 11:16:00 πμ

Τίτλος: Scaling στον Επόπτη
Αποστολή από: alkisg στις 18 Οκτ 2021, 11:16:00 πμ
Η πολλή θεωρία είναι στο https://epoptes.org/documentation/vnc/.

Η γρήγορη έκδοση είναι ότι ανέβηκε νέα έκδοση του Επόπτη στο αποθετήριο της Τεχνικής Στήριξης για το Ubuntu 20.04, η οποία έχει έναν καλύτερο VNC viewer ο οποίος υποστηρίζει scaling.
Προς το παρόν όμως η ενεργοποίησή του γίνεται χειρωνακτικά· αφού δοκιμαστεί λίγο θα γίνεται αυτοματοποιημένα κατά την εγκατάσταση των sch-scripts.

Συγκεκριμένα, δίνουμε:

Κώδικας: Bash
  1. sudo apt update
  2. sudo apt full-upgrade --yes
  3. sudo apt install realvnc-vnc-viewer
  4. sudo apt purge --auto-remove xvnc4viewer
  5. vncviewer
  6. # Αποδεχόμαστε την άδεια χρήσης, ξετσεκάρουμε τα στατιστικά
  7. # Κλείνουμε τον viewer
  8. # Αντιγράφουμε την έγκριση της άδειας χρήσης για όλους τους χρήστες:
  9. sudo cp ~/.vnc/config.d/vncviewer /etc/epoptes/
  10. # Και τέλος κάνουμε δημοσίευση εικονικού δίσκου και επανεκκίνηση clients και server
  11. sudo ltsp image /
  12. reboot
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: thanos στις 19 Οκτ 2021, 11:40:07 πμ
Έχω κάνει τη διαδικασία, αλλά κατά την εκπομπή στους clients δεν γίνεται scaling.
(Θύμισέ μου το chat...?)

Update: Είχα ξεχάσει να βγάλω το παλιό vnc!  : :angel:
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: alkisg στις 19 Οκτ 2021, 11:51:00 πμ
Δες το https://ts.sch.gr/wiki/IRC
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: alkisg στις 19 Οκτ 2021, 12:19:22 μμ
Θάνο μόλις το τεστάρεις, ανέβασε εντυπώσεις για το αν τον θεωρείς καλύτερο, ώστε να οριστεί ως ο προεπιλεγμένος VNC viewer.
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: thanos στις 21 Οκτ 2021, 01:13:10 μμ
Το (ενοχλητικό) πρόβλημα που εντόπισα είναι ότι "κολλάνε" κάποιοι clients όταν τους ξαναδίνω πίσω την οθόνη τους... Ψάχνουν το vnc server.
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: alkisg στις 21 Οκτ 2021, 02:36:34 μμ
Πώς τον "ψάχνουν", εμφανίζουν κάποιον διάλογο ή κάποιο μήνυμα λάθους; Ή μένει κολλημένη η οθόνη στην τελευταία εικόνα;
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: vovos στις 25 Οκτ 2021, 09:16:40 πμ
Το δοκίμασα σε UBUNTU 20.04 64bit και παίζει άψογα! Επιτέλους θα μπορούν τα παιδιά και εγώ να βλέπουμε ολόκληρες οθόνες χωρίς sidebars! Ευχαριστούμε!!! :D :D :D
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: alkisg στις 25 Οκτ 2021, 11:55:22 πμ
Ανέβηκε ενημερωμένη έκδοση που διορθώνει το εξής πρόσφατο πρόβλημα (regression):

μερικές φορές η παρακολούθηση και η υποβοήθηση χρήστη δεν δούλευαν με το πρώτο κλικ και ήθελαν δεύτερο.

Αν κανείς δει το πρόβλημα "δεν τερματίζει η εκπομπή σε κάποιους clients", και αφού έχει σιγουρευτεί ότι έχει κάνει ενημέρωση και δημοσίευση, ας έρθει από το IRC να δούμε μήπως λύσουμε κι αυτό.
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: gregflo στις 26 Οκτ 2021, 12:02:17 μμ
Καλησπέρα. Έγινε εγκατάσταση της νέας έκδοσης του επόπτη μέσω του προγράμματος ενημέρωσης λογισμικού, αλλά κάθε φορά που κάνω εκπομπή της οθόνης μου στους clients την πρώτη φορά, πρέπει να κάνω αποδοχή αδείας χρήσης σε καθένα ξεχωριστά. Πώς μπορώ να το ξεπεράσω αυτό;
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: alkisg στις 26 Οκτ 2021, 12:16:39 μμ
Καλημέρα, έκανες τις εντολές που γράφω στο αρχικό μήνυμα; Αν όχι κάν' τες ώστε να αποδεχτείς εσύ την άδεια χρήσης εκ μέρους των μαθητών.
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: gregflo στις 26 Οκτ 2021, 01:34:10 μμ
ok, ευχαριστώ!
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: alkisg στις 02 Νοε 2021, 10:28:30 πμ
@thanos, σημειώνω εδώ τι προσθέσαμε στο client-functions· αν δουλεύει πιο σταθερά τώρα, να το προσθέσουμε για όλους: -hideclosealert=true -autoreconnect=false

Ο @vovos ανέφερε ένα ακόμα πρόβλημα, ότι σε κάποιες περιπτώσεις, κάνοντας προβολή οθόνης πριν κάνουν login οι μαθητές, η οθόνη του καθηγητή εμφανίζεται για ένα δευτερόλεπτο και μετά κρύβεται.
Το ανέφερα στο realvnc (https://help.realvnc.com/hc/en-us/community/posts/4408943437969-Hide-banner-dialog?page=1#community_comment_4409976037265), να δούμε ΑΝ απαντήσουν.
Συγκεκριμένα, όταν μετά από ένα δευτερόλεπτο κρύβεται το banner dialog, ο vncviewer πηγαίνει πίσω από τον lightdm και κρύβεται! Αν μέσα από τον Επόπτη τρέξουμε `sudo marco`, δηλαδή τον διαχειριστή παραθύρων, μπορούμε να τα μετακινήσουμε και να το δούμε.
Ένα workaround είναι να μετακινήσουν το ποντίκι οι μαθητές σε μια ...περίεργη θέση: εντός της περιοχής που θα προβάλλεται η οθόνη του καθηγητή, αλλά εκτός του VNC banner που εμφανίζεται για ένα δευτερόλεπτο. Π.χ. να βρίσκεται το ποντίκι είτε τέρμα ανατολικά είτε τέρμα νότια της οθόνης (ανάλογα το aspect ratio της προβολής). Στη συνέχεια η προβολή γίνεται κανονικά.
Ένα δεύτερο workaround είναι να τρέξει ο καθηγητής την εντολή "sudo marco" μέσα από τον Επόπτη πριν την προβολή, ενώ για να μην δημιουργήσει προβλήματα αργότερα, πριν συνδεθούν οι μαθητές, θέλει και "sudo systemctl restart lightdm".

Για αυτοματοποίηση είναι πιο δύσκολο, χρειάζεται να φτιαχτεί ένα πρόγραμμα python που θα κάνει αυτόματα αυτή τη μετακίνηση του ποντικού, και μετά θα εκτελεί τον vncviewer. Γράφω εδώ την αρχή, θα το υλοποιήσουμε όμως μόνο αν δεν βρεθεί πιο εύκολος τρόπος...

Παράθεση από: /usr/local/bin/vncviewer
#!/usr/bin/env python3

from ctypes import cdll

def move_mouse(x,y):
    dll = cdll.LoadLibrary('/usr/lib/x86_64-linux-gnu/libX11.so')
    d = dll.XOpenDisplay(None)
    root = dll.XDefaultRootWindow(d)
    dll.XWarpPointer(d,None,root,0,0,0,0,x,y)
    dll.XCloseDisplay(d)

# TODO: determine a position based on resolution
move_mouse(0, 500)
# TODO: then exec /usr/bin/vncviewer "$@"
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: markakis στις 04 Νοε 2021, 09:38:11 πμ
Επιβεβαιώνω και εγώ το θεματάκι του realvnc με την προβολή οθόνης πριν από το login και το workaround με το βελάκι σε συγκεκριμένη θέση.

Ένα θεματάκι ακόμα: με τον xvnc4viewer μπορούμε να έχουμε κλειδωμένους τους υπολογιστές και στη συνέχεια να επιλέξουμε προβολή οθόνης και η προβολή να επικαλύψει το κλείδωμα. Με τον realvnc δεν συμβαίνει αυτό και θα πρέπει να πατήσουμε ξεκλείδωμα για να προβάλουμε.

Προσωπικά εγκατέστησα τον realvnc στο εργαστήριο τους ενός σχολείου που χρειάζομαι το scaling και στο άλλο που δεν το χρειάζομαι θα παραμείνω με xvnc4viewer.
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: alkisg στις 04 Νοε 2021, 10:52:19 πμ
Ευχαριστώ @markakis θα κοιτάξω κι αυτό με το κλείδωμα οθόνης.

Υπάρχει και μια τρίτη επιλογή, το ssvnc:

sudo apt install --no-install-recommends ssvnc
sudo apt purge --auto-remove xvnc4viewer realvnc-vnc-viewer
sudo ltsp image /
reboot

Αυτό υποστηρίζει scaling αν και προς το παρόν οι μαθητές πρέπει να πατάνε δύο φορές F9 για να το ενεργοποιήσουν. Μπορούμε όμως να το διορθώσουμε αυτό ώστε να δουλεύει απευθείας.
Αυτό που με ανησυχεί με το ssvnc είναι ότι μου φαίνεται λίγο πιο αργό από τα άλλα, οπότε τελικά θα δείχνει λιγότερα frames per second. Αλλά δεν πήγα σε εργαστήριο να το δοκιμάσω.
Αν κάποιος το δοκιμάσει σε εργαστήριο και πει ότι είναι καλύτερο, μπορώ να διορθώσω το δυο-F9-για-scaling και να βάλουμε αυτό ως default.
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: thanos στις 09 Νοε 2021, 11:56:37 πμ
> @thanos, σημειώνω εδώ τι προσθέσαμε στο client-functions· αν δουλεύει πιο σταθερά τώρα, να το προσθέσουμε για όλους: -hideclosealert=true -autoreconnect=false

Ως τώρα σίγουρα δουλεύει καλύτερα, δεν μου έχει παρουσιάσει το πρόβλημα που είχαμε, με το κόλλημα, ποτέ.
Τίτλος: Απ: Scaling στον Επόπτη
Αποστολή από: alkisg στις 09 Νοε 2021, 12:18:59 μμ
Τέλεια, το προσθέτω άμεσα.