Όλοι οι clients (και ο server) έχουν οθόνη LCD ACER V223HQV, αναλογίας 16:9, όμως οι διαθέσιμες αναλύσεις είχαν λάθος aspect ratio, εκτός από μια, την 1360x768, η οποία όμως είναι πολύ χαμηλή.
Έτσι πειραματίστηκα με την εντολή xrandr και πρσθέτοντας στο etc/gdm/Init/Default του server τις εντολές:
xrandr --newmode "1920x1080" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsyncc
xrandr --addmode VGA1 1920x1080
xrandr --output VGA1 --mode 1920x1080
τις οποίες τιμές βρήκα εκτελώντας:
cvt 1920 1080
πέτυχα όταν κάνω login να έχω την επιθυμητή ανάλυση 1920x1080.
Το πρόβλημά μου είναι πως θα προσθέσω το σωστό mode και στους clients (όλοι fat);
Δοκίμασα με τις ρυθμίσεις του lts.conf
XRANDR_MODE_0=1920x1080
XRANDR_RATE_0=60
X_HORZSYNC=30.0-80.0
X_VERTREFRESH=55.0-75.0
τις οποίες τιμές βρήκα στο manual της οθόνης, αλλά τίποτα... Πάλι με λάθος ανάλυση λειτουργούν.
Παραθέτω κι ένα μέρος του /var/log/Xorg.7.log http://pastebin.com/s0hYAy4k (http://pastebin.com/s0hYAy4k).
Παράθεση από: geochatz στις 09 Ιαν 2012, 01:33:16 ΜΜ
Δοκίμασα με τις ρυθμίσεις του lts.conf
X_HORZSYNC=30.0-80.0
Το συγκεκριμένο X_HORZSYNC είναι υπερβολικά χαμηλό και είναι ένας από τους λόγους (δεν ξέρω αν είναι ο μόνος λόγος ή όχι) που χάνεις τις ψηλές αναλύσεις.
Δοκίμασε να το αυξήσεις, π.χ.
XRANDR_MODE_0=1920x1080
X_HORZSYNC=30-150
X_VERTREFRESH=55-75
Επίσης, το xorg.0.log που πόσταρες, σε ποιο lts.conf αντιστοιχεί; Αν μπορείς ξαναπόσταρέ το με τις παραπάνω 3 γραμμές στο lts.conf.
Δοκίμασα να μεγαλώσω το εύρος του HORZSYNC με αποτέλεσμα η login screen να έχει μετατοπιστεί προς τα δεξιά και να υπάρχει ένα μαύρο κενό στο 1/4 της οθόνης αριστερά. Επίσης κάνοντας login, αυξήθηκαν οι διαθέσιμες αναλύσεις, αλλά όλες οι καινούριες διαθέσιμες έχουν λάθος aspect ratio (4:3 και μια 16:10), οπότε το πρόβλημα δεν λύθηκε.
Ξαναποστάρω ολόκληρο το Xorg log ενός client: http://pastebin.com/5pFqXiv6 (http://pastebin.com/5pFqXiv6)
το οποίο αντιστοιχεί σε αυτό το lts.conf:
XRANDR_MODE_0=1920x1080
XRANDR_RATE_0=60
X_HORZSYNC=30.0-150.0
X_VERTREFRESH=55.0-75.0
ΥΓ: Όταν κάνουμε αλλαγές στο lts.conf με ποια εντολή ξαναφορτώνεται στο sch-scripts το νέο lts.conf;
Το πρόβλημα είναι αυτή η γραμμή στο xorg.log σου:
Παράθεση
(II) intel(0): Not using default mode "1920x1080" (monitor doesn't support reduced blanking)
Ίσως το σχετικό bug report να είναι αυτό:
https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/524299
Αυτός που ανέφερε το bug, λέει ότι του λύθηκε στη Maverick.
Οπότε προτείνω να σβήσεις όλες τις X* καταχωρήσεις από το lts.conf, να βάλεις νέο kernel στον εικονικό δίσκο όπως περιγράφεται εδώ (https://alkisg.mysch.gr/steki/index.php?topic=3957.0), και στη συνέχεια να επανεκκινήσεις τους clients.
Γενικά κάθε φορά που κάνεις αλλαγές στο lts.conf θα πρέπει να επανεκκινείς τους clients για να εφαρμοστούν οι αλλαγές. Τα sch-scripts δεν θέλουν κάποια "ενημέρωση", παρά μόνο αν αλλάζεις τα HOSTNAMEs των clients, οπότε και θέλουν κλείσιμο και ξαναάνοιγμα.
Αν και θεωρητικά το lts.conf υποστηρίζει την προσθήκη νέων αναλύσεων με την οδηγία XRANDR_NEWMODE_0, δυστυχώς έχει bugs που αποτρέπουν τη σωστή λειτουργία της.
Έτσι προτείνω να δημιουργήσεις το αρχείο /opt/ltsp/i386/usr/share/ltsp/xinitrc.d/I10-xrandr-mode-1920 και να βάλεις μέσα του τις εντολές που θες:
if [ -n "$MODE_1920" ]; then
xrandr --newmode 1920x1080 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode VGA1 1920x1080
xrandr --output VGA1 --mode 1920x1080
fi
Η εντολή if θα το κάνει να ενεργεί μόνο στα τερματικά για τα οποία βάζεις MODE_1920=True στο lts.conf, ή, σε όλα αν το βάλεις κάτω από το [Default].
Συμπιέζεις τον εικονικό δίσκο, επανεκκινείς τους clients κι αν όλα πάνε καλά θα είσαι έτοιμος.
Με την αλλαγή kernel δεν λύθηκε το πρόβλημα.
Λύθυκε όμως με αυτό που πρότεινε από πάνω ο Άλκης. Αρχικά όμως, ενώ στη login screen η ανάλυση ήταν 1920x1080, όταν έμπαινε κάποιος χρήστης, η ανάλυση χαμήλωνε. Βέβαια η 1920x1080 ήταν διαθέσιμη, αλλά δεν έμπαινε από μόνη της.
Με την προσθήκη του:
XRANDR_MODE_0=1920x1080
XRANDR_RATE_0=60
X_HORZSYNC=30.0-100.0
X_VERTREFRESH=55.0-75.0
όλα λειτουργούν ΟΚ πλέον.
Ευχαριστώ πολύ!
Παράθεση από: geochatz στις 11 Ιαν 2012, 12:25:48 ΜΜ
Αρχικά όμως, ενώ στη login screen η ανάλυση ήταν 1920x1080, όταν έμπαινε κάποιος χρήστης, η ανάλυση χαμήλωνε.
Όταν κάποιος χρήστης διαλέγει μια ανάλυση από το διάλογο επιλογής αναλύσεων, αυτή αποθηκεύεται στο αρχείο ~/.config/monitors.xml.
Κατά πάσα πιθανότητα λοιπόν αυτοί οι χρήστες είχαν αποθηκευμένες προτιμήσεις ανάλυσης, τις οποίες μπορείς να διαγράψεις με τις παρακάτω εντολές στο server:
sudo -i
rm /home/*/.config/monitors.xml
exit
OK, όλα είναι εντάξει τώρα. Ευχαριστώ και πάλι...
Έχοντας εγκαταστήσει το Precise, πήγα να εφαρμόσω τη λύση που περιγράφεται παραπάνω. Αναφέρω λοιπόν τι (νέο) έκανα, σε περίπτωση που χρειάζεται και κάποιος άλλος να ακολουθήσει τα ίδια βήματα.
- Ο κατάλογος /opt/ltsp/i386/usr/share/ltsp/xinitrc.d/ δεν υπάρχει πια, αφού ο εικονικός δίσκος δημιουργείται από τους καταλόγους του server. Οπότε τυχόν αλλαγές θα γίνονταν απευθείας στον κατάλογο /usr/share/ltsp/xinitrc.d/. Ωστόσο, δε χρειάζεται πια καμία αλλαγή εκεί, ούτε προσθήκη κάποιου script.
- Στον κατάλογο usr/share/ltsp/xinitrc.d/ υπάρχει το script I10-xrandr το οποίο χειρίζεται ό,τι υπάρχει στο lts.conf που σχετίζεται με το xrandr. Σε αυτό έχει προστεθεί (από τον Άλκη!) μια νέα επιλογή η XRANDR_COMMAND, η οποία εκτελεί απευθείας εντολές του xrandr. Οπότε, η προσθήκη μιας νέας ανάλυσης για τους clients γίνεται πλέον (ή τουλάχιστον έτσι το έκανα εγώ) προσθέτοντας στο lts.conf τα εξής:
XRANDR_NEWMODE_0=1920x1080 148.5 1920 2008 2052 2200 1080 1084 1089 1125 +HSync +VSync
XRANDR_COMMAND_0="xrandr --addmode VGA1 1920x1080"
XRANDR_COMMAND_1="xrandr --output VGA1 --mode 1920x1080"