Problèmes fréquents lors de l’exécution d’Ubuntu Touch

Cette page détaille les problèmes fréquemment rencontrés en suivant la page Lancement d’Ubuntu Touch.

Rien n’apparait à l’écran

Si rien ne s’affiche à l’écran même après l’ajout de règles udev à votre portage, il est probable que vous ayez un problème avec le plantage d’applications graphiques. Consultez le chapitre Plantage des serveurs de Mir pour plus d’informations.

Les serveurs de Mir ont planté

Les plantages des serveurs de Mir peuvent provenir de nombreux problèmes différents lors du portage. Pour trouver une solution, vous pouvez essayer la chose suivante :

Est-ce que le conteneur d’Android est en cours de fonctionnement ?

Si le conteneur d’Android n’est pas en cours de fonctionnement, de nombreuses parties d’Ubuntu Touch ne fonctionneront pas. Exécutez cette commande pour vérifier le statut des conteneurs:

sudo lxc-info -n android

Si vous obtenez une sortie similaire à la suivante, le conteneur d’Android est en cours de fonctionnement et vous pouvez passer à l’étape suivante des investigations:

Name:           android
State:          RUNNING
PID:            1194
IP:             10.15.19.82

Si vous n’obtenez pas State: RUNNING, c’est que le conteneur est arrêté. Vous pouvez exécuter la commande sudo start lxc-android-config pour essayer de le démarrer. Si le conteneur ne démarre pas après cela, vous pouvez exécuter la commande sudo lxc-start -n android -F pour obtenir un rapport plus détaillé sur le pourquoi de cet échec.

Est-ce que toutes les partitions d’Android sont montées ?

Si des partitions utilisées pour les lecteurs Android ne sont pas montées, le conteneur peut démarrer mais ne pas fonctionner correctement.

Pour vérifier les partitions montées d’Android, exécutez ls /android. Les dossiers suivants devraient au moins se trouver à l’intérieur:

data
system
firmware
persist

Si l’un d’entre eux est manquant, exécutez la commande dmesg pour obtenir le journal du noyau. Le montage de partitions d’Android démarrera après la ligne suivante:

initrd: checking fstab [...] for additional mount points

Essayez de diagnostiquer et de réparer toutes les erreurs de montage que vous trouverez dans le journal pour les partitions listées ci-dessus.

Note

Certains appareils disposent d’une partition ``vendor``qui contient des bibliothèques et des exécutables propriétaires nécessaires au fonctionnement d’Android. Si votre appareil contient cette partition, assurez-vous qu’elle soit montée en plus de toutes les autres listées ci-dessus.

Obtenir plus de journaux de Mir

Si le conteneur d’Android tourne et que toutes ses partitions semblent montées, vous devrez obtenir quelques journaux supplémentaires avant de solliciter l’aide de la communauté.

Tout d’abord, arrêtez le gestionnaire d’affichage si cela n’est pas déjà fait:

sudo stop lightdm

Si le Wi-Fi fonctionne (Voir la documentation d’Halium sur le Wi-Fi), installez d’abord le paquet libc6-dbg:

sudo apt update
sudo apt install libc6-dbg

Exécutez ensuite les commandes suivantes pour obtenir tous les journaux nécessaires:

sudo unity-system-compositor --debug-without-dm &> ~/usc.log
sudo gdb -ex 'set confirm off' -ex 'run' -ex 'bt full' -ex quit --args unity-system-compositor --debug-without-dm &> ~/usc-gdb.log
sudo /system/bin/logcat -d &> ~/usc-logcat.log

Utilisez scp ou un programme similaire pour copier les fichiers usc.log, usc-gdb.log et usc-logcat.log à partir du dossier personnel « phablet » vers votre ordinateur. Postez ensuite le contenu de ces fichiers dans paste.ubuntu.com, Pastebin, GitHub Gists ou un service similaire de manière à ce que les personnes qui vous aident puissent les voir facilement.

Les programmes se suspendent avant de planter

Les processus se mettent parfois en suspend pendant un long moment avant de s’interrompre ou de renvoyer une erreur de segmentation. La raison de la suspension vient d’Apport, qui tente de collecter des informations à propos du plantage avant d’autoriser le programme à s’arrêter.

Si vous n’avez pas besoin des informations d’Apport et préférez que le programme plante plus rapidement lors des investigations, exécutez la commande suivante:

sudo stop apport
sudo stop whoopsie

Enable /var/log/syslog

Normally the writing to the syslog is disabled. During porting it can be useful to enable this:

sudo touch /var/log/syslog
sudo chown syslog:syslog /var/log/syslog
sudo initctl stop rsyslog
sudo initctl start rsyslog

Now rsyslogd will write to the file and you can use it as usual. For example less /var/log/syslog or tail -f /var/log/syslog.