Comment définir une résolution personnalisée à laide de xrandr lorsque la résolution nest pas disponible dans ' Paramètres daffichage '

Je « suis un nouvel utilisateur Linux essayant de changer la résolution de lécran car il ny a pas doption sous laffichage. Jai réussi à ajouter de nouvelles résolutions par hasard en suivant le guide en ligne. Je nai pas de GPU , Je ne sais pas si cest le problème? Voici ma xrandr -q sortie.

root@kali:~# xrandr -q xrandr: Failed to get size of gamma for output default Screen 0: minimum 1280 x 1024, current 1280 x 1024, maximum 1280 x 1024 default connected 1280x1024+0+0 0mm x 0mm 1280x1024 0.0* 1920x1200_60.00 (0x145) 193.2MHz h: width 1920 start 2056 end 2256 total 2592 skew 0 clock 74.6KHz v: height 1200 start 1203 end 1209 total 1245 clock 59.9Hz 1440x900_59.90 (0x156) 106.3MHz h: width 1440 start 1520 end 1672 total 1904 skew 0 clock 55.8KHz v: height 900 start 901 end 904 total 932 clock 59.9Hz 

Commentaires

  • xrandr -q nest pas répertorié dans leur manuel.

Answer

Voici les étapes nécessaires pour ajouter une nouvelle résolution personnalisée et lappliquer. Les étapes suivantes concernent lajout dune résolution de 1 920 x 1 080, mais vous pouvez lutiliser pour toute autre résolution de votre choix. Mais assurez-vous que votre moniteur et les graphiques intégrés prend en charge cette résolution.

 # First we need to get the modeline string for xrandr # Luckily, the tool "gtf" will help you calculate it. # All you have to do is to pass the resolution & the- # refresh-rate as the command parameters: gtf 1920 1080 60 # In this case, the horizontal resolution is 1920px the # vertical resolution is 1080px & refresh-rate is 60Hz. # IMPORTANT: BE SURE THE MONITOR SUPPORTS THE RESOLUTION # Typically, it outputs a line starting with "Modeline" # e.g. "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync # Copy this entire string (except for the starting "Modeline") # Now, use "xrandr" to make the system recognize a new # display mode. Pass the copied string as the parameter # to the --newmode option: xrandr --newmode "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync # Well, the string within the quotes is the nick/alias # of the display mode - you can as well pass something # as "MyAwesomeHDResolution". But, careful! :-| # Then all you have to do is to add the new mode to the # display you want to apply, like this: xrandr --addmode VGA1 "1920x1080_60.00" # VGA1 is the display name, it might differ for you. # Run "xrandr" without any parameters to be sure. # The last parameter is the mode-alias/name which # you"ve set in the previous command (--newmode) # It should add the new mode to the display & apply it. # Usually unlikely, but if it doesn"t apply automatically # then force it with this command: xrandr --output VGA1 --mode "1920x1080_60.00"  

Original s ource: https://gist.github.com/debloper/2793261

Jai également écrit un script qui effectue toutes ces étapes automatiquement. Vous pouvez lessayer si les étapes ci-dessus vous semblent trop compliquées: https://gist.github.com/chirag64/7853413

Commentaires

  • Échec de la toute dernière étape …
  • Quelle erreur avez-vous obtenue? Essayez le script automatisé que jai lié à la fin de la réponse.
  • Lorsque jexécute votre fichier chmod +x Desktop/xrandr.sh Je ne ressens aucune erreur ou aucun changement.
  • chmod +x Desktop/xrandr.sh ne vous donne que les autorisations pour exécuter ce fichier. Vous devez lexécuter en exécutant Desktop/xrandr.sh.
  • Au lieu de gtf, vous pouvez utiliser cvt, par exemple cvt 1920 1080, qui produit le même résultat que gtf, mais il calcule également un taux de rafraîchissement valide. (Le fait de donner manuellement le taux de rafraîchissement à gtf peut ne pas toujours donner les valeurs de sortie prises en charge).

Réponse

Loption --size / -s peut être utilisée:

xrandr -s 1440x900 

Doit fonctionner avec RandR version 1.1 ou plus récente.

Commentaires

  • Quand je fais cela, la réponse est: taille 1440×900 introuvable dans les modes disponibles
  • @nick Daprès le résultat que vous avez inclus dans la question que jai déduite, il devrait être disponible. Quest-ce que ‘ est la sortie de xrandr --verbose?
  • xrandr: Impossible dobtenir la taille du gamma pour la sortie par défaut Écran 0 : minimum 1024 x 768, courant 1024 x 768, maximum 1024 x 768 connecté par défaut 1024×768 + 0 + 0 (0x138) normal (normal) 0 mm x 0 mm Identifiant: 0x137 Horodatage: 5048 Sous-pixel: inconnu Clones: CRTC: 0 CRTC: 0 Transformer : 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 filtre:
  • 1024×768 (0x138) 0,0MHz * courant h: largeur 1024 début 0 fin 0 total 1024 biais 0 horloge 0,0KHz v: hauteur 768 début 0 fin 0 total 768 horloge 0.0Hz
  • Il semble donc que la seule résolution disponible soit 1024×768. Cette résolution est-elle celle que vous souhaitez définir?

Réponse

Jai eu le même problème. Dans les paramètres daffichage, la résolution maximale était de 1280×720. Donc:

  1. en utilisant la commande xrandr, jai vu le nom de ce moniteur et la liste de résolution.
  2. Jai exécuté le script: xrandr –output {nom du moniteur} – -mode {resolution}

Par exemple:

xrandr --output DP-2-1 --mode 2560x1440 

Réponse

Voici ce que je devais faire sur un #IntelMaker #Joule afin de le faire fonctionner dans la résolution native avec un SUNFOUNDER 7 INCH TFT COLOR MONITOR, qui est répertorié comme ayant une résolution de 1024 * 600, mais a été choisi à la place en 1280×720.

Premièrement, Intel Joule avec Linux 4.4.15-yocto-standard x86_64 ne semble pas avoir gtf(1) , donc, jai dû utiliser une machine différente pour calculer les nombres appropriés:

$ gtf 1024 600 60 # 1024x600 @ 60.00 Hz (GTF) hsync: 37.32 kHz; pclk: 48.96 MHz Modeline "1024x600_60.00" 48.96 1024 1064 1168 1312 600 601 604 622 -HSync +Vsync $ 

Ensuite, créez un fichier avec les commandes appropriées:

# cat > 1024x600.sh xrandr --newmode "1024x600_60.00" 48.96 1024 1064 1168 1312 600 601 604 622 -HSync +Vsync xrandr --addmode HDMI1 "1024x600_60.00" xrandr --output HDMI1 --mode "1024x600_60.00" ^D # chmod +x 1024x600.sh 

Ensuite, startx ou startxfce4, et exécutez ./1024x600.sh, après quoi, ce qui suit sera signalé par xrandr(1) .

# xrandr Screen 0: minimum 8 x 8, current 1024 x 600, maximum 32767 x 32767 DP1 disconnected (normal left inverted right x axis y axis) HDMI1 connected 1024x600+0+0 (normal left inverted right x axis y axis) 697mm x 392mm 1280x720 60.00 + 50.00 59.94 1920x1080 60.00 50.00 59.94 1920x1080i 60.00 50.00 59.94 1280x1024 75.02 1440x900 74.98 59.90 1024x768 75.08 70.07 60.00 1024x600 60.00 800x600 72.19 75.00 60.32 56.25 720x576 50.00 720x576i 50.00 720x480 60.00 59.94 720x480i 60.00 59.94 640x480 75.00 72.81 60.00 59.94 720x400 70.08 1024x600_60.00 60.00* HDMI2 disconnected (normal left inverted right x axis y axis) VIRTUAL1 disconnected (normal left inverted right x axis y axis) # 

Commentaires

  • La réponse inclut les noms dutilisateurs et dhôte personnels non pertinents, et ne ‘ t séparez clairement les commandes de leur sortie – ce qui peut être déroutant pour les lecteurs. Une méthode standard pour transmettre que quelque chose est une commande serait de le préfixer simplement avec $. Le WM par défaut de Kali ‘ est également GNOME, pas XFCE, peut-être devrait-il être clair que la commande startxfce4 est uniquement destinée aux utilisateurs exécutant XFCE version 4.La probabilité que de nombreux autres utilisateurs exécutent exactement Linux 4.4.15-yocto-standard x86_64 ne ‘ me semble élevée, donc je ‘ d écrire plutôt que gtf (ou cvt) doit être installé en premier.

Réponse

Enregistrez le script et lancez-le (bash script.sh 1024 720 60 ), vous pouvez définir la résolution personnalisée avec ce script, mais cest une solution temporaire chaque fois que vous vous déconnectez et vous reconnectez, vous devez réexécuter le script.vous pouvez ajouter 2 lignes de code dans votre profil bash.bashrc.pour exécuter le script directement à partir de terminal.

#!/bin/bash # xrandr.sh #If no argument is specified, ask for it and exit if [[ -z "$@" ]]; then echo "An argument is needed to run this script"; exit else arg="$@" #Basic check to make sure argument number is valid. If not, display error and exit if [[ $(($(echo $arg | grep -o "\s" | wc --chars) / 2 )) -ne 2 ]]; then echo "Invalid Parameters. You need to specify parameters in the format "width height refreshRate"" echo "For example setResolution "2560 1440 60"" exit fi #Save stuff in variables and then use xrandr with those variables modename=$(echo $arg | sed "s/\s/_/g") display=$(xrandr | grep -Po ".+(?=\sconnected)") if [[ "$(xrandr|grep $modename)" = "" ]]; then xrandr --newmode $modename $(gtf $(echo $arg) | grep -oP "(?<="\s\s).+") && xrandr --addmode $display $modename fi xrandr --output $display --mode $modename #If no error occurred, display success message if [[ $? -eq 0 ]]; then echo "Display changed successfully to $arg" fi fi 

Réponse

Jai couru:

xrandr --verbose 

qui ma donné une liste de balises de taille et les valeurs de pixels correspondantes

puis jai utilisé

xrandr -s 6 

pour sélectionner la résolution 1920 x 1080

A nswer

Mon problème est que la résolution du notebook a ceci:

Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767 eDP1 connected 1920x1080+0+0 ... 1366x768 60.00*+ 47.98 <=== MaxResolution (Default/Primary) 1360x768 59.80 59.96 1280x720 60.00 ... 

Mon écran principal / par défaut est 1366×768.

Mais je voudrais tester une résolution de 1920×1080 (DesireResolution) dans mon notebook.

Jai tout essayé.

Je nai pas pu trouver de solution parce que mon notebook naccepte pas les commandes addmode ou newmode de xrandr pour augmenter la résolution, comme cette demande de question stackexchange.

Jai donc fait des calculs!

1920/1366 = 1.4055636896 1080/768 = 1.40625 

essentiellement DesireResolution / MaxResolution

et exécutez cette commande

xrandr --output eDP1 --mode 1366x768 --panning 1920x1080 --scale 1.40556369x1.40625

Si vous avez besoin de restaurer la résolution dorigine

xrandr --output eDP1 --mode 1366x768 --panning 1366x768 --scale 1x1 

Vous pouvez vous adapter à la résolution de votre choix.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *