68 votes

Comment puis-je rendre la personnalisation de xrandr permanente ?

J'avais l'habitude d'éditer le script de démarrage de la GDM (/etc/gdm/Init/Default) pour changer de façon permanente ma résolution d'affichage.

Comment puis-je faire cela avec LigthDM dans Ubuntu Oneiric ?

67voto

Douglas Squirrel Points 675

Modifier /etc/lightdm/lightdm.conf pour ajouter les options suivantes :

affichage-setup-script > appelle votre mycustomloginvideo.sh avant l'apparition de l'écran de connexion configuration de la session-script > appelle votre mycustomdesktopvideo.sh avant le début de la session de bureau de l'utilisateur

[SeatDefaults]
greeter-session=unity-greeter
user-session=ubuntu
# for your login screen, e.g. LightDM (Ubuntu 11.10) or GDM (11.04 or earlier)
display-setup-script=/usr/share/mycustomloginvideo.sh
# for your desktop session
session-setup-script=/usr/share/mycustomdesktopvideo.sh

Vous avez peut-être " arandr " L'outil GUI génère le sh script ci-dessus, en prenant les paramètres de la configuration X de votre session actuelle.

Assurez-vous que votre Shell Shell est exécutable :

chmod a+x /usr/share/mycustom*video.sh

et vous pouvez vérifier qu'il fonctionne (c'est-à-dire que vous n'avez pas de fautes de frappe ou d'erreurs de configuration dans votre fichier de configuration). xrandr ) simplement en l'exécutant dans un terminal :

/usr/share/mycustomdesktopvideo.sh

Si le script de connexion ne fonctionne pas pour une raison quelconque, votre machine peut ne pas terminer le processus de démarrage jusqu'à l'écran de connexion. Si le script de bureau échoue, vous pourriez ne pas obtenir de bureau après la connexion. Si vous configurez un moniteur externe, ces script échoueront lorsque vous le déconnecterez, et la session X ne démarrera pas.

25voto

theUg Points 1602

Je pense que vous pouvez ajouter les modes d'affichage à /etc/X11/xorg.conf .

Si vous n'avez pas de xorg.conf vous pouvez vous baser sur les éléments suivants. Vous devez remplacer les entrées par les noms Modeline , Driver y Modes avec les entrées correctes pour votre système. En fonction de votre matériel, vous pouvez avoir besoin d'entrées supplémentaires, par exemple si votre système possède plus d'une puce graphique.

Section "Monitor"
    Identifier    "Monitor0"
    Modeline "1280x1024_60.00"  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
    Modeline "1024x768_60.00"   63.50  1024 1072 1176 1328  768 771 775 798 -hsync +vsync
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Card0"
    Monitor        "Monitor0"
    SubSection "Display"
        Modes       "1280x1024_60.00" "1024x768_60.00"
    EndSubSection
EndSection

Section "Device"
    Identifier    "Card0"
    Driver        "nvidia"
EndSection

Si vous ne connaissez pas le nom du pilote vidéo utilisé par votre système, vous pouvez obtenir le nom suivant (si vous avez une puce graphique intel, le nom du pilote est simplement "intel") :

lshw -class display | grep "driver"

Les modélisations peuvent être générées avec cvt :

cvt <h-resolution> <v-resolution> [refresh]

11voto

Ben Noland Points 10060

Quelqu'un a posté une autre solution de contournement, mais je dois dire qu'elle n'a pas fonctionné pour moi. Cela pourrait probablement fonctionner pour vous. Dans mon cas, cela casse l'unité et je ne peux que déplacer le curseur de ma souris. Le panneau supérieur de l'indicateur d'application semble vide, mais après avoir débranché mon LCD, j'ai pu supprimer les lignes ajoutées et tout est revenu à la normale.

modifier le fichier /usr/sbin/lightdm-session

Voici à quoi ressemble maintenant la première partie de ce fichier :

#!/bin/sh
#
# LightDM wrapper to run around X sessions.

echo "Running X session wrapper"

# Load profile
for file in "/etc/profile" "$HOME/.profile" "/etc/xprofile" "$HOME/.xprofile"; do
  if [ -f  "$file" ]; then
     echo "Loading profile from $file";
     . "$file"
  fi
done

xrandr --newmode "1368x768_60.00" 85.25 1368 1440 1576 1784 768 771 781 798 -hsync +vsync
xrandr --addmode CRT1 1368x768_60.00
xrandr --output CRT1 --mode 1368x768_60.00

# Load resources

Notez que les paramètres de Xrandr doivent être modifiés pour correspondre aux vôtres.

6voto

faithinfriction Points 61

J'essaie de résoudre un problème similaire depuis un certain temps maintenant et j'ai trouvé une solution qui fonctionne pour moi, alors j'espère qu'elle vous aidera...

J'ai un vieil aspire one AOA110 dont j'ai cassé l'écran trop de fois et après avoir acheté un nouvel ordinateur portable, j'ai décidé d'essayer de le transformer en HTPC mais l'écran externe que j'ai n'est pas reconnu par X et j'ai dû le modifier de nombreuses fois pour qu'il fonctionne à la bonne résolution.

Voici ce que j'ai fait :

Après avoir utilisé ce http://ubuntuforums.org/showthread.php?t=1112186 Jusqu'à l'étape 5, j'ai pu trouver une résolution fonctionnelle et acceptable dans xrandr, mais cela ne fonctionnait pas sur l'écran de connexion du LightDM.

Ne suivez pas les étapes pour le rendre persistant dans le mode d'emploi ci-dessus, il peut fonctionner mais je pense que c'est la façon correcte de le faire dans 11.10. J'ai trouvé ce post sur l'ArchWiki https://wiki.archlinux.org/index.php/Xorg que j'ai adapté à mes besoins.

Créez d'abord un fichier ici : /etc/X11/xorg.conf.d/10-monitor.conf

Ensuite, ajoutez les détails X appropriés pour votre affichage - voici à quoi ressemblait le mien :

Section "ServerLayout"
Identifier     "DualSreen"
Screen       0 "Screen0"
Screen       1 "Screen1" RightOf "Screen0" #Screen1 at the right of Screen0
#Option         "Xinerama" "1" #To move windows between screens
EndSection

Section "Monitor"
Identifier     "LVDS1"
Option         "ignore" "true"
EndSection

Section "Monitor"
Identifier     "VGA1"
Option         "Enable" "true"
Modeline "1440x900_60.00"  106.47  1440 1520 1672 1904  900 901 904 932  -HSync +Vsync
EndSection

Section "Device"
Identifier     "Device0"
Driver         "intel"
Screen         0
EndSection

Section "Device"
Identifier     "Device1"
Driver         "intel"
Screen         1
EndSection

Section "Screen"
Identifier     "Screen0"
Device         "Device0"
Monitor        "VGA1"
DefaultDepth    24
Option         "TwinView" "0"
SubSection "Display"
    Depth          24
    Modes          "1440x900_60.00"
EndSubSection
EndSection

Section "Screen"
Identifier     "Screen1"
Device         "Device1"
Monitor        "LVDS1"
DefaultDepth   24
Option         "TwinView" "0"
SubSection "Display"
    Depth          24
EndSubSection
EndSection

Les éléments importants à ajouter se trouvent sous les rubriques appropriées Section "Monitor" inclure les Modeline que vous avez trouvé en utilisant gtf 1440 900 60.00 et ensuite sous les Section "Screen" y compris le bon Modes .

Vous remarquerez que ce que j'essayais de faire n'était pas seulement de régler la connexion VGA1 sur une résolution appropriée, mais aussi de lui dire de ne pas utiliser ma sortie LVDS1. Il est évident que vous devrez modifier la vôtre de manière appropriée pour correspondre au nombre de sorties et aux sections Device, Screen et Display de votre installation.

Désolé pour ce post épique, j'ai modifié les fichiers xorg.conf depuis un certain temps maintenant avec l'écran Hannspree que j'utilise et les anciennes configurations xorg.conf que j'utilisais avant 11.10 ne fonctionnent plus correctement ; c'est la seule solution que j'ai trouvée qui fonctionne.

Bonne chance !

5voto

Karl Points 51

J'ai eu un problème similaire avec mon ordinateur portable comme ci-dessus, et je voulais ajouter quelque chose à la conversation. Si vous ne vous souciez pas de la résolution de connexion (ce n'est pas mon cas), mais que vous voulez que l'espace de travail réel soit à la bonne résolution, vous pouvez ajouter les informations de votre moniteur à LightDM mais ne pas activer la pleine résolution avant de vous connecter.

J'ai juste ajouté le script suivant pour mon moniteur dans un fichier : lighdmxrandr

xrandr --newmode "1440x900_60.00"  106.50  1440 1528 1672 1904  900 903 909 934 -hsync +vsync
xrandr --addmode VGA1 1440x900_60.00

puis je l'appelle dans /etc/lightdm/lightdm.conf

display-setup-script=/usr/bin/lightdmxrandr

Une fois que je me suis connecté, je peux configurer mon moniteur dans Affiches et cela fonctionne, même après m'être reconnecté (cela me donnait une grosse erreur).

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X