Menu
Atélili
Documentation
Organisation & préparation
Divers
Atélili
Documentation
Organisation & préparation
Divers
Situation de départ :
Il s'agit d'une tablette avec clavier détachable, vendue sous Windows 10. Actuellement verouillé par un mot de passe demandé au démarrage via une fenêtre qui se présente comme une fenêtre Windows.
Le menu d'UEFI reste accessible (F2), et il est possible de démarrer sur clé USB (que celle-ci gère UEFI, ou pas).
Windows 10 étant intriqué avec l'UEFI, on devra jongler avec ses menus pour accéder aux options de démarrage qui nous intéressent.
Situation finale :
Démarrer sur un ISO de Debian Jessie, et consulter les partitions NTFS existantes depuis l'installeur. Le montage des partitions NTFS semblait poser problème. Ces partitions étaient identifiées sous /dev/mm* (et non pas /dev/sda).
La fenêtre est identique à celle montrée en photo dans cet article : http://www.pcastuces.com/pratique/windows/proteger_demarrage_windows/page3.htm
Cela confirme qu'il s'agit donc d'un mot de passe Windows, et non d'un mot de passe UEFI.
Il doit y avoir des outils pour les faire sauter. Testons celui-ci qui est libre : https://pogostick.net/~pnh/ntpasswd/
On peut chopper une version pour clé USB. Il faut copier les fichiers, et rendre la clé bootable avec syslinux.
On installe donc syslinux. Documentation : http://www.syslinux.org/wiki/index.php?title=HowTos
syslinux -i /dev/sdX1
… ne fonctionne pas car ma partition de clé USB est en EXT4.
Plutôt que de chercher une autre solution, je la change en NTFS/exFAT (type 7) avec fdisk.
Puis j'installe dosfstools
.
mkfs.vfat /dev/sdX1
Je recopie les fichiers de chntpw, puis je relance syslinux. Cette fois-ci ça fonctionne.
Quand Windows nous demande le mot de passe, on choisit “Redémarrer”. Il nous présente ensuite :
Préparation de la réparation automatique (fond noir). Diagnostic de votre ordinateur (fond noir).
Réparation automatique (fond bleu) : Redémarrer / Options avancées.
On choisit 2.
Il me liste ma clé USB, en indiquant qu'il s'agit d'une clé UEFI. Un peu bizarre mais OK.
Le démarrage sur la clé USB ne fonctionne pas, je retombe sur la demande de mot de passe.
Redémarrer.
Je retombe sur les options sur fond bleu.
Je refais la même chose (option 2), cette fois-ci il me trouve bien ma clé USB et indique le modèle (KingstonTrucBidule). Toujours avec UEFI.
Il ne démarre pas sous la clé USB. C'est qu'il y a un problème dans la structure de boot de la clé-même. Peut-être le flag du secteur d'amorçage mal ajusté : il faut le changer avec fdisk.
Retour à l'écran à fond bleu.
Cette fois-ci il me propose d'autres options :
Je choisis 2. Il me propose :
Je choisis 2. Il me propose :
Je ne le souhaitais pas, mais j'ai choisi 3. Il me lance des “Tentatives de réparation” (fond noir), c'est long. Trop long (> 10 mins ?). J'éteinds l'ordi.
Je change le flag d'amorçage de ma clé USB (fdisk semble valider le changement même si on ne fait pas 'w' pour réécrire la table de partitions).
Il y a quelques articles qui parlent de réinitialiser le mot de passe d'un utilisateur, mais pas le mot de passe général (maître).
Petite exploration avec les commandes net
.
net user
ne recense aucun utilisateur.
net user fab /add
dit qu'il ajoute le compte, mais pas aux groupes utilisateurs
.
net localgroup administrators fab2 /add
dit que le groupe localgroup n'existe pas.
Il ne semble pas avoir beaucoup de services démarrés. Un net start
préalable semble démarrer des trucs mais ne résout rien.
Il se fait avec la touche F2
au démarrage.
Les options de l'UEFI sont assez légères, on peut apporter des précisions.
En fait, réinitialiser le mot de passe, c'est amusant mais on peut faire sans.
Donc tentons de démarrer depuis un ISO qui ne posera pas de problème pour l'accès des partitions NTFS.
La sauvegarde des fichiers utilisateurs pourra se faire par le réseau.
Préparation de la clé USB :
# dd if=lmde-2-201701-cinnamon-64bit.iso of=/dev/sdX bs=4M; sync
Cette fois-ci, il démarre bien sur la clé USB, même si l'intitulé est vague (UEFI: Removable Device
).
Au démarrage de Mint, Cinammon passe en mode fallback
, sinon il dit qu'il plante.
En plus, il est pas gentil : pas de menu pour régler l'écran dans les paramètres. Il y a quand même une icône “Display” dans le menu de Mint. Sauf que : pas possible de régler la rotation de l'écran.
xrandr --output default --rotate left
… me sort un : output default cannot use rotation “left” reflection “none”.
Voyons pour le réseau : un lspci ne me recense aucune interface réseau… donc pas évident de voir s'il faut un firmware.
Pas de choix de la langue du clavier, qui reste en anglais. Les autres langues semblent installables, mais ce petit rigolo reste en Qwerty même si on vire anglais de la liste et qu'on applique le “Français”. Faute de connexion internet disponible ? Il ne dit rien.
Un peu galère. Optons pour la version de Mint basée sur Ubuntu.
Cette dernière page dit que le wifi est cassé sur les noyaux 4.4.x et < 4.4.4. Ce qui est le cas de l'installeur de Linux Mint 18.1. Le chipset nécessite un noyau > 4.0.
Bonne surprise : l'installeur de Linux Mint semble pouvoir redimensionner les partitions. Ca laisse une chance de conserver un bout de partition Windows, et de récupérer les données après installation.
Note : Mint semble détecter le modèle comme un T100HAN, il le suggère comme nom de machine.
L'installation s'est déroulée avec succès.
Grub me propose Mint et d'autres options.
En démarrage normal : il reste bloqué sur un écran noir.
En démarrage “avec upstart” : il me sort des erreurs relatives au module intel [i915].
[drm:intel_parse_bios [i915]] *ERROR* Unable to parse MIPI Sequence Block v3+ ... Failed to own the pwm chip ... mismatch in base.adjusted_mode.crtc_clock (expected 75000, found 18750) ... mismatch in port_clock (expected 75000, found 18750)
On peut accéder à une console root.
Mint utilise les dépots d'Ubuntu. Voyons voir : http://packages.ubuntu.com/yakkety/kernel/
On trouve par ici un kernel 4.8.0 (ainsi qu'un 4.10 ici : http://packages.ubuntu.com/zesty/kernel/).
Je récupère celui-ci : http://packages.ubuntu.com/yakkety/amd64/linux-image-4.8.0-46-generic/download
Après installation de ce paquet, il me dit qu'il ne peut pas trouver les headers. Ainsi que pas de gestion de la locale fr_FR.utf8. Il se sert sans doute des headers pour recompiler des modules.
Ca a l'air de passer quand même, donc je tente.
Ah, cette fois-ci, il m'affiche un logo Linux Mint en mode de démarrage normal, mais bam, il me rebalance sur un shell avec (initramfs). Pareil avec upstart. Ah, en mode Recovery, après plusieurs répétitions d'une ligne Begin: Running /scripts/local-block … done.
il me dit :
UUID=6a...58 does not exist. Dropping to a shell!
On tente d'installer les headers voir si ça le rassure.
http://packages.ubuntu.com/yakkety/amd64/linux-headers-4.8.0-46-generic
Cette fois-ci, il me pose un problème de système de fichiers monté en lecture seule. Même la console de récupération est devenue capricieuse : il tente le montage de la partition root tardivement, et me réaffiche le menu de Recovery en indiquant “filesystem state: read-only”.
Il doit y avoir une erreur sur le système de fichiers… qui est en btrfs il semblerait.
Le menu recovery de Mint propose une entrée “fsck”. Remontage de / en lecture/écriture dit-il. J'aurais plutôt pensé qu'il devait faire un démontage complet de la partition….
Il me lance quelques services, puis il reste figé sur Started Braille Device Support. Mais en fait … il a quand même semble t-il fait le boulot : entrée, puis il me ramène au menu Recovery, cette fois-ci avec la partition montée en lecture/écriture.
Headers installés avec succès.
Démarrage en 4.8 mode normal : même gag, il me ramène sous un shell busybox/initramfs.
Démarrage en 4.8 recovery : il délire sur /scripts/local-block, me rebalance sur le même shell.
4.4 recovery : de nouveau des soucis, système de fichiers en lecture seule. Après vérification, la partition est bien montée en ext4.
On a assez fait mumuse, maintenant on fait quoi ? Le moindre redémarrage, quel que soit le kernel, semble faire foirer la partition root.
On va tenter de recommencer à 0, en prenant tout l'espace disque plutôt qu'un redimensionnement périlleux. Se renseigner sur une distrib qui possède un kernel récent, pour le moment je ne vois pas.
Avec cette installation (même foireuse), on est en mesure de faire un backup des fichiers du disque dur NTFS sur un périphérique USB. On aura gagné au moins ça.
Il y a une option UEFI networking, qui était désactivée. Je l'ai réactivée.
Pas mal d'options sont grisées.
Dispose d'un kernel 4.9 : https://packages.debian.org/unstable/kernel/
Des weekly-builds sont par ici : http://cdimage.debian.org/cdimage/weekly-builds/amd64/iso-cd/
Et on prend des non-officiels avec firmwares intégrés, parcequ'on est des fans de matos propriétaire car ils sont plus puissants !1)
Après, c'est bien gentil d'avoir récupéré Grub au lieu des menus Windows qui moulinent, mais au moins ce dernier nous permettait de choisir un périphérique :D
Ca ne l'a pas soigné d'installer Linux. On va donc y aller en mode bourrin : démarrer sur l'USB depuis grub2.
http://blog.viktorpetersson.com/post/93191892924/how-to-boot-from-usb-with-grub2
La partition de la clé USB est /dev/sda1, ça correspond à (hd0,msdos1)
grub> linux (hd0,msdos1)/install/vmlinuz root=/dev/sdb1 grub> initrd (hd0,msdos1)/install/initrd.gz grub> boot
… ça fonctionne.
Cette fois-ci on partitionne de façon à ne pas contrarier Debian : il vire tout, on lui dit de ne pas avoir de /home séparé. Il semble créer plusieurs partitions tout de même.
Je trouvais que Debian mettait beaucoup de temps pour formater, mais ça va, il s'est décoincé. Ctrl+F4 pour voir ses activités en cas de doute.
Foirage pendant l'installation lors de l'installation de grub-efi-amd64, qui semble être absent.
Je me mets ça de côté : https://wiki.debian.org/GrubEFIReinstall
Là ça commence à être beau. L'installation précédente a viré toutes les partitions, sans pouvoir installer Grub2. On se retrouve dans l'UEFI sans qu'aucune option de démarrage ne fonctionne.
Après avoir tourné en rond pendant une heure en ayant flippé d'avoir briqué la machine, je commence à lire la description de l'auteur de rEFInd : http://www.rodsbooks.com/refind/
In theory, EFI implementations should provide boot managers. Unfortunately, in practice these boot managers are often so poor as to be useless. The worst I've personally encountered is on Gigabyte's Hybrid EFI, which provides you with no boot options whatsoever, beyond choosing the boot device (hard disk vs. optical disc, for instance). I've heard of others that are just as bad. For this reason, a good EFI boot manager—either standalone or as part of a boot loader—is a practical necessity for multi-booting on an EFI computer. That's where rEFInd comes into play.
La description colle … par contre, est-ce qu'il va bien vouloir exécuter le shell EFI situé sur la clé USB ? Réponse : oui.
rEFInd est magique. Il me retrouve l'installation de Debian et a sû démarrer dessus.
Après avoir démarré Debian, toujours pas de Wifi. Je m'attendais à un noyau 4.x mais il m'a mis un vieux 3.16.
Pas simple sans accès réseau.
Avoir les dépendances du kernel …
Les 2 solutions mentionnées ici ne semblent pas fonctionner dans mon cas : http://stackoverflow.com/questions/13756800/how-to-download-all-dependencies-and-packages-to-directory
Ca fonctionne un peu mieux avec la méthode print-uris, en cleanant le cache au préalable : http://www.tuxradar.com/answers/517
Note: j'ai dû ajouter l'archi amd64 à mes dépots avant de pouvoir faire ça.
Franchement fastidieux ces deps. Je lui ai câlé le kernel 4.8 qui trainait sur la clé, j'ai réalisé après coup qu'il ne vient pas de Debian… résultat: erreur au démarrage pour trouver la partition root puis shell initramfs, même délire que plus haut.
Aucun problème pour redémarrer sur le noyau 3.x. Donc les erreurs de système de fichiers semblent dûes à l'usage d'un noyau 4.8/9.
http://www.rodsbooks.com/refind/installing.html#linux
La solution à base de .deb foire : je crois qu'il n'installe que l'EFI 64bits, et en plus, il semble qu'il manque le paquet efibootmgr dans les dépots.
On le choppe :
Lors du lancement de la commande efibootmgr, il m'indique des erreurs liées à GPT, qui pourraient être corrigées avec GNU Parted…
Malheureusement après suivi des instructions d'installation, rEFInd ne démarre pas. Donc je dois remettre la clé USB. Par contre, une fois dans rEFInd, il m'a ajouté une icône qui consiste à lancer l'instance locale de rEFInd (située dans une partition FAT de ~500Mo).
On choppe :
Super, une doc pour réinstaller grub-efi : https://wiki.debian.org/GrubEFIReinstall
ça fonctionne ! On retrouve notre grub au démarrage de l'ordi et on n'a plus besoin de rEFInd.
Donc Debian démarre bien, via grub qui est installé.
Reste que, il n'y a pas de wifi et que la carte graphique n'est pas bien reconnue.
La piste que je renifle, c'est d'utiliser debootstrap pour chopper les paquets récents. Reste à voir si je redimensionne la partition pour l'accueillir comme un nouveau système, ou si c'est juste un moyen détourné pour récupérer les .deb.
La piste debootstrap installe des paquets, mais pas le noyau. Il faut faire un chroot avant. Un peu la flemme.
L'autre piste, c'est de chopper un ISO plus récent, il doit être possible de l'ajouter dans le sources.list. En effet le “testing non officiel” datait de janvier (tandis que le testing officiel est chaque semaine). Ca évitera aussi d'installer des trucs ATI/Nvidia dont on n'a que faire.
Ce sera pas le bleeding-edge, mais on gagnera déjà pas mal.
La liste des paquets de l'ISO est lisible par ici : http://cdimage.debian.org/cdimage/weekly-builds/amd64/list-cd/
On confirme qu'il y a un noyau 4.9.
Comment ajouter un fichier .ISO dans le sources.list ? Il faut le monter en loop au préalable. Voir: https://linuxconfig.org/add-iso-image-to-apt-sourceslist
Ca fonctionne, sauf que je me retrouve dans une situation de paquets qui ne sont pas en commun entre les 2 versions de Testing. La 1ère a MATE, cette seconde a XFCE.
Malgré tout, la mise à jour s'est faite avec succès, et l'installation de XFCE s'est bien passée.
On a gagné : la possibilité de réorienter l'écran.
Il reste à conquérir : la connexion wifi. Le noyau 4.9 n'a pas solutionné la question tout seul.
Le problème c'est que le chipset n'apparaît pas clairement dans la liste de lspci, ou n'apparaît pas du tout.
On lit que c'est le même qu'une autre machine. J'ai suivi les instructions (copie de firmware etc), mais ça n'a pas fonctionné.
Le wifi étant peut-être lié au processeur, un cat /proc/cpuinfo
m'indique qu'il s'agit d'un, ou plutôt de 4 coeurs :
Intel(R) Atom(TM) x5-Z8500 CPU @ 1.44GHz cpu_family: 6 model: 76 stepping: 3 microcode : 0x358 cpu cores : 4
Bon, allons-y pour de vrai :
J'ai double-vérifié le tuto suivi par ici : https://wiki.debian.org/InstallingDebianOn/Asus/X205TA ; d'autres pages web convergeaient sur la procédure.
modprobe brcmfmac
… ne produit rien de spécial. Il charge le module, me sort dans dmesg :
usbcore: registered new interface driver brcmfmac
… mais rien de plus. Rien dans ifconfig -a
.
lsmod | grep brc
… me renvoie plusieurs modules: brcmfmac, brcmutil, cfg80211, usbcore, mmc_core. Tous chargés.
Installation de rfkill, celui-ci ne me renvoie aucun interrupteur (rfkill list
).
Fn+mode avion ne semble rien produire, la touche est sans effet. La touche Fn+écran fonctionne et me lance les propriétés d'affichage. J'en déduis que certaines touches Fn fonctionnent.
Je rends temporairement la machine à son propriétaire, en installant au préalable libreoffice. Chopper l'iso du DVD et l'ajouter au sources.list.
La version DVD contient tous les environnements, ça lui a permis de mettre à jour des paquets de Mate qui manquaient avec le CD1.
Le gros problème reste qu'on a peu d'infos sur le chipset wifi, donc va falloir creuser avec les références qu'on a.
Autre constat : ajuster la luminosité ne fonctionne pas.
Peu probable, mais une mise à jour du BIOS/UEFI peut parfois aider à résoudre des cas similaires.
La situation :
Sur Internet, une info utile :
fbcon=rotate:3
dans la bonne ligne de /etc/default/grub, puis update-grub
. Cela ne règle que le torticoli en mode console.xinput
(via topic transformerforums) qui définit une matrice de transformation (youpi), ça fonctionne, même si pas parfaitement (pas de glissement ou d'usage à 2 doigts). J'ai ajouté ce script comme script de démarrage Mate, planqué dans un répertoire ~/.bin