5 votes

Quel processus est responsable de la rotation automatique de l'écran ? Je veux le désactiver (sur 16.04)

Actuellement, j'essaie de désactiver le processus responsable de la rotation automatique de l'écran de mon Lenovo Yoga 2 Pro, qui est activé par défaut.

Jusqu'à présent, j'ai fait des recherches sur les paquets iio-sensor-proxy et inotify-tools, mais je n'ai pas réussi à trouver comment le désactiver.

Est-il possible de simplement supprimer iio-sensor-proxy pour obtenir le comportement souhaité ?

Ou cela affecterait-il un processus important de manière négative et causerait-il des anomalies ?

Où sont stockés les fichiers de configuration ?

Merci d'avance !

7voto

DCKing Points 317

J'ai depuis trouvé un moyen plus pratique de désactiver la rotation de l'écran, mais cela ne fonctionne que dans l'environnement de bureau GNOME et pas dans Unity.

Dans GNOME, cliquez sur le menu en haut à droite. Le bouton situé entre celui qui ouvre le menu Paramètres et celui qui verrouille votre écran contrôle la rotation de votre écran. Cliquez sur le bouton pour le désactiver.

Cette capture d'écran provient d'une question similaire pour Fedora:

Emplacement de l'interrupteur de rotation de l'écran dans GNOME

Cette fonctionnalité ne semble pas être présente dans Unity. Un outil graphique qui vous aidera au moins avec la rotation de l'écran dans Unity s'appelle ScreenRotator.

6voto

DCKing Points 317

Sous Ubuntu 16.10, j'ai pu désactiver la rotation automatique de l'écran avec cette réflexion :

  1. J'ai confirmé que c'était le service iio-sensor-proxy qui provoquait la rotation automatique de l'écran. En exécutant systemctl stop iio-sensor-proxy, la rotation de l'écran s'arrête jusqu'au prochain démarrage.
  2. Le service iio-sensor-proxy est un service SystemD statique pour une raison quelconque et ne peut donc pas être désactivé en utilisant systemctl disable iio-sensor-proxy, vous devez donc le supprimer pour le désactiver de manière permanente. Cependant, la documentation minime indique que ce service contrôle également le capteur de lumière ambiante et la boussole, que je ne veux pas désactiver si je n'y suis pas obligé.
  3. En utilisant l'utilitaire apt-file (qui n'est pas installé par défaut), j'ai déterminé les fichiers installés pour le paquet associé à ce service, en exécutant apt-file list iio-sensor-proxy. Il semble installer un fichier de configuration /lib/udev/rules.d/80-iio-sensor-proxy.rules - où udev est le sous-système de gestion du matériel d'Ubuntu. C'est là qu'il faut regarder.
  4. Remarquez que ce fichier contient une ligne SUBSYSTEM=="input", ACTION=="add", TAG+="systemd", ENV{ID_INPUT_ACCELEROMETER}=="1", ENV{SYSTEMD_WANTS}+="iio-sensor-proxy.service". Cela semble contrôler l'accéléromètre qui déclenche la rotation automatique. Mettez un # devant cette ligne pour la commenter et empêcher ce service de lire l'accéléromètre.
  5. Après un redémarrage, la rotation automatique de l'écran devrait être désactivée tout en laissant iio-sensor-proxy en cours d'exécution.

Il devrait clairement y avoir une option GUI pour cela, sans parler d'une manière documentée de le faire, mais voilà.

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