92 lines
4.4 KiB
Markdown
92 lines
4.4 KiB
Markdown
Lang: fr
|
||
Slug: black-screen-at-boot-on-my-pinephone
|
||
Summary: OK, aujourd’hui mon [PinePhone](https://fr.wikipedia.org/wiki/PinePhone) ne boot plus.
|
||
Title: Écran noir au démarrage de mon PinePhone
|
||
|
||
OK, aujourd’hui mon [PinePhone](https://fr.wikipedia.org/wiki/PinePhone)
|
||
ne boot plus. Ça me fait ça :
|
||
|
||
- J’appuie sur le bouton pour le démarrer,
|
||
- je lui donne la passephrase pour déchiffrer la partition,
|
||
- J’ai le joli logo « Mobian » pendant quelques instants,
|
||
- Et boom, écran noir, terminé.
|
||
|
||
Je parie d’abord que c’est un problème graphique dû à une mise à jour
|
||
récente. Ça me rappelle l’époque où j’ai cru bon de mettre une Ubuntu
|
||
sur la machine de ma maman : à chaque mise à jour le serveur X ne
|
||
démarrait plus. Vous vous souvenez de la blague « C’est quoi un Ubuntu
|
||
Server ? C’est un Ubuntu Desktop avec le serveur X qui ne démarre
|
||
pas ! » ?
|
||
|
||
Si mon pari est bon, j’ai juste à me `ssh`… « `no route to host` », damned !
|
||
|
||
Donc il plante **avant** d’avoir configuré son interface réseau.
|
||
|
||
Mais c’est un PinePhone, avec [Mobian](https://mobian-project.org/)
|
||
(une Debian avec deux-trois patch pour mobiles), donc je sais que je
|
||
vais m’en sortir, commencons simplement par lire les logs avant de
|
||
suivre le lapin blanc et de plonger au fond du terrier de
|
||
l’UART-over-jack…
|
||
|
||
- J’appuie sur le bouton « power » pour le démarrer,
|
||
- je lui donne sa passephrase à nouveau,
|
||
- et j’appuie sur un bouton de « volume » : comme sur une Debian, l’appui d’une touche chasse le « splash screen » et laisse lire les logs :
|
||
|
||
```text
|
||
The root filesystem on /dev/mapper/calamares_crypt requires a manual fsck
|
||
```
|
||
|
||
OK ! Facile. Mais sans clavier ?
|
||
|
||
C’est le moment de monter l’[eMMC](https://en.wikipedia.org/wiki/MultiMediaCard#eMMC) via USB !
|
||
|
||
Mon téléphone démarre avec [Tow-Boot](https://tow-boot.org/), exposer la MMC via USB c’est facile :
|
||
|
||
- Je l’éteins (~8s sur le bouton power).
|
||
- Je le branche à mon ordinateur portable avec un câble USB-C.
|
||
- Je le démarre en mode « USB Mass Storage » (en maintenant « volume up » enfoncé au démarrage jusqu’à la 2 vibration).
|
||
- Instantanément mon ordinateur portable détecte un nouveau périphérique USB, `udisks` veut le monter, `Gnome` me demande la passephrase, `udisks` monte les deux partitions : que j’aime quand tout roule !
|
||
- Boom, tout disparaît. Un coup d’œil à `journalctl -e` : `usb 1-5: device
|
||
descriptor read/64, error -71` ... `I/O error, dev sda`…
|
||
|
||
Donc là soit mon câble USB-C est mal branché ou mal en point, soit ma
|
||
MMC est morte. Je vais parier pour le câble (c’est plus facile à résoudre).
|
||
|
||
- Redémarrage du téléphonne en mode « USB Mass Storage »
|
||
- Je ne donne pas la passephrase à Gnome cette fois, de toutes façons on a besoin de lui passer un `fsck`, pas de le monter.
|
||
- Un petit `ls` dans `/media/mdk/boot`, pas de `read error` dans `sudo journalctl -f`, rassurant.
|
||
- `sudo fdisk -l /dev/sda` m’annonce ~30GiB et les deux paritions, rassurant.
|
||
|
||
|
||
Vu que la partition est chiffrée j’ai besoin de la déchiffrer (sans la
|
||
monter) **avant** de passer le **fsck**, à coup de `cryptsetup` :
|
||
|
||
```bash
|
||
$ sudo cryptsetup open /dev/sda2 mobian # ça me demande ma passphrase
|
||
$ file /dev/mapper/mobian # Ça c’est la « vue » déchiffrée de la partition
|
||
/dev/mapper/mobian: symbolic link to ../dm-0
|
||
$ sudo fdisk -l /dev/mapper/mobian # Je suis curieux, et j’ai besoin d’être rassuré
|
||
Disk /dev/mapper/mobian : 28.47 GiB, 30574379008 octets, 59715584 secteurs
|
||
$ sudo fsck /dev/mapper/mobian # On m’a dit d’exécuter `fsck` manuellement, je le fais.
|
||
fsck from util-linux 2.38.1
|
||
e2fsck 1.46.6-rc1 (12-Sep-2022)
|
||
root contains a file system with errors, check forced.
|
||
[plein plein plein d’erreurs]
|
||
$ sudo mount /dev/mapper/mobian /mnt # Juste pour me rassurer
|
||
$ ls /mnt # Youpi !
|
||
bin boot dev etc home lib lost+found media mnt opt proc root run sbin srv sys tmp usr var
|
||
$ sudo umount /mnt
|
||
$ sudo cryptsetup close mobian
|
||
```
|
||
|
||
Ça me semble bon, je reboot le téléphone…
|
||
|
||
Ça marche !!!
|
||
|
||
Je sais, je sais, ta grand-mère n’aurait pas sû réparer le sien (ma
|
||
grand-mère non plus), mais je reste très satisfait d’être capable de
|
||
réparer le mien moi-même : c’est une bonne première étape.
|
||
|
||
Si j’avais eu un téléphonne d’un GAFA, quelles auraient été mes
|
||
solutions ? En acheter un autre.
|