LightDM, l'ancien écran de connexion d'Ubuntu
LightDM est un gestionnaire de session graphique utilisé jusqu’à la version 17.10 par Ubuntu et Xubuntu (entre-autres). Celui-ci vous permet d'ouvrir une session avec votre compte d'utilisateur dans votre système Ubuntu, ainsi que gérer les éventuelles multiples sessions d'utilisateurs fonctionnant simultanément.
Ubuntu, comme tous les autres systèmes d'exploitation de la famille GNU/Linux, est un système multi-utilisateurs. Cela signifie que vous n'êtes pas limité à un seul compte d'utilisateur dans le fonctionnement de votre ordinateur. Vous pouvez créer plusieurs comptes d'utilisateurs pour chaque usager de votre ordinateur, de même que pour divers usages.
Avoir plusieurs comptes d'utilisateurs dans un environnement « multi-usagers » (ordinateur familial, poste partagé dans une entreprise, borne dans un lieu public) est un gage de sécurité. Un compte d'utilisateur est une collection de données et de paramètres relatifs à un usager de l'ordinateur : nom, prénom, photo de profil, boîtes de courriels, trousseaux de mots de passe, préférences des logiciels utilisés, choix de thème de l'environnement de bureau, etc. Il convient donc d'isoler les informations personnelles de chaque utilisateur.
Dans le but de sélectionner le compte d'utilisateur avec lequel on souhaite travailler, Ubuntu propose, à son chargement, un écran de connexion : avec les versions 14.04 et 16.04, ce sera LightDM. Cet écran vous permet de choisir quelle session doit être chargée, ainsi que quelques paramètres relatifs à la session utilisateur à charger (langue d'affichage, environnement graphique, agencement du clavier et options d'accessibilité).
Si vous utilisez Unity comme gestionnaire de bureau, vous pouvez réinstaller LightDM qui s'accorde mieux visuellement avec Unity.
Installation
Si vous souhaitez utiliser LightDM mais que ce n'est pas le gestionnaire de connexion installé, installez donc le paquet lightdm.
Le gestionnaire de connexion est un composant du système qui ne peut pas avoir de concurrent: une confirmation du gestionnaire de connexion souhaité vous sera normalement demandée.
Ouvrir une session utilisateur
Au chargement d'Ubuntu, LightDM affiche une liste de comptes d'utilisateurs existants. Par défaut, tous les comptes d'utilisateurs qui ont été créés dans votre système Ubuntu sont présents dans cette liste des comptes. Pour ouvrir une session utilisateur avec l'un de ces comptes :
- Sélectionnez le compte d'utilisateur avec lequel vous souhaitez ouvrir une session. Ceci peut être accompli en cliquant sur le nom de l'utilisateur à l'aide de votre souris ou en déplaçant la sélection vers le haut ou vers le bas à l'aide des flèches directionnelles de votre clavier.
- Si un mot de passe vous est demandé, saisissez-le maintenant. Puis, appuyez sur la touche « Entrée » de votre clavier. La session se charge.
- Dans le cas où une session peut être chargée sans mot de passe, le champ de saisie de mot de passe est remplacé par un bouton « Se connecter ». Appuyez sur ce bouton pour charger la session.
Ouvrir une session d'utilisateur invité
Dans la liste des comptes d'utilisateurs, un compte « Session d'invité » apparaît. Ce compte est un compte d'utilisateur temporaire, utile lorsque vous prêtez votre ordinateur à un usager qui n'a pas de compte sur votre système Ubuntu. Le compte d'invité est créé dynamiquement lorsqu'une session est chargée et est détruit immédiatement après la fermeture de la session. Cet utilisateur a peu de droits dans votre ordinateur et il ne peut pas modifier le fonctionnement de votre système Ubuntu.
Il n'est pas recommandé d'utiliser le compte d'invité en tant que session par défaut, à moins de configurer une borne publique. Le compte étant automatiquement supprimé à la fermeture de la session, toutes les modifications et les configurations apportées au compte invité seront perdues. Le compte d'invité est prévu pour une utilisation occasionnelle et temporaire de votre ordinateur.
Options de base lors d'une ouverture de session
Sélectionner l'environnement graphique
Chaque session utilisateur peut utiliser l'environnement graphique de son choix (plus d'explications sur la page dédiée). Plusieurs environnements graphiques peuvent être installés simultanément sur votre système Ubuntu, mais un seul environnement peut fonctionner à la fois dans une session utilisateur. Le gestionnaire de sessions LightDM permet de choisir son environnement graphique parmi ceux installés sur votre système.
Pour choisir votre environnement graphique :
- De retour à l'écran de connexion, complétez l'ouverture de session en saisissant le mot de passe du compte d'utilisateur ou, dans le cas d'une session pouvant être chargée sans mot de passe, appuyez sur le bouton « Se connecter ». Remarquez que le logo circulaire du bouton de sélection d'environnement graphique a changé, afin de refléter votre choix d'environnement graphique.
L'environnement graphique de votre choix est mémorisé par LightDM : lors de vos ouvertures de session suivantes pour cet utilisateur, le dernier environnement graphique choisi est automatiquement présélectionné. Pour changer à nouveau votre environnement graphique, vous devrez effectuer à nouveau la manipulation ci-dessus. De plus, cette manipulation n'est mémorisée que pour le seul utilisateur sélectionné ; ce choix n'est pas automatiquement répercuté pour l'ensemble des utilisateurs de votre système Ubuntu. (cf. § Comment changer l'environnement graphique par défaut pour l'ensemble des comptes d'utilisateurs ?)
Changer l'agencement du clavier
Si vous n'arrivez pas à saisir correctement votre mot de passe à l'ouverture de session, il se peut que l'agencement du clavier (la correspondance entre les touches de votre clavier et l'interprétation qu'en fait le système) soit incorrect. Lorsque plus d'un agencement de clavier a été configuré pour un compte d'utilisateur, un bouton en forme de clavier apparaît dans la partie supérieure droite de votre écran de connexion. Appuyez sur ce bouton pour lister l'ensemble des agencements de clavier actuellement paramétrés pour lui et sélectionnez l'agencement correspondant à votre clavier.
La sélection de l'agencement n'est pas mémorisée, elle doit être refaite à chaque ouverture de session. Ce paramètre touche uniquement l'agencement du clavier au moment de l'ouverture de session, il n'a pas d'impact quant à l'agencement de clavier préféré que l'utilisateur a configuré une fois sa session chargée. Enfin, les agencements de clavier ne sont proposés dans la liste que si un utilisateur a lui-même configuré plusieurs agencements dans sa session ; modifier cette option n'a pas d'impact sur les autres sessions des utilisateurs.
Apparemment, l'agencement des claviers est stocké dans le fichier /etc/default/keyboard
et une ligne comme :
XKBLAYOUT="fr,us"
active un clavier azerty et qwerty.
Activer des options d'accessibilité
Certaines options d'accessibilité sont disponibles dans LightDM pour permettre l'ouverture de session aux usagers ayant des problèmes d'utilisation du matériel informatique standard. Les options d'accessibilité proposées sont :
- l'affichage d'un clavier virtuel, afin de saisir des touches sur un clavier affiché à l'écran de votre ordinateur à l'aide d'une souris ou sur un écran tactile ;
- l'activation de contrastes élevés, pour améliorer l'affichage à l'écran des usagers ayant une déficience visuelle ;
- l'activation d'un lecteur d'écran, pour améliorer l'accès à l'ordinateur aux usagers ayant une déficience visuelle.
Pour activer des options d'accessibilité, appuyez sur le bouton représentant un homme de Vitruve stylisé et sélectionnez la ou les options d'accessibilité à activer.
Ces options d'accessibilité ne sont activées que pour l'écran de connexion en cours. Elles demeurent activées durant tout le processus d'ouverture de session, jusqu'à ce que la session utilisateur soit chargée. À l'ouverture de session suivante, il faudra activer manuellement à nouveau chaque option d'accessibilité désirée. Les choix d'accessibilité faits à l'écran de connexion n'ont pas d'impact sur la session utilisateur ouverte.
Redémarrage de session
Certains changements nécessitent de se reconnecter pour être pris en compte. Vous pouvez redémarrer votre système Ubuntu … ce qui peut prendre un certain temps mais plus simplement et afin d'éviter un redémarrage complet du système:
sudo restart lightdm
Clore sa session
Voir cette page pour tout savoir sur la clôture de session.
Aller plus loin…
Les manipulations décrites ci-dessous pourraient éventuellement corrompre le fonctionnement du gestionnaire de session LightDM. Nous vous recommandons de bien lire les instructions avant de procéder à une quelconque modification proposée car une mauvaise manipulation – une simple faute de frappe dans le fichier de configuration – pourrait empêcher toute connexion ultérieure via le gestionnaire de session
Sauvegarde préalable
Avant de modifier un fichier de configuration de LightDM, pensez à faire une sauvegarde de l'original
Par exemple, en ligne de commande, avant de modifier le fichier /etc/lightdm/lightdm.conf, faites une copie :
sudo cp /etc/lightdm/lightdm.conf /etc/lightdm/lightdm.conf_original
Dans le cas où vous feriez une manipulation erronée qui rendrait ensuite toute connexion impossible via l'écran d'accueil, vous pourrez alors revenir à la configuration originale en suivant cette procédure :
- Pressez les touches Ctrl+Alt+F1 pour obtenir une console de connexion au système.
- Connectez-vous avec vos identifiants habituels, soit votre nom d'utilisateur et votre mot de passe.
- Restaurez le fichier original :
sudo cp /etc/lightdm/lightdm.conf_original /etc/lightdm/lightdm.conf
- Relancez le service de connexion :
sudo service lightdm restart
- Avant d'ouvrir une session graphique, pensez à quitter la session ouverte en console précédemment :
- Pressez les touches Ctrl+Alt+F1 pour revenir dans la console ouverte.
- Tapez exit pour quitter la session.
- Pressez les touches Ctrl+Alt+F7 pour revenir à l'écran d'accueil de LightDM.
Changer l'environnement graphique par défaut pour l'ensemble des utilisateurs
Par défaut, l'environnement graphique paramétré pour l'ensemble des utilisateurs est :
- etc. (voir la page variantes)
Chaque usager peut sélectionner individuellement un environnement graphique différent au moment de charger sa session. Cependant, il est possible de modifier la configuration de LightDM pour proposer par défaut un autre environnement graphique à l'ensemble des utilisateurs de votre système Ubuntu.
- Ouvrez avec les droits d'administration le fichier de configuration de LightDM /etc/lightdm/lightdm.conf pour ajouter l'option suivante à la fin du fichier :
user-session=environnement
où
environnement
est le type d'environnement à affecter par défaut à tous les utilisateurs. - Enregistrez le fichier et redémarrez le service de connexion.
Le type d'environnement est un nom abrégé décrivant l'environnement graphique à charger. Techniquement, il s'agit du nom de fichier
.desktop
de chaque environnement installé, sans son extension .desktop
. Pour connaître la liste des environnements graphiques installés dans votre système Ubuntu et connaître le nom de chacun des fichiers .desktop
correspondants, exécutez la commande suivante dans un terminal :
ls /usr/share/xsessions
Par exemple : ubuntu représente un environnement Unity, gnome-shell représente GNOME Shell, etc.
Supprimer la session invité
Par défaut, Ubuntu propose un compte Session d'invité dans la liste des comptes d'utilisateurs. Ce compte est un compte d'utilisateur temporaire, créé dynamiquement lorsqu'une session est chargée et est détruit immédiatement après la fermeture de la session. Cet utilisateur a peu de droits dans votre ordinateur – il ne peut pas modifier le fonctionnement de votre système Ubuntu. Vous pouvez préférer désactiver la possibilité de charger une session d'invité.
Ainsi pour supprimer la session invité :
- Ouvrez un terminal et, s'il n'existe pas déjà, créez un nouveau dossier
/etc/lightdm/lightdm.conf.d/
:sudo mkdir -p /etc/lightdm/lightdm.conf.d
- Toujours dans le terminal, créez un nouveau fichier nommé
50-disable-guest.conf
à l'intérieur du dossier créé précédemment :sudo touch /etc/lightdm/lightdm.conf.d/50-disable-guest.conf
- Ouvrez avec les droits d'administration le fichier
/etc/lightdm/lightdm.conf.d/50-disable-guest.conf
; - Inscrivez les instructions suivantes :
[SeatDefaults] allow-guest=false
- Enregistrez le fichier et redémarrez le service de connexion.
Supprimer la session connexion distante
Par défaut, Ubuntu propose un compte Connexion distante dans la liste des comptes d'utilisateurs. Vous pouvez préférer désactiver la possibilité de charger une session distante.
- Ouvrez un terminal et, s'il n'existe pas déjà, créez un nouveau dossier
/etc/lightdm/lightdm.conf.d/
:sudo mkdir -p /etc/lightdm/lightdm.conf.d
- Toujours dans le terminal, créez un nouveau fichier nommé
50-hide-remote-login
à l'intérieur du dossier créé précédemment :sudo touch /etc/lightdm/lightdm.conf.d/50-hide-remote-login.conf
- Ouvrez avec les droits d'administration le fichier
/etc/lightdm/lightdm.conf.d/50-hide-remote-login.conf
; - Inscrivez les instructions suivantes :
[SeatDefaults] greeter-show-remote-login=false
- Enregistrez le fichier et redémarrez le service de connexion.
Saisir manuellement un identifiant de connexion (login name)
Par défaut, LightDM liste l'ensemble des comptes d'utilisateurs de votre système Ubuntu. Il peut toutefois être utile d'activer une invite de saisie manuelle de l'identifiant de compte avec lequel ouvrir une session. Par exemple, ceci peut servir à ouvrir une session dans un domaine, à ouvrir une session avec un compte système ou ouvrir une session avec un compte dont on a intentionnellement caché son entrée dans la liste de l'écran de connexion.
Ainsi pour saisir manuellement un identifiant de connexion :
- Ouvrez un terminal et, s'il n'existe pas déjà, créez un nouveau dossier
/etc/lightdm/lightdm.conf.d/
:sudo mkdir -p /etc/lightdm/lightdm.conf.d
- Toujours dans le terminal, créez un nouveau fichier nommé
50-show-manual-login.conf
à l'intérieur du dossier créé précédemment :sudo touch /etc/lightdm/lightdm.conf.d/50-show-manual-login.conf
- Ouvrez avec les droits d'administration le fichier
/etc/lightdm/lightdm.conf.d/50-show-manual-login.conf
; - Inscrivez les instructions suivantes :
[SeatDefaults] greeter-show-manual-login=true
- Enregistrez le fichier et redémarrez le service de connexion.
Cacher des utilisateurs de la liste à l'écran de connexion
Par défaut, LightDM liste l'ensemble des comptes d'utilisateurs de votre système Ubuntu. Vous pouvez préférer cacher un ou des utilisateurs de cette liste, voire l'ensemble de la liste. Une telle configuration devrait être effectuée conjointement avec l'activation d'une invite de saisie manuelle d'un identifiant, afin de ne pas couper totalement les accès à une session utilisateur graphique.
Cacher un ou des utilisateurs
- Rendez-vous dans le dossier
/var/lib/AccountsService/users/
; - Pour chaque utilisateur créé et ayant ouvert une session se trouve un fichier au nom du compte utilisateur. Ouvrez avec les droits d'administration le fichier du nom de l'utilisateur à cacher;
- Si l'utilisateur que vous souhaitez cacher ne s'est jamais connecté, créez un nouveau fichier à son nom.
- Sous la section
[User]
, recherchez le paramètre SystemAccount=false. Pour cacher le compte, remplacez ce paramètre par SystemAccount=true.- S'il s'agit d'un nouveau fichier pour le compte d'un utilisateur ne s'étant jamais connecté, inscrivez les informations suivantes:
[User] SystemAccount=true
- Enregistrez le fichier et redémarrez le service de connexion.
Cacher toute la liste des utilisateurs
Pour Ubuntu 14.04 LTS et versions ultérieures
- Ouvrez un terminal et, s'il n'existe pas déjà, créez un nouveau dossier
/etc/lightdm/lightdm.conf.d/
:sudo mkdir -p /etc/lightdm/lightdm.conf.d
- Toujours dans le terminal, créez un nouveau fichier nommé
50-hide-users.conf
à l'intérieur du dossier créé précédemment :sudo touch /etc/lightdm/lightdm.conf.d/50-hide-users.conf
- Ouvrez avec les droits d'administration le fichier
/etc/lightdm/lightdm.conf.d/50-hide-users.conf
; - Inscrivez les instructions suivantes :
[SeatDefaults] greeter-hide-users=true
- Enregistrez le fichier et redémarrez le service de connexion.
c'est quoi ce qui suit?
À partir d'Ubuntu 15.04
À partir d'Ubuntu 15.04 (et peut être Trusty 14.04...)
Pour cacher un utilisateur Xubuntu droits administrateur:
- Activer le compte même si c'est un compte désactivé ex: PostgreSQL
- Se connecter de manière à ce que le gestionnaire de compte le prenne en compte et enregistre ce compte dans "AccountsService"
- Remettre le compte comme à l'origine
- Avec les droits d'administration, ouvrir le fichier de l'utilisateur-caché /var/lib/AccountsService/users/<utilisateur_caché>
[User] XSession=xubuntu SystemAccount=true
Connexion automatique
Par défaut, aucune session utilisateur ne se charge automatiquement. Il est possible de configurer LightDM pour charger automatiquement une session d'un compte d'utilisateur au chargement d'Ubuntu.
Configuration via l'interface graphique
- Allez dans le menu Paramètres système et sélectionnez Comptes utilisateur.
- Choisissez le compte de l'utilisateur dont la session doit être automatiquement chargée au démarrage d'Ubuntu.
- Dans le coin supérieur droit de la fiche de l'utilisateur, cliquez sur le bouton Déverrouiller. Saisissez votre mot de passe d'administrateur.
- Dans la fiche de l'utilisateur, activez Connexion automatique.
- Redémarrez l'ordinateur et la connexion automatique devrait avoir lieu.
Édition manuelle du fichier de configuration
Les manipulations précédentes, en mode graphique, modifient le fichier de configuration de LightDM. Le même résultat peut être accompli en éditant directement ce fichier :
- Ouvrez avec les droits d'administration le fichier de configuration de LightDM /etc/lightdm/lightdm.conf pour ajouter les lignes suivantes à la fin du fichier :
autologin-user=identifiant autologin-user-timeout=0 pam-autologin-service=lightdm-autologin
où
identifiant
est le nom du compte (login name) dont une session doit être chargée automatiquement au démarrage d'Ubuntu. - Enregistrez le fichier et redémarrez le service de connexion.
Notez que vous pouvez configurer le laps de temps pendant lequel il sera possible de se connecter avec un autre compte d'utilisateur que celui qui est prévu pour la connexion automatique en modifiant la valeur du paramètre autologin-user-timeout
à 10 secondes par exemple.
Verrouillage du pavé numérique
Pour activer automatiquement le verrouillage du pavé numérique du clavier au démarrage, reportez-vous à la page numlockx.
Changer l'aspect de l'écran d’accueil (greeter)
Il est possible de changer l'aspect global de l'écran d'accueil (greeter en anglais) et d'installer la version lightdm-gtk-greeter, qui est celle installée par défaut avec Xubuntu, ou bien lightdm-kde-greeter, pour KDE
À noter que sur KDE, il est alors possible de modifier le fond d'écran notamment, via Configuration du système, rubrique Administration du système > Écran de connexion (LightDM).
Pour cela, installer le paquet lightdm-gtk-greeter, ou lightdm-kde-greeter puis éditer le fichier /etc/lightdm/lightdm.conf avec les droits d’administration pour remplacer la ligne, située à la section [SeatDefaults]
- /etc/lightdm/lightdm.conf
[SeatDefaults] [...] greeter-session=unity-greeter
par
- Pour Xubuntu :
greeter-session=lightdm-gtk-greeter
- Pour KDE :
greeter-session=lightdm-kde-greeter
Redémarrez pour que les changements soient effectifs.
Restaurer l'écran d'accueil par défaut (ou adopter l'écran d'accueil d'un autre desktop)
Si vous avez installé plusieurs desktop (KDE, Lxde etc.), il se peut que votre écran d'accueil ne soit plus celui par défaut. Pour remédier à cela et remettre l'écran d'accueil d'Ubuntu, suivez la procédure suivante indiquée sur la page [:plymouth]].
Si Lightdm n'était plus votre gestionnaire d'écran par défaut, remettez-le :
- Ouvrez un terminal et, s'il n'existe pas déjà, créez un nouveau dossier
/etc/lightdm/lightdm.conf.d/
:sudo mkdir -p /etc/lightdm/lightdm.conf.d
- Toujours dans le terminal, créez un nouveau fichier nommé
50-show-manual-login.conf
à l'intérieur du dossier créé précédemment :sudo touch /etc/lightdm/lightdm.conf.d/50.unity-greeter.conf
- Ouvrez avec les droits d'administration le fichier
/etc/lightdm/lightdm.conf.d/50.unity-greeter.conf
; - Inscrivez les instructions suivantes :
[Seat:*] greeter-session=unity-greeter
- Enregistrez le fichier et redémarrez le service de connexion.
Choisir la langue de l'environnement avant de se connecter
Cette possibilité est utile, par exemple, sur une machine dans un environnement multilingue1), éventuellement avec une session sur laquelle il est possible de se connecter sans introduire le mot de passe.
Cependant unity-greeter ne permet pas de sélectionner la langue de l'interface avant de se connecter, contrairement à lightdm-gtk-greeter, installé par défaut avec Xubuntu, et qui donne accès à une liste déroulante permettant le choix de la langue.
Avec Ubuntu, installer le paquet lightdm-gtk-greeter est donc une solution si vous souhaitez pouvoir choisir la langue de l'interface avant d'ouvrir une session.
Pour obtenir l'affichage de la liste des langues, vous devez vérifier que le paramètre « show-language-selector
» est bien défini à true. Ouvrez le fichier de configuration /etc/lightdm/lightdm-gtk-greeter.conf avec les droits d'administration et, si besoin, remplacez la ligne suivante (généralement la dernière) :
show-language-selector=false
par celle-ci :
show-language-selector=true
Vous devrez bien entendu ajouter les différentes langues. Ce qui peut se faire avec les paramètres système et l'outil « Prise en charge des langues ».
Changer l'image de fond
Solution 1 - Modifier le fichier de configuration de unity-greeter
La manipulation s’avère relativement simple mais ne doit s’effectuer qu’en toute connaissance de cause car il faut indiquer le chemin de l’image désirée dans le fichier de configuration de unity-greeter.
Ouvrez le fichier /etc/lightdm/unity-greeter.conf avec les droits d’administration pour modifier la ligne n°12 :
background=/usr/share/backgrounds/warty-final-ubuntu.png
où /usr/share/backgrounds/warty-final-ubuntu.png sera remplacé par le chemin de votre image.
Par exemple :
background=/home/rusty/Images/wallpaper.png
ici l'image de fond d'écran nommée wallpaper.png se trouve dans le dossier Images du Dossier Personnel de l'utilisateur rusty.
Après cette manipulation, fermez votre session et vous pourrez constater que l'image de fond a changé.
Il suffit de modifier la ligne «
logo=/le/chemin/du/logo.png
» de la même manière que pour le fond.
Solution 2
Par défaut, l'image d'arrière plan est toujours gérée par unity-greeter mais la configuration de celui-ci ne se fait plus via un fichier de configuration classique. Pour modifier les préférences de unity-greeter, il faut utiliser, au choix, les outils gsettings ou dconf-editor afin de modifier la base de données où est désormais stockée la configuration.
Cette modification doit être réalisée avec l'identité lightdm. Pour pouvoir endosser cette identité, saisissez dans un terminal les commandes suivantes :
sudo xhost +SI:localuser:lightdm sudo su lightdm -s /bin/bash
Maintenant que vous êtes sous le compte de lightdm, vous pouvez, au choix, changer les préférences avec l'outil en ligne de commande gsettings, ou graphiquement avec dconf-editor.
En ligne de commande avec gsettings
gsettings set com.canonical.unity-greeter background '/chemin/image-de-fond.png'
Avec l'éditeur dconf-editor
Ouvrez dconf-editor, puis naviguer dans l'arbre de clés en suivant le chemin /com/canonical/unity-greeter et changer la valeur de la clé "background".
Solution avec Ubuntu 16.04
Par défaut, l'image d'arrière plan est toujours gérée par unity-greeter mais la configuration de celui-ci ne se fait plus via un fichier de configuration classique. Pour modifier les préférences de unity-greeter, il faut utiliser les lignes de commande :
- Lancer votre Terminal .
- Insérez votre image dans le dossier suivant :
sudo cp ~/Images/votre_image.png /usr/share/backgrounds/
- Donnez les droits 644 à votre image :
sudo chmod 644 /usr/share/backgrounds/votre_image.png
- Ouvrez le fichier CSS de unity-greeter :
sudo gedit /usr/share/glib-2.0/schemas/com.canonical.unity-greeter.gschema.xml
- Modifiez la ligne background comme ci-dessous :
<key name="background" type="s"> <default>'/usr/share/backgrounds/votre_image'</default> <summary>Background file to use, either an image path or a color (e.g. #772953)</summary> </key>
- Si vous ne souhaitez plus voir l'arrière-plan utilisateur lors de sa sélection modifiez la ligne comme ci-dessous :
<key name="draw-user-backgrounds" type="b"> <default>false</default> <summary>Whether to draw user backgrounds</summary>
- Enregistrez et Quittez.
- Appliquez les changements avec la commande ci-dessous :
sudo glib-compile-schemas /usr/share/glib-2.0/schemas/
- Testez en redémarrant votre service lightdm :
sudo service lightdm restart
Affichage d'une image de fond différente selon l'utilisateur sélectionné
Par défaut, lorsqu'on change l'utilisateur sélectionné (avant la connexion), le fond d'écran de LightDM peut – dans certaines conditions – changer pour refléter le fond d'écran que l'utilisateur verra s'il se connecte.
Conditions
- L'image (le fichier + son chemin d'accès) doit être accessible en lecture (droit : read) par tous (ou au moins par l'utilisateur lightdm).
- Ne fonctionne pas pour les fonds d'écrans dynamiques.
- Le fond d'écran a dû être changé sous Unity ou Gnome. Ne fonctionne pas avec les autres interfaces (comme LXDE, par exemple).
Procédure pour utiliser un fond d'écran personnel sans pour autant donner l'accès en lecture à son propre dossier d'images
- Mettre l'image dans un autre dossier, accessible en lecture à tous (par exemple dans le dossier personnel ~/ (/home/[utilisateur]/), le dossier ~/Public (/home/[utilisateur]/Public) ou – si on dispose des droits administrateurs – dans /usr/share/backgrounds/2)).
- Donner le droit de lecture du fichier à tous.
- Depuis les paramètres système, dans l'outil « Apparence », ajouter l'image en cliquant sur le bouton [+] 3). Ensuite vous pouvez changer ses propriétés d'affichage (mosaïque, zoom, etc.), couleur de fond.
Suppression du son produit à l'écran d'accueil
C'est l'utilisateur lightdm qui gère l'écran d'accueil (le greeter en anglais) ; il faut donc modifier la configuration de ce compte. Pour pouvoir modifier cette configuration, il faut avoir installé le paquet dconf-editor.
Méthode 1
Tapez dans un terminal :
sudo su -l lightdm -s /bin/bash -c "gsettings set com.canonical.unity-greeter play-ready-sound false"
Méthode 2
Autoriser lightdm à afficher des fenêtres sur son propre écran :
sudo xhost +SI:localuser:lightdm
Se connecter sous lightdm :
sudo su lightdm -s /bin/bash
Lancer l'éditeur de configuration :
dconf-editor
Puis aller dans « com.canonical.unity-greeter » pour décocher le bouton « play-ready-sound ».
Garder l'image de fond de Lightdm et modifier l'image de fond de son bureau
En modifiant le fichier schéma
Modifier le fichier com.canonical.unity-greeter.gschema.xml
Modifier le fichier /usr/share/glib-2.0/schemas/com.canonical.unity-greeter.gschema.xml avec les droits d'administration pour mettre false
dans la partie draw-user-backgrounds
.
Puis appliquer la modification:
sudo glib-compile-schemas /usr/share/glib-2.0/schemas/
Et on peut ainsi garder l'image de fond de l'écran d'accueil de Lightdm et changer l'image de fond de son bureau utilisateur:
Clic droit sur le fond d'écran → Modifier l'arrière-plan du bureau
Voir le détail dans cette discussion: http://forum.ubuntu-fr.org/viewtopic.php?pid=12904841#p12904841
Configuration écran multiple
Dans le cas d'une configuration multiécran, il est possible que lightdm inverse les positions: écran de droite à gauche et inversement.
Une solution est de copier la configuration d'écran de votre session dans celle de lightdm. À condition que la configuration de votre session soit celle souhaitée.
À partir de votre session, lancer la commande suivante dans un terminal:
sudo cp ~/.config/monitors.xml /var/lib/lightdm/.config/
Puis redémarrer votre ordinateur.
Modifier la résolution de LightDM
Il arrive parfois, que vous ayez une résolution non supportée par votre écran, ce qui donne un résultat très désastreux. Pour modifier la résolution de LightDM, nous allons déjà repérer les résolutions supportées, pour se faire veuillez ouvrir un terminal, avec pour contenu :
xrandr
Ce qui nous retournera par exemple :
Screen 0: minimum 320 x 200, current 1360 x 768, maximum 8192 x 8192 ->LVDS-1<- connected primary 1360x768+0+0 (normal left inverted right x axis y axis) 277mm x 156mm 1366x768 60.00 + ->1360x768 59.80* 59.96 <- 1024x768 60.04 60.00 960x720 60.00 928x696 60.05 896x672 60.01 960x600 60.00 960x540 59.99 800x600 60.00 60.32 56.25 840x525 60.01 59.88 800x512 60.17 700x525 59.98 640x512 60.02 720x450 59.89 640x480 60.00 59.94 680x384 59.80 59.96 576x432 60.06 512x384 60.00 400x300 60.32 56.34 320x240 60.05 VGA-1 disconnected (normal left inverted right x axis y axis) HDMI-1 disconnected (normal left inverted right x axis y axis) DP-1 disconnected (normal left inverted right x axis y axis) HDMI-2 disconnected (normal left inverted right x axis y axis) HDMI-3 disconnected (normal left inverted right x axis y axis) DP-2 disconnected (normal left inverted right x axis y axis) DP-3 disconnected (normal left inverted right x axis y axis)
Ici nous retenons le nom de notre périphérique LVDS-1, et pour notre exemple nous allons appliquer la résolution 1360x768.
Veuillez ensuite créer un fichier bash, dans /etc/lightdm/, avec pour nom add-and-set-resolution.sh :
sudo touch /etc/lightdm/add-and-set-resolution.sh
Et y insérer ce contenu :
#!/bin/bash ### Copyright https://selivan.github.io/2017/08/16/lightdm-add-custom-display-resolution.html set -x output="$1" x="$2" y="$3" freq="$4" if [ $# -ne 4 ]; then echo "Usage: $0 output x y freq" echo "To find output name: xrandr -q" exit 0 fi mode=$( cvt "$x" "$y" "$freq" | grep -v '^#' | cut -d' ' -f3- ) modename="${x}x${y}" xrandr --newmode $modename $mode xrandr --addmode "$output" "$modename" xrandr --output "$output" --mode "$modename" # Always return success or lightdm goes into infinite loop exit 0
Et de le rendre exécutable via :
sudo chmod a+x /etc/lightdm/add-and-set-resolution.sh
Nous devons ensuite éditer le fichier /etc/lightdm/lightdm.conf.d/50-display-setup-script.conf, si il n'existe pas veuillez le créer via :
sudo touch /etc/lightdm/lightdm.conf.d/50-display-setup-script.conf
Avec pour contenu :
[Seat:*] display-setup-script=/etc/lightdm/add-and-set-resolution.sh LVDS-1 1360 768 59.80
Emplacement des fichiers de configuration de LightDM
Les paramètres décrits ci-dessous pourraient éventuellement corrompre le fonctionnement du gestionnaire de session LightDM. Elles s'adressent à des utilisateurs avertis connaissant bien LightDM et sachant récupérer leurs sessions en cas de mauvaise manipulation.
La configuration de LightDM est contenue dans les fichiers suivants:
/usr/share/lightdm/lightdm.conf.d/*.conf
/etc/lightdm/lightdm.conf.d/*.conf
/etc/lightdm/lightdm.conf
Tous les fichiers de configuration sont lus dans cet ordre, puis concaténés par LightDM à son lancement pour définir les paramètres qu'il utilisera. L'ordre des fichiers contenus dans ces dossiers est aussi important; les fichiers de configuration sont lus par ordre alphabétique et numérique. Lorsqu'un même paramètre est présent plusieurs fois dans les fichiers de configuration, le dernier paramètre lu est celui utilisé.
Ubuntu fournit des paramètres de base contenus dans les fichiers système sous /usr/share/lightdm/lightdm.conf.d/*.conf
. Ces fichiers ne devraient pas être modifiés manuellement, leur contenu pouvant être écrasé lors d'une mise à jour ou d'une mise à niveau de LightDM. Les administrateurs système sont plutôt invités à apporter leurs personnalisations à l'intérieur de fichiers sous /etc/lightdm/lightdm.conf.d/*.conf
ou dans un fichier unique /etc/lightdm/lightdm.conf
.
Un fichier additionnel, /etc/lightdm/users.conf
, est présent mais inutilisé dans Ubuntu. Ce fichier sert à effectuer des paramètres liés à la liste des utilisateurs affichés dans LightDM. Cependant, toute configuration saisie dans ce fichier est ignorée lorsque le service AccountsService est utilisé; c'est le cas dans Ubuntu et ses variantes.
Tableau des paramètres de LightDM
Voici une liste de paramètres pouvant être inscrits dans les fichiers de configuration de LightDM dans l'un ou l'autre des fichiers de configuration se trouvant sous /usr/share/lightdm/lightdm.conf.d/*.conf
ou /etc/lightdm/lightdm.conf.d/*.conf
. Les sections dans lesquels ces paramètres doivent être passés sont définies par des crochets. La plupart de ces paramètres ne figurent pas dans les fichiers de configuration ; ajoutez-les simplement aux fichiers s'ils sont manquants. Si vous ne précisez pas l'un de ces paramètres, son comportement par défaut est appliqué. S'ils sont présents plusieurs fois dans plusieurs fichiers de configuration, la dernière occurrence est celle qui a la priorité.
zless /usr/share/doc/lightdm/lightdm.conf.gz
[LightDM] | Configuration générale | Valeur par défaut |
---|---|---|
start-default-seat= | Active les options par défaut (true) ou non (false). | true |
greeter-user= | Utilisateur avec lequel l'écran de connexion est exécuté. | lightdm |
minimum-number-display=n | Premier terminal (tty) à utiliser par les serveurs X | 0 |
minimum-vt=n | Premier terminal (tty) à utiliser pour charger des sessions. | 7 |
lock-memory= | Empêche (true ) ou non (false ) l'utilisation de mémoire paginée dans le disque dur pour LightDM | true |
user-authority-in-system-dir= | Autoriser (true ) ou non (false ) le placement de l'autorité d'affichage dans le répertoire personnel système | false |
guest-account-script= | Script à exécuter pour charger un utilisateur invité | guest-account |
log-directory= | Emplacement du fichier de journal de LightDM. | /var/log/lightdm |
run-directory= | Emplacement de l'état d'exécution de LightDM | /var/run/lightdm |
cache-directory= | Dossier de cache de LightDM. | /var/cache/lightdm |
sessions-directory= | Dossier où chercher les fichiers .desktop de sessions. Plusieurs dossiers peuvent être configurés, séparés par un symbole deux-points | /usr/share/xsessions |
remote-sessions-directory= | Dossier où chercher les fichiers de sessions distantes. Plusieurs dossiers peuvent être configurés, séparés par un symbole deux-points | /usr/share/lightdm/remote-sessions |
greeters-directory= | Répertoire où trouver les différents habillages (greeters) de LightDM. Plusieurs dossiers peuvent être configurés, séparés par un symbole deux-points | /usr/share/lightdm/greeters:/usr/share/xgreeters |
[SeatDefaults] | Paramètres par défaut pour les sessions d'affichage | |
type= | Type de session d'affichage (xlocal , xremote ) | xlocal |
pam-service= | Service PAM à utiliser pour la connexion utilisateur | lightdm |
pam-autologin-service= | Service PAM à utiliser pour la connexion automatique | lightdm-autologin |
xserver-command= | Commande du serveur X à exécuter. Peut contenir des paramètres. | X |
xserver-layout= | Agencement à passer au serveur X | |
xserver-config= | Fichier de configuration à passer au serveur X | |
xserver-allow-tcp= | Permettre (true ) ou non (false ) les connexions TCP/IP vers le serveur X local | false |
xserver-share= | Partage (true ) ou non (false ) du serveur X entre l'écran de connexion et la session utilisateur | true |
xserver-hostname= | Nom d'hôte du serveur X (uniquement pour type=xremote ) | |
xserver-display-number= | Numéro de terminal (tty) pour l'affichage distant (seulement pour type=xremote ) | |
xdmcp-manager= | Gestionnaire XDMCP auquel se connecter (implique xserver-allow-tcp=true ) | |
xdmcp-port= | Numéro de port UDP/IP pour la communication XDMCP | 177 |
xdmcp-key= | Nom de la clé d'authentification à utiliser pour XDM-AUTHENTICATION-1 (tel qu'inscrit dans le fichier keys.conf ) | |
unity-compositor-command= | Commande à passer au compositeur Unity (peut contenir des paramètres) | unity-system-compositor |
unity-compositor-timeout= | Temps d'attente (en secondes) avant le déclenchement du compositeur Unity | 60 |
greeter-session= | Habillage (greeter) à charger par LightDM. Les greeters possibles doivent se trouver dans l'un des répertoires paramétré avec greeters-directory | example-gtk-gnome |
greeter-hide-users= | Cacher (true ) ou afficher (false ) la liste des utilisateurs à l'écran de connexion | false |
greeter-show-manual-login= | Afficher (true ) ou cacher (false ) l'invite de saisie manuelle d'un nom d'utilisateur. | false |
greeter-show-remote-login= | Afficher (true ) ou cacher (false ) l'invite d'ouverture de session distante | true |
user-session= | Type d'environnement sélectionné par défaut | default |
allow-user-switching= | Permettre (true ) ou non (false ) le changement d'utilisateur | true |
allow-guest= | Permettre (true ) ou non (false ) la connexion d'une session invité | true |
guest-session | Environnement à charger pour la session invité. Si non défini, utilise la valeur de user-session | |
session-wrapper= | Script ou programme à exécuter au chargement de la session utilisateur | lightdm-session |
greeter-wrapper= | Script ou programme à exécuter au chargement de l'écran de connexion | |
guest-wrapper= | Script ou programme à exécuter au chargement de la session invité | |
display-setup-script= | Script exécuté au chargement d'un affichage X. Utile, par exemple, pour régler le rétro-éclairage avec xbacklight. (S'exécute en tant que root) | |
display-stopped-script= | Script exécuté au déchargement d'un affichage X. (S'exécute en tant que root) | |
greeter-setup-script= | Script exécuté au chargement de l'écran de connexion. Exemple : greeter-setup-script=/usr/bin/numlockx . (S'exécute en tant que root) | |
session-setup-script= | Script lancé lorsqu'une session utilisateur est ouverte (exécuté par root et positionnement de variables comme USER, HOME et LOGNAME) | |
session-cleanup-script= | Script lancé lors de la fermeture d'une session (exécuté par root et positionnement de variables comme USER, HOME et LOGNAME). Exemple : session-cleanup-script=/usr/share/lightdm/guest-session/guest-session-cleanup.sh | |
autologin-guest= | Activer (true ) ou non (false ) une connexion automatique dans la session invité | false |
autologin-user=… | Connexion automatique à un compte d'utilisateur (surclasse autologin-guest si paramétré) | |
autologin-user-timeout= | Temps d'attente (en secondes) avant le chargement automatique de la session utilisateur | 0 |
autologin-session= | (Pas encore mis en œuvre) | |
autologin-in-background= | Chargement immédiat (false ) ou non (true ) de la session spécifiée en connexion automatique | false |
exit-on-failure= | Arrête le gestionnaire d'affichage en cas d'erreurs. | false |
[Seat:0] | Paramètres pour une session d'affichage spécifique | |
Des paramètres spécifiques peuvent être définis pour un affichage. Chaque affichage doit débuter par [Seat:xxxx]. La liste des paramètres est identique à celle de [SeatDefaults]. Si un paramètre n'est pas défini, la valeur provenant de [SeatDefaults] est utilisée. | ||
[XDMCPServer] | Pour les usages distants par XDMCP | |
enabled= | Activer (true ) ou désactiver (false ) l'accès par XDMCP. | false |
port= | Numéro de port UDP/IP d'écoute | 177 |
key= | Nom de la clé 56-bit DES hexadécimale pour l'authentification XDM-AUTHENTICATION-1 tel qu'inscrite dans le fichier keys.conf . Si ce n'est pas utilisé, laisser le champ vide ou indiquer -1 | |
[VNCServer] | Pour usages distants par VNC | |
enabled= | Activer (true ) ou désactiver (false ) l'accès par VNC. | false |
command= | ( Cette option ne semble plus exister, LightDM démarre "Xvnc") Commande pour l'exécution de Xvnc | Xvnc |
port= | Numéro de port TCP/IP d'écoute | 5900 |
width= | Largeur de l'affichage d'une session VNC | 1024 |
height= | Hauteur de l'affichage d'une session VNC | 768 |
depth= | Profondeur des couleurs, en bits, pour une session VNC | 8 |
Paramètres pour users.conf
Le fichier users.conf
contient des informations générales à propos des comptes d'utilisateurs à afficher ou cacher. Ce fichier est ignoré si le service AccountsService est utilisé par votre système d'exploitation ; c'est le cas, par défaut, dans Ubuntu et ses variantes. Cette section est présente à titre de référence seulement.
[UserAccounts] | Informations générales à propos des comptes d'utilisateurs | Valeur par défaut |
---|---|---|
minimum-uid = n | L'ID utilisateur (user id, UID) minimal à partir duquel les comptes d'utilisateurs sont affichés dans la liste de l'écran de connexion. Les comptes dont l'UID est inférieur à n sont automatiquement absents de la liste. | 500 |
hidden-users = utilisateur1 utilisateur2 utilisateur3 … | Cacher un ou des utilisateurs de la liste à l'écran de connexion. Chaque identifiant utilisateur doit être séparé par une espace | |
hidden-shells = … | Les utilisateurs ayant comme interpréteur (shell) l'un des interpréteurs listés ici ne sont pas affichés dans la liste de l'écran de connexion. Les interpréteurs doivent être inscrits par leur chemin absolu et séparés par un espace. Exemple : hidden-shells = /bin/false /usr/sbin/nologin |
Paramètres pour keys.conf
Ce fichier est un trousseau de clés utilisés pour l'authentification XDM. Il n'est pas utilisé si vous ne faites pas usage de cette fonctionnalité.
[keyring] | Informations à propos du trousseau de clés |
---|---|
a = 0x0123456789ABCD | Nom de clé d'authentification, suivi de la clé 56-bit DES en notation hexadécimale. Le nom se trouvant avant le signe d'égalité peut être n'importe quel nom. |
b = … | Une autre clé |
Problèmes connus
Problème de démarrage lightdm
Il peut arriver un problème de démarrage de lightdm qui se traduit par une fenêtre intitulée “The system is running in low-graphics mode". Cela peut-être résolu comme suit : basculer sur une session en ligne de commande par Ctrl-Alt-F5 par exemple (ou F4…) connectez-vous avec vos identifiants puis tapez :
sudo apt-get install --reinstall lightdm
puis redémarrer avec
sudo reboot
Lightdm revient toujours à l'écran de connexion
Si en entrant votre mot de passe lightdm revient toujours sur l'écran de connexion, reportez-vous à cette page de la documentation.
Voir aussi
- Projet sur Launchpad [en]
- How to change LightDM background[en] par OMG! Ubuntu! [en]
Contributeurs principaux : .