« Pinephone » : différence entre les versions

De wiki jackbot
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
mAucun résumé des modifications
Ligne 2 : Ligne 2 :


Le Pinephone est un téléphone utilisant des distributions linux. Disponible [https://pine64.com/product-category/pinephone/?v=0446c16e2e66 ici]
Le Pinephone est un téléphone utilisant des distributions linux. Disponible [https://pine64.com/product-category/pinephone/?v=0446c16e2e66 ici]
<h1>Les systèmes d'exploitations disponibles</h1>
Il existe une tripoté de systèmes d'exploitations pour ce téléphone ! De Archlinux, jusqu'à Ubuntu Touch, en passant par Mobian, PostMarketOS et j'en passe. La meilleure façon que j'ai trouvé pour me faire une idée de ces différents systèmes est d'utiliser l'image multi-distro disponible [https://xnux.eu/p-boot-demo/ ici]. Pour créer la carte µSD il suffit de suivre les instructions sur la page.
Après quelques tests, arrivent en tête Mobian et PostMarketOS/Phosh. Mais ce n'est que mon point de vue, je vous invite à essayer et à vous faire votre propre avis.


<h1>Problème de la carte SD</h1>
<h1>Problème de la carte SD</h1>
Ligne 68 : Ligne 73 :
*[https://forum.pine64.org/showthread.php?tid=10014 Source de la solution]
*[https://forum.pine64.org/showthread.php?tid=10014 Source de la solution]
*[https://electronproton.com/mmcli-command-examples/ Source des commandes]
*[https://electronproton.com/mmcli-command-examples/ Source des commandes]
<h1>Gérer un crash</h1>
Il m'est arrivé dernièrement de voir mon pinephone ne plus vouloir démarrer, "Don't panic !". La première chose à faire est de récupérer une image d'un système d'exploitation pour créer une carte µSD bootable. Voir [[#Les_syst.C3.A8mes_d.27exploitations_disponibles|Les systèmes d'exploitations disponibles]]
Une fois la carte créée et le pinephone démarré, il est possible que vous puissiez régler le problème à partir de ce système d'exploitation tout frais. Dans le cas contraire, il va falloir aller plus loin et chrooter le système existant
<h2>Chrooter le système</h2>
Dans la suite je suppose que vous être en root. Un prérequis à ça est d'installer qemu-user-static simplement avec la commande :
<pre style="color: silver; background: black;">
apt-get install qemu-user-static
</pre>
Une fois ceci fait il faut monter les partitions de votre système défaillant
<pre style="color: silver; background: black;">
mount /dev/mmcblk2p2 /mnt/ -o noatime
mount /dev/mmcblk2p1 /mnt/boot -o noatime
</pre>
Puis copyer qemu emulator dans le système à chrooter :
<pre style="color: silver; background: black;">
cp -u /usr/bin/qemu-aarch64-static /mnt/usr/bin
</pre>
Puis enfin chrooter le système à proprement parler :
<pre style="color: silver; background: black;">
chroot /mnt qemu-aarch64-static /bin/bash
</pre>
Il est également nécessaire de monter d'autres dossier basiques :
<pre style="color: silver; background: black;">
mount none -t devtmpfs /dev
mount none -t devpts /dev/pts
mount none -t proc /proc
mount none -t tmpfs /tmp
</pre>
Voilà maintenant vous êtes dans le système de fichier défaillant et maintenant on peut chercher vraiment d'où vient le problème. Bien entendu la première chose à faire c'est de regarder les logs :
<pre style="color: silver; background: black;">
journalctl -r
</pre>
<h2>Sortir du système chrooté</h2>
Rien de bien compliqué dans cette étape, il suffit de démonter les différents dossiers dans l'ordre inverse :
<pre style="color: silver; background: black;">
umount /dev/pts /dev /proc /tmp
exit
umount /mnt/boot /mnt
</pre>
*[https://wiki.mobian-project.org/doku.php?id=troubleshooting Sources]

Version du 28 novembre 2021 à 11:13


Le Pinephone est un téléphone utilisant des distributions linux. Disponible ici

Les systèmes d'exploitations disponibles

Il existe une tripoté de systèmes d'exploitations pour ce téléphone ! De Archlinux, jusqu'à Ubuntu Touch, en passant par Mobian, PostMarketOS et j'en passe. La meilleure façon que j'ai trouvé pour me faire une idée de ces différents systèmes est d'utiliser l'image multi-distro disponible ici. Pour créer la carte µSD il suffit de suivre les instructions sur la page.

Après quelques tests, arrivent en tête Mobian et PostMarketOS/Phosh. Mais ce n'est que mon point de vue, je vous invite à essayer et à vous faire votre propre avis.

Problème de la carte SD

Lorsque j'ai eu mon Pinephone, j'ai testé quelques système d'exploitation avant d'en installer un sur la mémoire interne. J'ai donc formater la carte SD que j'avais utilisé pour les tests afin de l'utiliser en tant que stockage. Cependant, mon Pinephone ne voulait pas démarrer avec cette carte SD. Cela vient du fait que même après un formatage les secteurs correspondant au u-boot, sont toujours présent. Pour s'en débarrasser il faut lancer la commande suivante :

dd if=/dev/zero of=/dev/mmcblk0 bs=1024 seek=8 count=2048

En remplaçant bien sûr "mmcblk0" par le nom de la carte SD. Une fois ces secteurs effacé, le Pinephone démarre normalement avec la carte SD en guise de stockage.

Problème avec les SMS

Il m'est arrivé de ne plus recevoir les sms. Il s'avère qu'il s'agit d'une sorte de bug lié à des fichiers persistants (SMS en cours de traitement). Afin de vérifier s'il y a effectivement un "trop plein" de fichier il est nécessaire d'utiliser le terminal et de préférence via SSH (c'est quand même plus pratique)

Connaître le chemin/index du modem

# mmcli -L
/org/freedesktop/ModemManager1/Modem/0 [QUALCOMM INCORPORATED] QUECTEL Mobile Broadband Module

Connaître le chemin/index de la SIM du modem

# mmcli -m 0 | grep SIM
SIM      |        primary sim path: /org/freedesktop/ModemManager1/SIM/0

On peut ici voir dans la réponse le chemin qui est utilisé par le système d'exploitation pour traiter tout ce qui touche aux différentes fonctions téléphone.

Lister les SMS en attente

Pour lister les sms en cours de traitement dans le modem du Pinephone il faut exécuter la commande suivante :

# mmcli -m 0 --messaging-list-sms
/org/freedesktop/ModemManager1/SMS/19 (sent)
/org/freedesktop/ModemManager1/SMS/18 (receiving)
/org/freedesktop/ModemManager1/SMS/17 (received)
/org/freedesktop/ModemManager1/SMS/16 (received)
/org/freedesktop/ModemManager1/SMS/15 (received)
/org/freedesktop/ModemManager1/SMS/14 (received)
/org/freedesktop/ModemManager1/SMS/13 (received)
/org/freedesktop/ModemManager1/SMS/12 (received)
/org/freedesktop/ModemManager1/SMS/11 (received)
/org/freedesktop/ModemManager1/SMS/10 (received)
/org/freedesktop/ModemManager1/SMS/9 (received)
/org/freedesktop/ModemManager1/SMS/8 (received)
/org/freedesktop/ModemManager1/SMS/7 (received)
/org/freedesktop/ModemManager1/SMS/6 (received)
/org/freedesktop/ModemManager1/SMS/5 (received)
/org/freedesktop/ModemManager1/SMS/4 (received)
/org/freedesktop/ModemManager1/SMS/3 (received)
/org/freedesktop/ModemManager1/SMS/2 (received)
/org/freedesktop/ModemManager1/SMS/1 (receiving)
/org/freedesktop/ModemManager1/SMS/0 (received)

D'après ce que j'ai pu lire à droite et à gauche, il ne devrait jamais y avoir plus de 10 sms en cours de traitement. Or là dans mon cas il y en a bien plus, ce qui pour une raison que j'ignore bloque complètement la réception des nouveaux SMS entrant.

Suppression des SMS

Vous aurez beau chercher, mais ces fichiers là n'apparaissent pas dans la racine du système, impossible donc de les effacer à coup de rm. Pour y arriver il faut lancer la commande :

# mmcli -m 0 --messaging-delete-sms=1
successfully deleted SMS from modem

Ce qui aura pour effet d'effacer le SMS numéro 1. J'imagine que vu que le 0 correspond à la SIM il ne vaut mieux pas y toucher. Je vais donc réitérer la manip pour tous les sms coincés. Une fois ceci fait, le Pinephone accepte à nouveau de recevoir des SMS.

Gérer un crash

Il m'est arrivé dernièrement de voir mon pinephone ne plus vouloir démarrer, "Don't panic !". La première chose à faire est de récupérer une image d'un système d'exploitation pour créer une carte µSD bootable. Voir Les systèmes d'exploitations disponibles

Une fois la carte créée et le pinephone démarré, il est possible que vous puissiez régler le problème à partir de ce système d'exploitation tout frais. Dans le cas contraire, il va falloir aller plus loin et chrooter le système existant

Chrooter le système

Dans la suite je suppose que vous être en root. Un prérequis à ça est d'installer qemu-user-static simplement avec la commande :

apt-get install qemu-user-static

Une fois ceci fait il faut monter les partitions de votre système défaillant

mount /dev/mmcblk2p2 /mnt/ -o noatime
mount /dev/mmcblk2p1 /mnt/boot -o noatime

Puis copyer qemu emulator dans le système à chrooter :

cp -u /usr/bin/qemu-aarch64-static /mnt/usr/bin

Puis enfin chrooter le système à proprement parler :

chroot /mnt qemu-aarch64-static /bin/bash

Il est également nécessaire de monter d'autres dossier basiques :

mount none -t devtmpfs /dev
mount none -t devpts /dev/pts
mount none -t proc /proc
mount none -t tmpfs /tmp

Voilà maintenant vous êtes dans le système de fichier défaillant et maintenant on peut chercher vraiment d'où vient le problème. Bien entendu la première chose à faire c'est de regarder les logs :

journalctl -r

Sortir du système chrooté

Rien de bien compliqué dans cette étape, il suffit de démonter les différents dossiers dans l'ordre inverse :

umount /dev/pts /dev /proc /tmp
exit
umount /mnt/boot /mnt