I denna möjlighet förklarar vi hur man använder xrandr, ett terminalverktyg som används för att korrekt la upplösning av din bildskärm, deras förfriskningar, etc. och det tjänar till och med att manipulera mer än en bildskärm. |
Den normala användaren, främst Windows eller Apple, förstår inte så bra människor som brinner för Linux och som tillbringar mycket tid i kommandokonsolen och skriver "konstiga saker".
Vad jag ska berätta för dig idag är en av de dagar då du känner dig särskilt stolt över Linux. Det här är historien:
Min kära gamla HP Pavilion mx70 CRT-skärm, den erbjuder mig ett brett utbud av upplösningar, men min Linux Mint LXDE känner inte igen den och den visar mig en bra upplösning på 1024 × 768 men med bara 60 hz förfriskning, vilket inte är mycket bra för ögonen. I teorin kan skärmen nå 85 Hz med den upplösningen.
Och vad gör jag nu? Tja, det vanliga, gå till kommandoraden och SPELA!
Använda xrandr
För att ändra upplösningarna finns kommandot "xrandr" (X Ändra storlek och rotera). Med det här kommandot konfigurerar du skärmupplösningen, men du kan också lägga till nya upplösningar så länge som skärmen stöder dem.
För att se de upplösningar som upptäcks av systemet, ring bara detta kommando och se resultatet, i mitt fall:
informiguel ~ $ xrandr Skärm 0: minimum 320 x 200, ström 1024 x 768, max 4096 x 4096 VGA-0 ansluten 1024x768 + 0 + 0 (normal vänster inverterad höger x axel y-axel) 0mm x 0mm 1024x768 60.0 800x600 60.3 56.2 848x480 60.0 640x480 59.9 S-video frånkopplad (normal vänster inverterad höger x axel y-axel)
Som du kan se, för en upplösning på 1024 × 768 erbjuder den bara 60.0 Hz.
Tja, jag ska lägga till den upplösning där jag är bäst och som min bildskärm erbjuder: 1024 × 768 vid 85 Hz. Naturligtvis har varje bildskärm sina egna egenskaper som måste konsulteras.
Problemet är att för att skapa en ny upplösning behöver du lite "väldigt konstiga" data som vertikal, horisontell, maximal, minimal, total frekvens, ... Men Linux har också lösningen med kommandot "cvt", ett verktyg att beräkna VESA-lägen krävs för att uppnå upplösning. Tja, om jag vill ha 1024 × 768 vid 85 Hz skriver jag:
informiguel ~ $ cvt 1024 768 85 # 1024x768 84.89 Hz (CVT 0.79 M3) hsync: 68.68 kHz; pclk: 94.50 Mhz Modeline "1024x768_85.00" 94.50 1024 1096 1200 1376 768 771 -hsync + vsync
Du kan också prova "gtf" som gör ungefär samma:
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 -HSync + Vsync
Och på detta sätt visas "Modeline" som jag måste använda med "xrandr". Var inte panik om hzs inte riktigt matchar (94.50 istället för 85).
Steg för att lägga till den upplösningen genom att kopiera den "erhållna" modellinen: (en detalj, när du lägger till ett alternativ med dess långa namn som "newmode" föregås det av två bindestreck, kanske de märks inte mycket, medan andra gånger bara 2 bindestreck är som i fallet med "hsync")
informiguel ~ $ xrandr --newmode "1024x768_85.00" 94.50 1024 1096 1200 1376 768 771 -hsync + vsync
Om vi kontrollerar resultatet:
informiguel ~ $ xrandr Skärm 0: minimum 320 x 200, ström 1024 x 768, max 4096 x 4096 VGA-0 ansluten 1024x768 + 0 + 0 (normal vänster inverterad höger x axel y-axel) 0 mm x 0 mm 1024x768 60.0 * 800x600 60.3 56.2 848x480 60.0 640x480 59.9 S-video frånkopplad (normal vänster inverterad höger x axel y-axel) 1024x768_85.00 (0x137) 94.5MHz h: bredd 1024 start 1096 slut 1200 totalt 1376 skev 0 klocka 68.7KHz v: höjd 768 start 771 slut 775 totalt 809 klocka 84.9Hz
Du kan se den nya "Modeline" skapad. Jag gillar hur “Modeline” låter! Om jag en dag har en katt kommer jag att kalla det så.
Tja, vi fortsätter, nu måste jag lägga till det här nya läget i listan över tillgängliga lägen:
informiguel ~ $ xrandr --addmode VGA-0 1024x768_85.00
"VGA-0" sak, om du tittar på resultaten av "xrandr", är vad mitt grafikkort heter. Vi ser resultatet, perfekt!
informiguel ~ $ xrandr Skärm 0: minimum 320 x 200, ström 1024 x 768, max 4096 x 4096 VGA-0 ansluten 1024x768 + 0 + 0 (normal vänster inverterad höger 1024x768 60.0 * 800x600 60.3 56.2 848x480 60.0 640x480 59.9 1024x768_85.00 84.9 S -video frånkopplad (normal vänster inverterad höger x axel y-axel)
Nu återstår bara att tillämpa den upplösningen på bildskärmen:
informiguel ~ $ xrandr --output VGA-0 --läge 1024x768_85.00
En blinkning och monitorn ser snyggare ut än någonsin.
Vad händer om jag vill lägga till en upplösning på 800 × 600 med en uppdateringsfrekvens på 60 hz (jag ser att det finns 2 förfriskningar tillgängliga i det här läget, 60.3 och 56.2)? Det kan göras på detta sätt:
informiguel ~ $ xrandr -s 800x600 -r 60
Observera att läsk användes 60 istället för 60.3, eftersom den senare inte erkände det. Låt oss nu gå tillbaka till den vackra upplösningen:
reportiguel ~ $ xrandr -s 1024x768_85.00
Om jag tog förfriskningen vid 60 Hz som standard skriver vi:
informiguel ~ $ xrandr -s 1024x768_85.00 -r 85
Vad händer om jag har fel och vill ta bort allt? Nåväl ingenting, låt oss åka dit. För att radera denna upplösning från listan över tillgängliga lägen:
informiguel ~ $ xrandr --delmode VGA-0 1024x768_85.00
Om jag ser resultatet:
informiguel ~ $ xrandr Skärm 0: minimum 320 x 200, ström 1024 x 768, max 4096 x 4096 VGA-0 ansluten 1024x768 + 0 + 0 (normal vänster inverterad höger x axel y-axel) 0 mm x 0 mm 1024x768 60.0 * 800x600 60.3 56.2 848x480 60.0 640x480 59.9 S-video frånkopplad (normal vänster inverterad höger x axel y-axel) 1024x768_85.00 (0x136) 94.5MHz h: bredd 1024 start 1096 slut 1200 totalt 1376 skev 0 klocka 68.7KHz v: höjd 768 start 771 slut 775 totalt 809 klocka 84.9Hz
Det har redan tagits bort från listan, men nu visas data när de skapades (–newmode) tidigare. För att ta bort detta också:
informiguel ~ $ xrandr --rmmode 1024x768_85.00
Vi ser resultatet:
informiguel ~ $ xrandr Skärm 0: minimum 320 x 200, ström 1024 x 768, max 4096 x 4096 VGA-0 ansluten 1024x768 + 0 + 0 (normal vänster inverterad höger x axel y-axel) 0mm x 0mm 1024x768 60.0 * 800x600 60.3 56.2 848x480 60.0 640x480 59.9 S-video frånkopplad (normal vänster inverterad höger x axel y-axel)
Allt var som i början av artikeln ...
Och slutligen vet jag att du är en joker, så prova det här:
Skriv först detta, vilket inte gör några ändringar just nu:
informiguel ~ $ xrandr --output VGA-0 --rotera normalt
Och försök nu följande med hänsyn till att för att ta bort skämtet måste du upprepa föregående instruktion (välj det bara med markörknapparna):
informiguel ~ $ xrandr --output VGA-0 - rotera vänster
Hittills är allt väldigt trevligt men det finns ett problem när du startar om datorn går inställningarna förlorade. Jag tycker inte att det är en bra idé att justera skärmuppdateringen varje gång vi går in i datorn, det måste finnas ett sätt att låta den fixas. Gör det.
I Linux finns en konfigurationsfil som lite efter lite och eftersom hårdvaran kändes bättre av distributionerna glömdes den bort. Dess fullständiga sökväg är "/etc/X11/xorg.conf". Konfigurationsfilen för alla parametrar som får den grafiska miljön att fungera.
I LXDE (lätt X11-skrivbordsmiljö) finns inte filen, så den måste skapas, vilket inte är lätt. En möjlig lösning är att göra följande:
Vi lämnar den grafiska miljön, vi går till en terminal genom att trycka på CTRL + ALT + F1, kom ihåg att den grafiska miljön är CTRL + ALT + F7). Vi validerar och "stänger av" den grafiska miljön:
informiguel ~ $ sudo /etc/init.d/lxdm stopp
Därefter kör vi X-konfigurationen:
informiguel ~ $ sudo X -konfigurera
En fil med namnet "xorg.conf.new" skapas som är den som vi måste flytta till din webbplats och ändra:
informiguel ~ $ mv xorg.conf.new /etc/X11/xorg.conf
Om allt är korrekt och vi vill starta om den grafiska miljön:
informiguel ~ $ sudo /etc/init.d/lxdm start
Det finns en annan lösning som kan vara bättre, du börjar med en Linux-distribution på "CD Live" och kopierar filen vars fullständiga sökväg är "/etc/X11/xorg.conf" och klistrar in den i din distribution. Om distributionen upptäckte bildskärmen väl är problemen över, annars måste du retuschera filen med data för den skärmuppdatering och upplösning du vill ha. Som ett exempel var jag tvungen att lägga till följande så att läsket var tillräckligt:
Avsnitt "Monitor" Identifier "Generisk monitor" Alternativ "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 Avsnitt "Skärm" Identifier "Standardskärm" Enhet "ATI Technologies, Inc. Radeon RV250 Om [Radeon 9000 Pro]" Övervaka "Allmän bildskärm" StandardDjup 24 Alternativ "AddARGBGLXVisuals" "True" Option "Metamode" "1024x768_85.00 +0+ 0 "Alternativ" UseEdid "" Falsk "Underavsnitt" Display "Djup 1-lägen" 1024x768 "" 800x600 "" 640x480 "EndSubSec ................... etc
Mycket viktigt, leta efter bildskärmens tekniska egenskaper för att känna till vertikal och horisontell synkronisering. Som framgår av bilden är "Modeline" den som beräknas med kommandot "cvt".
När nödvändiga ändringar har gjorts är allt klart att köras automatiskt nästa gång du startar datorn. Problemet löst.
Hur förklarar du för en av Windows eller Mac vilka känslor som känns när man känner "kontrollen" över maskinen (och inte tvärtom)?
Det verkar som om vi är en hotad art ... 🙁
De som vill fortsätta fördjupa sina kunskaper om xrandr, slutar inte läsa dessa gamla föremål publiceras på den här bloggen.
Du måste bara skicka oss en post inklusive ditt eget trick eller minitutorial.
Hej vän, hur mår du? Tack för handledningen, den är väldigt förklarad men det fungerar verkligen inte för mig.
Jag ska förklara för dig, i den del där du lägger till skärmen och placerar vga fungerar det inte för mig för i konfigurationslistan i början får jag inte en vga-skärm, bara något från standard och jag kan gör det inte för att jag tror att operativsystemet inte är där för att känna igen videodrivrutinen, i det här fallet linux maint 10 lts, lägg inte den nyaste eftersom operativsystemet ger ett fel med pc-processorn, en utech minilaptoc
Samma sak hände mig, istället för VGA-0 satte standard.
Jag ville justera upplösningen på en 32 bildskärm / tv i en ny installation av solusOS din artikel är väldigt tydlig och tydlig, även lösningen var den du gav till en fråga (monitor autojustering)
Jag gratulerar dig.
gäller
Mycket ROLL för att konfigurera skärmupplösningen och hertz !!! ... I Windows med tre klick löser jag det !!! ... och jag har också kontroll över «Maskinen» !!!! ...
FEL: Om skärmen inte känner igen dig i Windows på grund av brist på drivrutiner kan du INTE göra någonting i Windows.
I Linux, om drivrutinen känner igen det, behöver du inte göra det heller.
Tyvärr, men ditt försök att "gilla" Windows i det här fallet misslyckades ...
MISSTAG. I Windows, som i Linux, från en grafisk skärmkonfigurationsapplikation kan du göra några allmänna saker, men när du vill få ut det mesta av en bildskärm eller operativsystemet inte upptäcker det helt bra, från Windows kommer du inte att kunna gör något, desde Linux Du har fortfarande en chans till om det är fysiskt möjligt. I själva verket, på Windows, fungerade skärmen som denna artikel gjordes bara bra med Windows 98 med tillverkarens drivrutiner. Från högre versioner och framåt var det mycket dåliga skärmförfriskningar.
mycket bra handledning, men jag ställer dig en fråga. Om du använder alla kommandon och att skärmen förblir i önskad upplösning, men flyttad åt sidan, vad ska man göra?
Det löses med knapparna på skärmen. Det finns vanligtvis en knapp med en meny där du kan "flytta" skärmen för att justera den.
hälsningar
Det är en bra fråga. Jag är inte säker på att det finns något sätt att korrigera det med hjälp av programvara. I allmänhet verkar jag komma ihåg att det kan korrigeras med hjälp av bildskärmsknapparna.
Kram! Paul.
Du är ett geni ... Jag har försökt ställa in monitorn hela dagen utan framgång ... tills nu. Tack.
Så bra! Jag är väldigt glad att det har tjänat dig.
En kram! Paul.
Utmärkt och mycket komplett handledning !!
fantastisk handledning ...
Dokumentstycke .. Mancantado !!!!!
Wow fantastiskt !!!! den här artikeln och bra idé för Linux nybörjare.
Jag har följt alla steg. Och på inget sätt räddar han mig någonting. När jag startar om datorn är den i den gamla konfigurationen och jag måste återställa allt manuellt. Snälla du…. Lite hjälp ...
Gå ur problem med det här rekommenderade verktyget när du har en dålig upplösning och inte hittar ett sätt att ändra det, med en xrandr -s 0 räcker det!
Tack, det hjälpte mig mycket.
Tack,
Jag hade försökt lösa problemet i många dagar, jag löste det på 5 minuter, mycket väl förklarat
TACK för att du delar dina kunskaper, människor som du gör fri programvara mer tillgänglig och bra
en kram
Tack så mycket.
Jag tyckte att det var mycket användbart.
En hälsning.
det ger mig ett fel det säger att det inte kan hitta vga jag sätter vga-1 vga-2 vga-0 och inget fungerar jag sätter VGA det säger mig inte att det inte kan hittas vad jag gör
Mycket bra och fullständig förklaring av xrandr-kommandot. I gnome ändras konfigurationen av filen "xorg.conf" varje gång jag loggar in och jag kan skapa ett skript så att varje omstart är korrekt inställd.
Hälsningar!
Efter en lång tid att söka och undersöka på nätet kunde jag lösa mitt problem med denna handledning, mycket väl förklarad och tydlig.
tack
Jag har alltid använt Debian och zero drama för att konfigurera saker utan att behöva gå till den detaljnivån.
Men nu i Mint kunde jag inte hitta ett sätt att återställa min bildskärm till det normala och med "xrandr -s 0" på konsolen fungerade det väldigt bra.
Faktum är att ja, mycket pod som Donatien säger, speciellt när du byter distro för att göra saker "enklare".
Tja ...
.
Fan att du är jättebra, tack så mycket upplösningen på en extern bildskärm på 1920X1080 60Hz, jag är fortfarande 100 med handledningen.
Du är välkommen, mästare! En kram! Paul.
Det fungerade perfekt för mig, bara istället för VGA LVDS verkade för mig, så jag kopierade allt detsamma men ändrade VGA-0 för LVDS och allt fungerade perfekt
Helt enkelt perfekt, jag skulle bjuda in dig på en kaffe om jag kunde.
Haha! Tack!
En kram, Pablo.
Hej, kan du hjälpa mig, min bildskärm är inte centrerad och det ger mig en upplösning på 1920 × 1080 på 60.1 * + vilket inte är rätt eftersom det inte är centrerat, upplösningen på min dator är 1600 × 900 men jag vet inte Hur många Hz måste jag ställa in det, när jag gör cvt får jag följande, hur många Hz måste jag ställa in det?
drakkpac drakk # cvt 1600 900
# 1600 × 900 59.95 Hz (CVT 1.44M9) hsync: 55.99 kHz; pclk: 118.25 MHz
Modeline «1600x900_60.00» 118.25 1600 1696 1856 2112 900 903 908 -hsync + vsync
Hej Drakk!
Vi rekommenderar att du ställer den här frågan i vår frågestund Fråga DesdeLinux så att hela samhället kan hjälpa dig med ditt problem.
En kram, Pablo.
Tack så mycket det fungerade perfekt. Problemet är att jag inte vet hur man redigerar filen (eller vilken fil som ska redigeras) så att den förblir konfigurerad så här för alltid, kan någon hjälpa mig? Jag använder ubuntu studio 14.04 (om jag inte tar fel använder den xfce)
när du gör detta steg »informiguel ~ $ xrandr –newmode« 1024x768_85.00 »94.50 1024 1096 1200 1376 768 771 775 809 -hsync + vsync» felet visas «xrandr: Det gick inte att få storleken på gamma för utdata standard»
God eftermiddag vän,
Utmärkt handledning Jag uppnådde den så att upplösningen uppträdde och allt, men när jag väljer det ger det mig ett fel som otillräckligt virtuellt utrymme, min bildskärm ger mig en upplösning på 1920 × 1080 och jag vill minska denna upplösning dock när jag gör en xrendr verkar för mig minsta ström och maximalt samma som 1920 × 1080, jag försökte kommandona som säger om videon fungerar korrekt och det är så här, växlarna visas och meddelandet säger mig JA!.
Jag skulle vilja veta om det finns ett sätt att ställa in minsta upplösning till en annan, inte samma, för att ange de värden jag vill, förresten så säger skärmens frekvens med den upplösning jag har att det är 0.
Det har fungerat för mig till perfektion och jag är redan en expert i fråga om återupplivning tack vare dig! Jag kommer att dela bloggen tack så mycket ... salu2
Hej, hur mår du, mycket bra förklaring, men jag har ett problem, för att skapa den permanenta konfigurationsfilen bestämmer du att jag behöver det (jag är i KaliLinux och xorg.conf-filen finns inte
informiguel ~ $ sudo /etc/init.d/lxdm stopp
men lxdm-filen finns inte, och när jag fortsätter berättar det för mig att jag måste stoppa servern för att skapa xorg.conf-filen ... så vilken fil måste jag stoppa ?????
Mycket bra artikel Jag kunde lägga till den upplösning jag ville ha (1360 × 768) men det tillåter mig inte att välja den upplösningen, det ger mig följande fel:
bilden där jag kunde lägga till upplösningen:
Skärm 0: minimum 640 x 480, ström 1024 x 768, max 1360 x 768
standardansluten 1024 × 768 + 0 + 0 0mm x 0mm
1024 × 768 0.00 *
800 × 600 0.00
640 × 480 0.00
1360x768_60.00 60.00
fel när du försöker välja den upplösningen
: ~ $ xrandr –output standard –läge 1360x768_60.00 –primär
xrandr: Det gick inte att få storleken på gamma för utgångsstandard
xrandr: Konfigurera crtc 0 misslyckades
fel som sudo:
sudo xrandr –output standard –läge 1360x768_60.00 –primär
Inget protokoll specificerat
Kan inte öppna skärmen: 0
Vet någon vad det kan vara? Sanningen är att jag har läst många forum och provat många saker men jag kan inte fixa det och det värsta är att jag inte kan stänga servern X (eller trycka på ctrl + alt + f1) på grund av den upplösning som denna inställning hela skärmen är pixelerad i färgade rutor.
från tackar redan så mycket
Hej, tack så mycket för denna typ av handledning, men jag har ett litet problem.
När du använder kommandot ~ $ xrandr -addmode 1336x768_85.00 berättar terminalen mig
xrandr: okänt alternativ '-addmode'
Vad kan hända här? Jag har redan provat addmode utan skriptet och det säger mig samma sak. Jag klargör att jag har Debian 8.5 och alla steg innan det fungerade bra.
Tack på förhand.
är "–addmode" utan citattecken, det uppstod ett fel vid skrivning av artikeln.
bror du är ett geni, tack så mycket för handboken, jag blev trött på att leta efter hur man får upplösningen 1280 × 960 vid 60 hz och det var omöjligt för mig i xubuntu tills jag googlade den här handledningen, stort tack
PERFECTOO! ! !
Tack, det var jättebra.
Väl förklarad, steg för steg. Man lär sig också.
Tja, jag har redan gjort allt som de berättar för mig, men när jag lägger till det genererar det detta fel och jag vet inte vad det betyder:
X Fel vid misslyckad begäran: BadMatch (ogiltiga parameterattribut)
Större opkod för misslyckad begäran: 140 (RANDR)
Mindre opcode för misslyckad begäran: 18 (RRAddOutputMode)
Serienummer för misslyckad begäran: 30
Aktuellt serienummer i utflödet: 31
kan du hjälpa mig?
Jag visar dig helskärmen
root @ d4m: ~ # xrandr
Skärm 0: minimum 8 x 8, ström 1024 x 600, max 32767 x 32767
LVDS1 ansluten primär 1024 × 600 + 0 + 0 (normal vänster inverterad höger x axel y-axel) 220 mm x 130 mm
1024 × 600 60.19 * +
800 × 600 60.32 56.25
640 × 480 59.94
512 × 300 60.00
VGA1 frånkopplad (normal vänster inverterad höger x axel y-axel)
VIRTUAL1 frånkopplad (normal vänster inverterad höger x axel y-axel)
root @ d4m: ~ # xrandr –newmode 1024x768_60.00 63.50 1024 1072 1176 1328 768 771 -hsync + vsync
root @ d4m: ~ # xrandr –addmode LVDS1 1024x768_60.00
X Fel vid misslyckad begäran: BadMatch (ogiltiga parameterattribut)
Större opkod för misslyckad begäran: 140 (RANDR)
Mindre opcode för misslyckad begäran: 18 (RRAddOutputMode)
Serienummer för misslyckad begäran: 30
Aktuellt serienummer i utflödet: 31
root @ d4m: ~ # cvt 1024 768 60
# 1024 × 768 59.92 Hz (CVT 0.79M3) hsync: 47.82 kHz; pclk: 63.50 MHz
Modeline «1024x768_60.00» 63.50 1024 1072 1176 1328 768 771 -hsync + vsync
root @ d4m: ~ #
Så snart du kan hjälpa mig skulle jag uppskatta det eftersom jag är lärare och jag hjälper mina elever med det.
Du räddade mig!!. Underbar handledning.
Jag har två skärmar utanför den bärbara datorn (jag anger inte orsakerna lol) en ansluten med HDMI och den andra VGA. Den senare hade en upplösning på 1024 × 768 och tack vare din handledning lyckades jag ställa in den på 1920 × 1080.
Tack så mycket för allt 😉
xrandr: Det gick inte att få storleken på gamma för utgångsstandard
Skärm 0: minimum 640 x 480, ström 640 x 480, max 640 x 480
standardansluten primär 640 × 480 + 0 + 0 0mm x 0mm
640 × 480 73.00 *
bra, jag får det här när jag applicerar "xrandr" i terminalen. För närvarande är min upplösning väldigt stor, alternativet i inställningarna har redan försvunnit, där det är tomt och det finns ingen typ av upplösning. det är en kärna 3 och jag använder ubuntu 18.