Xrandr: ισχυρό εργαλείο για τη διαμόρφωση της οθόνης σας

Σε αυτήν την ευκαιρία, εξηγούμε πώς να το χρησιμοποιήσετε xrandr, ένα τερματικό εργαλείο που χρησιμοποιείται σωστό la ανάλυση της οθόνης σας, τους ποσοστά αναψυχής, και τα λοιπά. και χρησιμεύει ακόμη και για χειρισμό περισσότερων από μίας οθόνης.

Ο Miguel Suárez Patiño είναι ένας άλλος από τους νικητές από τον εβδομαδιαίο διαγωνισμό μας: «Μοιραστείτε ό, τι γνωρίζετε για το Linux«. Συγχαρητήρια Μιγέλ!

Ο κανονικός χρήστης, κυρίως Windows ή Apple, δεν καταλαβαίνει πολύ καλά ανθρώπους που είναι παθιασμένοι με το Linux και περνούν πολύ χρόνο στην κονσόλα εντολών πληκτρολογώντας "περίεργα πράγματα".

Αυτό που θα σας πω σήμερα είναι μια από τις μέρες που αισθάνεστε ιδιαίτερα περήφανοι για το Linux. Αυτή είναι η ιστορία:

Αγαπητή μου παλιά οθόνη HP CRM pavilion mx70, μου προσφέρει ένα ευρύ φάσμα αναλύσεων, αλλά το Linux Mint LXDE δεν το αναγνωρίζει και μου δείχνει μια καλή ανάλυση 1024 × 768 αλλά με μόνο 60 hz ανανέωσης, κάτι που δεν είναι πολύ καλό για τα μάτια. Θεωρητικά, η οθόνη μπορεί να φτάσει τα 85 Hz με αυτήν την ανάλυση.

Και τι να κάνω τώρα; Λοιπόν, το συνηθισμένο, μεταβείτε στη γραμμή εντολών και ΠΑΙΞΤΕ!

Χρησιμοποιώντας το xrandr

Για να τροποποιήσετε τις αναλύσεις υπάρχει η εντολή "xrandr" (X Resize & Rotate). Με αυτήν την εντολή μπορείτε να διαμορφώσετε την ανάλυση της οθόνης, αλλά μπορείτε επίσης να προσθέσετε νέες αναλύσεις αρκεί να τις υποστηρίζει η οθόνη.

Σχολιάστε ότι υπάρχουν πολλές γραφικές διεπαφές: grandr, arandr.

Για να δείτε τις αναλύσεις που εντοπίστηκαν από το σύστημα, απλώς καλέστε αυτήν την εντολή και δείτε το αποτέλεσμα, στην περίπτωσή μου:

informiguel ~ $ xrandr Οθόνη 0: ελάχιστο 320 x 200, τρέχον 1024 x 768, μέγιστο 4096 x 4096 VGA-0 συνδεδεμένο 1024x768 + 0 + 0 (κανονικός αριστερός ανεστραμμένος δεξιά x άξονας y άξονας) 0mm x 0mm 1024x768 60.0 800x600 60.3 56.2 848x480 60.0 640x480 59.9 S-video αποσυνδέθηκε (κανονικός αριστερός ανεστραμμένος δεξί άξονας x άξονας y)

Όπως μπορείτε να δείτε, για ανάλυση 1024 × 768 προσφέρει μόνο 60.0 Hz.

Λοιπόν, θα προσθέσω την ανάλυση στην οποία είμαι καλύτερος και που προσφέρει η οθόνη μου: 1024 × 768 στα 85 Hz. Προφανώς κάθε οθόνη έχει τα δικά της χαρακτηριστικά που πρέπει να συμβουλευτείτε.

Το πρόβλημα είναι ότι για να δημιουργήσετε μια νέα ανάλυση χρειάζεστε "πολύ περίεργα" δεδομένα όπως η κάθετη, οριζόντια, μέγιστη, ελάχιστη, συνολική συχνότητα, ... Αλλά το Linux έχει επίσης τη λύση με την εντολή "cvt", ένα βοηθητικό πρόγραμμα για τον υπολογισμό Απαιτούνται λειτουργίες VESA για την επίτευξη ανάλυσης. Λοιπόν, αν θέλω 1024 × 768 στα 85 Hz γράφω:

informiguel ~ cvt 1024 768 85 # 1024x768 84.89 Hz (CVT 0.79M3) hsync: 68.68 kHz; pclk: 94.50 Mhz Modeline "1024x768_85.00" 94.50 1024 1096 1200 1376 768 771 775 809 -hsync + vsync

Μπορείτε επίσης να δοκιμάσετε το "gtf" που κάνει το ίδιο ή περισσότερο:

informiguel ~ $ gtf 1024 768 85 # 1024x768 @ 85.00 Hz (GTF) hsync: 68.60 kHz; pclk: 94.39 MHz Modeline "1024x768_85.00" 94.39 1024 1088 1200 1376 768 769 772 807 -Hync + Vsync

Και με αυτόν τον τρόπο εμφανίζεται το "Modeline" που πρέπει να χρησιμοποιήσω με το "xrandr". Μην φοβάστε εάν τα hzs δεν ταιριάζουν αρκετά (94.50 αντί 85).

Βήμα για να προσθέσετε αυτήν την ανάλυση αντιγράφοντας το "modeline" που αποκτήθηκε: (μια λεπτομέρεια, όταν τοποθετείτε μια επιλογή με το μακρύ όνομά της όπως "newmode", προηγείται 2 παύλες, ίσως δεν είναι αισθητές πολύ, ενώ άλλες φορές μόνο 1 παύλα είναι όπως στην περίπτωση του "hsync")

informiguel ~ $ xrandr - newmode "1024x768_85.00" 94.50 1024 1096 1200 1376 768 771 775 809 - hsync + vsync

Εάν ελέγξουμε το αποτέλεσμα:

informiguel ~ $ xrandr Οθόνη 0: ελάχιστο 320 x 200, τρέχον 1024 x 768, μέγιστο 4096 x 4096 VGA-0 συνδεδεμένο 1024x768 + 0 + 0 (κανονική αριστερή ανεστραμμένη δεξιά x άξονας y άξονας) 0mm x 0mm 1024x768 60.0 * 800x600 60.3 56.2 848x480 60.0 640x480 59.9 S-video αποσυνδεδεμένο (κανονικός αριστερός ανεστραμμένος δεξί άξονας x άξονας y) 1024x768_85.00 (0x137) 94.5Mhz h: πλάτος 1024 έναρξη 1096 τέλος 1200 συνολικά 1376 κλίση 0 ρολόι 68.7KHz v: ύψος 768 έναρξη 771 τέλος 775 σύνολο 809 ρολόι 84.9Hz

Μπορείτε να δείτε τη νέα "Modeline" που δημιουργήθηκε. Μου αρέσει ο ήχος του "Modeline"! Αν κάποια μέρα έχω μια γάτα θα το ονομάσω αυτό.

Συνεχίζουμε, τώρα πρέπει να προσθέσω αυτήν τη νέα λειτουργία στη λίστα των διαθέσιμων λειτουργιών:

informiguel ~ $ xrandr –προσθήκη VGA-0 1024x768_85.00

Το "VGA-0", αν κοιτάξετε τα αποτελέσματα του "xrandr", είναι αυτό που ονομάζεται η κάρτα γραφικών μου. Βλέπουμε το αποτέλεσμα, τέλειο!

informiguel ~ $ xrandr Οθόνη 0: ελάχιστο 320 x 200, τρέχον 1024 x 768, μέγιστο 4096 x 4096 VGA-0 συνδεδεμένο 1024x768 + 0 + 0 (κανονική αριστερή ανεστραμμένη δεξιά 1024x768 60.0 * 800x600 60.3 56.2 848x480 60.0 640x480 59.9 1024x768_85.00 84.9 S - βίντεο αποσυνδεδεμένο (κανονικός αριστερός ανεστραμμένος δεξί άξονας x άξονας y)

Τώρα απομένει μόνο να εφαρμοστεί αυτή η ανάλυση στην οθόνη:

informiguel ~ $ xrandr - έξοδος VGA-0 - τρόπος 1024x768_85.00

Μια αναλαμπή και η οθόνη φαίνονται πιο όμορφα από ποτέ.

Τι γίνεται αν θέλω να βάλω ανάλυση 800 × 600 με ρυθμό ανανέωσης 60 hz (βλέπω ότι υπάρχουν διαθέσιμα 2 αναψυκτικά σε αυτήν τη λειτουργία, 60.3 και 56.2); Μπορεί να γίνει με αυτόν τον τρόπο:

informiguel ~ $ xrandr -s 800x600 -r 60

Σημειώστε ότι το αναψυκτικό χρησιμοποίησε 60 αντί για 60.3, καθώς το τελευταίο δεν το παραδέχτηκε. Τώρα ας επιστρέψουμε στην όμορφη ανάλυση:

informiguel ~ $ xrandr -s 1024x768_85.00

Εάν πήρα από προεπιλογή το αναψυκτικό στα 60 hz, τότε γράφουμε:

informiguel ~ $ xrandr -s 1024x768_85.00 -r 85

Τι γίνεται αν κάνω λάθος και θέλω να καταργήσω τα πάντα; Λοιπόν, ας πάμε εκεί. Για να διαγράψετε αυτήν την ανάλυση από τη λίστα των διαθέσιμων λειτουργιών:

informiguel ~ $ xrandr --delmode VGA-0 1024x768_85.00

Αν βλέπω το αποτέλεσμα:

informiguel ~ $ xrandr Οθόνη 0: ελάχιστο 320 x 200, τρέχον 1024 x 768, μέγιστο 4096 x 4096 VGA-0 συνδεδεμένο 1024x768 + 0 + 0 (κανονική αριστερή ανεστραμμένη δεξιά x άξονας y άξονας) 0mm x 0mm 1024x768 60.0 * 800x600 60.3 56.2 848x480 60.0 640x480 59.9 S-video αποσυνδεδεμένο (κανονικός αριστερός ανεστραμμένος δεξί άξονας x άξονας y) 1024x768_85.00 (0x136) 94.5Mhz h: πλάτος 1024 έναρξη 1096 τέλος 1200 συνολικά 1376 κλίση 0 ρολόι 68.7KHz v: ύψος 768 έναρξη 771 τέλος 775 σύνολο 809 ρολόι 84.9Hz

Έχει ήδη αφαιρεθεί από τη λίστα, αλλά τα δεδομένα εμφανίζονται τώρα με τον τρόπο που δημιουργήθηκε προηγουμένως (–newmode). Για να το διαγράψετε και αυτό:

informiguel ~ $ xrandr --rmmode 1024x768_85.00

Βλέπουμε το αποτέλεσμα:

informiguel ~ $ xrandr Οθόνη 0: ελάχιστο 320 x 200, τρέχον 1024 x 768, μέγιστο 4096 x 4096 VGA-0 συνδεδεμένο 1024x768 + 0 + 0 (κανονικός αριστερός ανεστραμμένος δεξιά x άξονας y άξονας) 0mm x 0mm 1024x768 60.0 * 800x600 60.3 56.2 848x480 60.0 640x480 59.9 S-video αποσυνδέθηκε (κανονικός αριστερός ανεστραμμένος δεξί άξονας x άξονας y)

Όλα ήταν στην αρχή του άρθρου ...

Και τέλος, ξέρω ότι είστε τζόκερ, οπότε δοκιμάστε αυτό:
Πρώτα γράψτε αυτό, το οποίο δεν κάνει καμία αλλαγή αυτή τη στιγμή:

informiguel ~ $ xrandr - έξοδος VGA-0 - τρέξτε κανονικά

Και τώρα δοκιμάστε τα ακόλουθα λαμβάνοντας υπόψη ότι για να αφαιρέσετε το αστείο πρέπει να επαναλάβετε την προηγούμενη οδηγία (απλώς επιλέξτε το χρησιμοποιώντας τα πλήκτρα του δρομέα):

informiguel ~ $ xrandr - έξοδος VGA-0 - περιστροφή αριστερά

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

Στο Linux υπάρχει ένα αρχείο διαμόρφωσης που σιγά-σιγά και καθώς το υλικό αναγνωριζόταν καλύτερα από τις διανομές, ξεχάστηκε. Το πλήρες όνομα διαδρομής είναι "/etc/X11/xorg.conf". Το αρχείο διαμόρφωσης για όλες τις παραμέτρους που κάνουν το γραφικό περιβάλλον να λειτουργεί.

Στο LXDE (ανοιχτό περιβάλλον εργασίας X11) το αρχείο δεν υπάρχει, επομένως πρέπει να δημιουργηθεί, κάτι που δεν είναι εύκολο. Μια πιθανή λύση είναι να κάνετε τα εξής:

Αφήνουμε το γραφικό περιβάλλον, πηγαίνουμε σε ένα τερματικό πατώντας CTRL + ALT + F1, θυμηθείτε ότι το γραφικό περιβάλλον είναι CTRL + ALT + F7). Επικυρώνουμε και "απενεργοποιούμε" το γραφικό περιβάλλον:

informiguel ~ $ sudo /etc/init.d/lxdm στάση

Στη συνέχεια εκτελούμε τη διαμόρφωση X:

informiguel ~ $ sudo X-διαμόρφωση

Δημιουργείται ένα αρχείο με το όνομα "xorg.conf.new", το οποίο πρέπει να μεταφέρουμε στον ιστότοπό σας και να τροποποιήσουμε:

informiguel ~ $ mv xorg.conf.new /etc/X11/xorg.conf

Εάν όλα είναι σωστά και θέλουμε να επανεκκινήσουμε το γραφικό περιβάλλον:

informiguel ~ $ sudo /etc/init.d/lxdm έναρξη

Υπάρχει μια άλλη λύση που μπορεί να είναι καλύτερη, ξεκινήστε με μια διανομή Linux στο "CD Live" και αντιγράψτε το αρχείο του οποίου η πλήρης διαδρομή είναι "/etc/X11/xorg.conf" και επικολλήστε το στη διανομή σας. Εάν αυτή η διανομή ανίχνευσε σωστά την οθόνη, τα προβλήματα έχουν τελειώσει, διαφορετικά θα πρέπει να επεξεργαστείτε το αρχείο με τα δεδομένα της ανανέωσης της οθόνης και την ανάλυση που θέλετε. Για παράδειγμα, έπρεπε να προσθέσω τα ακόλουθα έτσι ώστε η σόδα να είναι επαρκής:

Ενότητα "Αναγνωριστικό οθόνης" Γενική οθόνη "Επιλογή" DPMS "HorizSync 30-70 VertRefresh 50-120 Modeline" 1024x768_85.00 "94.39 1024 1088 1200 1376 768 769 772 807 -HSync + Vsync Option" PreferredMode "" 1024x768_85.00 "EndSection Ενότητα "Αναγνωριστικό οθόνης" Προεπιλεγμένη οθόνη "Συσκευή" ATI Technologies, Inc. Radeon RV250 If [Radeon 9000 Pro] "Monitor" Γενική οθόνη "DefaultDepth 24 Option" AddARGBGLXVisuals "" True "Option" Metamode "" 1024x768_85.00 +0+ 0 "Option" UseEdid "" False "SubSection" Display "Depth 1 Modes" 1024x768 "" 800x600 "" 640x480 "EndSubSec ................... κλπ

Πολύ σημαντικό, αναζητήστε τα τεχνικά χαρακτηριστικά της οθόνης για να γνωρίζετε τον κατακόρυφο και οριζόντιο συγχρονισμό. Όπως μπορείτε να δείτε στην εικόνα, το "Modeline" είναι αυτό που υπολογίστηκε με την εντολή "cvt".

Μόλις γίνουν οι απαραίτητες αλλαγές, όλα είναι έτοιμα να εκτελεστούν αυτόματα την επόμενη φορά που θα ξεκινήσετε τον υπολογιστή. Το πρόβλημα λύθηκε.

Τώρα, πώς εξηγείτε σε ένα από τα Windows ή το Mac, το συναίσθημα που αισθάνεται όταν αισθάνεστε τον «έλεγχο» του μηχανήματος (και όχι το αντίστροφο);

Μου φαίνεται ότι είμαστε είδος υπό εξαφάνιση… 

Όσοι θέλουν να συνεχίσουν να εμβαθύνουν τις γνώσεις τους για το xrandr, δεν σταματούν να τις διαβάζουν παλιά αντικείμενα δημοσιεύτηκε σε αυτό το ιστολόγιο.

Ευχαριστώ Miguel Suárez Patiño!
Θέλετε να συμμετάσχετε στο μηνιαίο διαγωνισμό μας και συμβάλλετε στην κοινότητα?
Απλά πρέπει να μας στείλετε ένα ταχυδρομείο συμπεριλαμβανομένου του δικού σας κόλπου ή μίνι-φροντιστηρίου.