Home Debian, GNU / Linux, OS nos chers systèmes d'exploitation, Ubuntu, Windows Découvrez quel kernel GNU Linux est le meilleur ami des Surface!
DebianGNU / LinuxOS nos chers systèmes d'exploitationUbuntuWindows

Découvrez quel kernel GNU Linux est le meilleur ami des Surface!

(article mis à jour le 1er janvier 2021 – bonne année à chacun·e! – suite à la sortie de la version Surface du kernel 5.9.8 le 13 novembre 2020 | concerne aussi les versions 5.10.xx mises à disposition les mois qui ont suivi)

Dans cet article nous expliquons comment installer le système d’exploitation GNU Linux Ubuntu en quelques étapes simples et sécuritaires, en parallèle à Windows, sur les ordinateurs Microsoft Surface (tel que testé sur des modèles parmi les éditions 2017 à 2020).

Cette marche à suivre affectant le Kernel des distributions Debian, et non Ubuntu en particulier.

Nous l’avons testée avec succès sur Mint Ubuntu et UOS (le beau DeepIn OS). Les ajustements pour la Surface (marche à suivre ci-dessous) nous ont pris moins de 5 minutes chrono.
Microsoft Surface Book Ubuntu Edition par Tell Handel Co
La qualité de fabrication de la Surface en fait un bon produit pour GNU Linux. À condition d’y installer une version de kernel qui lui convienne!

Les « pour »

  • Bien sûr sécurité numérique et respect de la vie privée [*]
  • Rapidité et grande performance du processeur
  • Température inférieure (à condition d’installer le bon kernel)
  • Meilleure autonomie de la batterie (kernel toujours)
  • L’accès en lecture / écriture à tous les fichiers Windows depuis l’environnement Ubuntu (à condition toutefois de ne pas chiffrer la partition Windows).
  • La confidentialité des fichiers Ubuntu depuis l’environnement Windows (la partition Ubuntu n’est pas visible / Même qu’une fois Bitlocker réactivé, votre espace Ubuntu est totalement caché, y compris au démarrage puisque le GRUB ne s’active pas)
  • Tout l’univers OpenSource à portée de main

L’unique « contre »

  • Les caméras ne fonctionnent pas sur certains modèles Surface toutefois suivons de près le projet libcamera, très prometteur. Né d’une concertation entre l’industrie de fabrication des ordinateurs et l’univers OpenSource, son objectif est d’étendre au plus grand nombre de marques et modèles les ordinateurs dont la webcam est supportée par Linux. Tous les détails : https://libcamera.org/

Avant de vous lancer dans l’aventure

Niveau de connaissances requis : 8/10. Une maîtrise confortable de l’informatique est nécessaire (de la facilité dans la gestion des paquets debian). Un doute? Nous vous conseillons de faire appel à un intervenant Linux qualifié, du réseau Tell Handel par exemple.


Marche à suivre

Créer une clé USB contenant l’image ISO de la dernière version Ubuntu disponible.

Le téléchargement de l’image se fait à partir de https://ubuntu.com/download/desktop
Pour la création de la clé nous recommandons l’application https://www.balena.io/etcher/

Faire une sauvegarde de toutes les données importantes et créer un point de restauration Windows.

Principalement en raison de la désactivation du chiffrement qui suivra plus loin.

Modifier l’ordre / la séquence de démarrage et désactiver Bitlocker.

Pour ce faire, éteindre la Surface puis la rallumer en appuyant simultanément sur les boutons Volume+ et de mise en marche. Une fois dans le BIOS (Surface UEFI), ouvrir la section Boot Configuration > Configure Boot Device Order. Choisir la séquence de démarrage (cocher USB Storage et le placer en premier, au-dessus de Windows Boot Manager). L’ordre de démarrage pourra bien sûr être à nouveau modifié par la suite.

Se rendre dans la section Security > Secure Boot et désactiver Bitlocker (cela ne pose aucun risque, sauf en cas de vol de l’ordinateur. Bitlocker peut être réactivé par la suite à n’importe quel redémarrage (cependant, lorsqu’on souhaite démarrer sur la partition Ubuntu on ne peut le faire que quand Bitlocker est désactivé).

Si l’appareil fournit une clé de chiffrement à un moment ou un autre, prendre celle-ci en photo.

Quitter le BIOS (Surface UEFI) et redémarrer

Une fois dans Windows, désactiver le chiffrement du disque.

Avant de désactiver le chiffrement du disque il est fortement recommandé de procéder à une sauvegarde de sécurité des données et de créer un point de restauration Windows.

Ceci fait, on désactive le chiffrement en passant

A) par les > Paramètres > Mises à jour et sécurité Windows > Désactiver le chiffrement du disque

Ou B) Il se peut que ce soit le chiffrement BitLocker qui est activé, auquel cas le chiffrement doit être désactivé en passant par Dossier jaune > Ce PC) > clic de droite sur le disque C: > Gérer BitLocker > Désactiver BitLocker

Éteindre la Surface. Insérer la clé USB Ubuntu précédemment créée. Rallumer la Surface. Suivre les étapes d’installation de Ubuntu en prenant soin de bien sélectionner la première option (Installer Ubuntu à côté de Windows) puis, lorsque demandé, de choisir bien sûr la partition du disque que le logiciel d’installation aura précédemment créé pour Ubuntu (en principe une partition d’environ 44 à 50 Go situé à droite du schéma des partitions présentées à l’écran).

Une fois l’installation terminée Ubuntu propose de redémarrer l’ordinateur. Durant le processus de redémarrage il est demandé de retirer la clé USB Ubuntu (ne pas la retirer avant l’invite).

Redémarrer la Surface sur Ubuntu (plusieurs lignes s’affichent désormais au démarrage / ce sont les options pour le système d’exploitation, la première ligne étant pour démarrer Ubuntu et la dernière étant pour démarrer Windows / cet ordre pourrait être modifié par la suite en éditant le GRUB mais nous le déconseillons puisque la moindre erreur d’enregistrement du fichier GRUB == dont un codage non-adéquat par exemple, ce qui est fréquent == compromettrait alors le démarrage de l’ordinateur).

Une fois dans Ubuntu, installer un kernel qui soit adapté à la Surface (puisqu’à ce stade le tactile de l’écran n’est pas reconnu et le processeur chauffe).

« Et les vainqueurs sont… »



Selon nos tests, les meilleurs kernel Linux pour les Surface sont les 5.3.18 et les 5.10.xx (janvier 2021)

Le kernel, c’est ce qui constitue le noyau du système. Il « explique » à l’ordinateur comment les différentes composantes doivent communiquer entre elles. Quand on installe Ubuntu sur une Surface, le kernel Linux par défaut autour duquel Ubuntu s’articule ne permet pas au cœur du système de reconnaître les caméras internes ni le tactile de l’écran. De plus, le processeur chauffe, pour ne prendre que ces trois exemples.

Dans le cas des Surface des années 2017 à 2020, les versions de kernel 5.1.15 à 5.3.18-surface fonctionnent. Un changement de protocole initié par Intel fait qu’un kernel de version 5.4.x à 5.8.x peut ramener les problèmes de surchauffe etc. L’une des versions 5.10.xx-surface sera parfaite.


Il faut maintenant…

Importer la clé de sécurité publique qui permettra d’activer correctement le paquet kernel debian qui sera téléchargé deux étapes plus bas. L’importation de la clé se fait par l’invite suivante dans le terminal (sélectionner et copier le code ci-dessous, à coller dans le terminal par un clic droit de la souris, la combinaison des touches [Ctrl] + [V] ne fonctionnant pas dans le terminal)

Attention si vous retranscrivez manuellement l’invite ci-dessous. Dans  » -gO –  » il s’agit bien de la lettre O et non du chiffre 0.
wget -qO - https://raw.githubusercontent.com/linux-surface/linux-surface/master/pkg/keys/surface.asc \ | sudo apt-key add -

On vérifie la présence du paquet et on le tee pour la copie

Toujours en commande terminal bien sûr.
echo "deb [arch=amd64] https://pkg.surfacelinux.com/debian release main" | sudo tee /etc/apt/sources.list.d/linux-surface.list

Fait? Le temps est déjà arrivé de télécharger le paquet kernel debian et ses fichiers annexes depuis le navigateur Internet en cliquant sur le lien ci-dessous, puis en recherchant la bonne version de kernel dans la liste

https://github.com/linux-surface/linux-surface/releases/

Retrouver le paquet téléchargé en se servant de l’explorateur de fichiers. Cliquer deux fois sur le paquet. Le gestionnaire d’installation de paquet de Ubuntu s’occupe du reste.


Redémarrer l’ordinateur

Nous avons maintenant plusieurs kernel(s) puisque le 5.3.18 ou l’un des 5.10.xx — en fonction de notre choix précédent — vient de s’ajouter à l’autre. Par défaut le système continue d’ouvrir les sessions avec son kernel d’origine.

Au redémarrage de l’ordinateur, il faut donc choisir temporairement l’option Mode avancé (au lieu de simplement Ubuntu par exemple).

Dans les options avancées, sélectionner le kernel 5.3.18, 5.9.xx ou 5.10.xx et ouvrir une session.

Si la session a bien été ouverte sous le kernel 5.3.18, 5.9.xx ou 5.10.xx le processeur ne surchauffe plus. En cas de non-fonctionnement du tactile on procède comme suit

Depuis le terminal. Il est possible que vous ayez à saisir ces commandes de façon individuelle. Ex. sudo apt update pour une commande, puis sudo apt upgrade pour la seconde et finalement sudo apt install… pour la 3ème.
sudo apt update && sudo apt upgrade && \ sudo apt install git curl wget sed

Donner les autorisations (O/n) pour chacune des invites.

On copie ensuite le dépôt Surface depuis jakeday, sur notre ordinateur.

Encore par le terminal bien sûr
git clone https://github.com/jakeday/linux-surface.git ~/linux-surface

Une fois copié, nous lançons l’installation du dépôt.

Toujours dans le terminal
cd ~/linux-surface && sudo sh setup.sh

Suivre les informations et donner les autorisations (yes) pour chacune des invites, à l’exception de la première et de la dernière question (mise à jour du kernel).


Redémarrer l’ordinateur

Au redémarrage de l’ordinateur, choisir de nouveau le Mode avancé pour sélectionner le kernel 5.3.18, 5.9.xx ou 5.10.xx dans la liste, le plus récent avec lequel on veut désormais travailler.

À moins que le tactile ne fonctionne déjà, on exécute encore la commande suivante depuis une fenêtre terminal:

systemctl start iptsd.service


Effacer les images des kernel(s) inutilisés

L’invite terminal suivante suffira à purger l’OS des paquets devenus inutiles

Pour autant que nous soyons avec une version 18.04 de Ubuntu, ou plus récente
sudo apt-get autoremove

Il se peut toutefois que certaines images des kernel(s) inutilisés soient encore présentes. L’invite terminal ci-dessous nous permettra de vérifier sur quel kernel Ubuntu travaille

Décembre 2020 ce devrait en principe être l’un des 5.10.xx-surface, ou celui avec lequel on a décidé de travailler
uname -r

Nous allons maintenant afficher la liste des kernel(s) éventuellement présents sur notre ordinateur, en utilisant la commande terminal…

dpkg --list | grep linux-image
La commande ci-dessus doit nous donner à peu près ce résultat. Si les seules images présentes sont notre choix linux-image-5.3.18-surface et linux-image-5.3.18-surface (safe mode) / ou linux-image-5.10.xx-surface et linux-image-5.10.xx-surface (safe mode) aucune action n’est requise

La suppression des images de kernel(s) en trop se fait comme suit

À supposer que votre ordinateur ait un kernel obsolète qui porterait le nom linux-image-4.4.0-21-generic comme nous le voyons sur la capture d’écran en exemple, la commande serait
sudo apt-get --purge remove linux-image-4.4.0-21-generic

Et ainsi de suite pour chaque image de kernel non-utilisé (à l’exception du kernel avec lequel on travaille désormais on se comprend!)

Chiffrer la partition Windows

Celles et ceux qui le souhaitent pourront chiffrer la partition Windows

En passant par Dossier jaune > Ce PC > clic de droite sur le disque C: > Gérer BitLocker > Activer BitLocker


*Linux, c’est une meilleure protection de ma vie privée. Vraiment?

Avant d’entrer dans le vif du sujet, la question se pose. En effet, nous avons tous entendu cette déclaration d’une manière ou d’une autre, que Linux, c’est la garantie du respect de notre vie privée. Le fait est que cette déclaration n’est rien d’autre qu’un mythe. Une autre idée fausse courante est que la vie privée est entièrement prise en charge par Linus Torvalds (qui est à l’origine de Linux, lui-même basé sur Unix) et son équipe de concepteurs.

En vérité, tous les systèmes d’exploitation, combinés aux personnes qui les utilisent, offrent de nombreux risques et vulnérabilités qui peuvent être exploités.

La bonne nouvelle est qu’il existe des mesures vraiment fondamentales à prendre pour tenter d’atténuer ces risques. Bien qu’il ne faille jamais se laisser bercer par un faux sentiment de sécurité, ces mesures peuvent apporter une plus grande tranquillité d’esprit.


Quelques simples actions à prendre

Le chiffrement de vos données, se protéger avec de vrais mots de passe mais aussi le fait d’avoir une machine légère présente de nombreux avantages. En ne conservant que les applications nécessaires, on assure une efficacité maximale. Cela réduit également le risque qu’une application mal écrite soit la porte magique qui exposera les vulnérabilités.

Après avoir vérifié les applications installées sur votre machine, vous pouvez utiliser un outil comme BleachBit pour effectuer un nettoyage en profondeur. Il peut rapidement supprimer les cookies, libérer votre cache et effacer les fichiers temporaires. Tout en libérant de l’espace disque.

Les ensembles d’outils d’optimisation des systèmes sont le fléau de la terre. Le moindre de vos soucis est d’assurer la performance de votre appareil, pas d’avoir un logiciel qui massacre la stabilité de votre machine.

Classé dans le Top 100 des outils de sécurité réseau, chkrootkit vérifie localement les signes d’un rootkit (un rootkit est un ensemble de logiciels informatiques, généralement malveillants, conçus pour permettre l’accès à un ordinateur ou à une zone de ses logiciels qui n’est pas autrement autorisé (par exemple, à un utilisateur non autorisé) et qui masque souvent son existence ou celle d’autres logiciels).

L’installation de chkrootkit se fait en mode d’invite terminal

sudo apt-get install chkrootkit

L’exécution aussi depuis le terminal

sudo chkrootkit

Nonobstant ces quelques points à surveiller, communs à tous les systèmes d’exploitation (Android, Chrome OS, iOS, iPadOS, Windows) l’avantage des distributions GNU Linux, dont Ubuntu fait partie, est que leur code est accessible, surveillé par toute la communauté des développeurs OS de Linux (contrairement aux systèmes d’exploitation propriétaires que sont ceux mentionnés deux lignes plus haut, dont les codes demeurent inaccessibles).


Alors… elle est pas belle la vie?

Author

admin

Join the Conversation

  1. Bonjour,
    Merci beaucoup pour cet article qui m’a permis d’installer linux sur ma surface go, tout fonctionne parfaitement. Toutefois, j’aurai une question concernant la gestion des températures, en vérifiant celles-ci avec sensors j’ai remarqué que la carte réseau (pci adapter) était à 75 degrés  ; est-ce une température normal pour la surface go ?
    En vous remerciant par avance,
    Bien cordialement,
    Nicolas

    1. Bonjour Nicolas, nous sommes heureux que notre marche à suivre vous ait été utile. Il est tout-à-fait normal qu’il y ait un peu de surchauffe lors de streaming (par exemple vous passez une soirée sur Youtube). Il faut alors veiller à ce que votre Surface soit dans un environnement bien aéré et frais, quitte à la poser sur un support adapté à cette fin. La température à l’extérieur du boîtier de la Surface Go avoisine facilement les 46 degrés en son point le plus chaud. Avec Windows la température moyenne du processeur se situe à 62 degrés. Microsoft se contente de dire que la Surface Go peut devenir « très chaude » et qu’elle est dotée d’un système de régulation qui la mettrait en veille si la température devenait trop élevée (réf. https://answers.microsoft.com/en-us/surface/forum/surfgo-surfperf/high-temperature-issues/ ). Selon nos tests lorsqu’on installe le bon kernel, la température moyenne du processeur sous Linux peut s’établir à moins de 40 degrés soit 22° de moins qu’avec Windows. Nous ne comprenons pas que Sensors ait pu vous donner cette information de « carte réseau (pci adapter) ». Pouvez-vous nous donner des détails sur la version de l’app. Sensors que vous utilisez (s’agit-il du paquet lm-sensors, ou de psensor)? Quelle distribution de Linux utilisez-vous? Bien cordialement.

      1. Bonjour et merci pour votre réponse détaillée,
        J’utilise Ubuntu 20.04 et le paquet que j’utilise est lm-sensors. Voici le retour de la commande sensors pour une utilisation basique (consultation de mails et surf sur internet sans aucun streaming vidéo), les températures sont très bonnes sauf pour « ath10k_hwmon-pci-0100 » qui indique +76.0°C (j’ai installé psensor pour comparer et il me donne exactement les mêmes chiffres). Dès que le wifi est activé la température plafonne à 75/76 degrés et cela indépendamment de l’utilisation plus ou moins intensive qui est faite de la surface go (le visionnage d’une vidéo sur youtube ne fait pas augmenter cette température, à la différence par exemple de la température du processeur qui augmente un peu). La température n’a jamais dépassé les 76 degrés. J’ai des résultats similaires que ce soit avec le kernel 5.3.18 ou avec le kernel 5.4.0-48 de base. Étant débutant dans l’utilisation de Linux, que pensez-vous de ces résultats ?

        ath10k_hwmon-pci-0100
        Adapter: PCI adapter
        temp1: +76.0°C

        coretemp-isa-0000
        Adapter: ISA adapter
        Package id 0: +34.0°C (high = +100.0°C, crit = +100.0°C)
        Core 0: +33.0°C (high = +100.0°C, crit = +100.0°C)
        Core 1: +32.0°C (high = +100.0°C, crit = +100.0°C)

        BAT1-acpi-0
        Adapter: ACPI interface
        in0: 7.72 V
        curr1: 406.00 mA

        pch_skylake-virtual-0
        Adapter: Virtual device
        temp1: +31.5°C

        acpitz-acpi-0
        Adapter: ACPI interface
        temp1: +29.0°C

        En vous remerciant par avance,
        Bien cordialement,
        Nicolas

        1. Bonjour Nicolas.

          Bien que lm-sensors, tout comme xsensors, soit en mesure de déterminer avec précision la température des coeurs d’un processeur et donner l’heure juste aussi sur la microarchitecture Skylake de Intel, d’autres éléments peuvent ne pas être correctement détectés par les senseurs ainsi que lm-sensors l’indique à l’installation. Une température de 76° n’est pas exceptionnelle, le seuil critique étant 100°, d’autant si elle demeure stable. Un bon critère est de voir si la surface du boîtier devient vraiment chaud (au-delà de 46°), voir bouillant, ou non. Si ce n’est pas le cas, il est même possible que le chiffre 76 ne soit pas correct.

          Bien à vous.

  2. Bonjour,

    J’ai hérité d’une surface book (1ere génération je pense : mémoire 7,7 GiB, processeur Intel Core i5-6300u cpu @ 2.40GHz x4, carte graphique Mesa Intel HD Graphics 520 SKL GT2) sur laquelle j’ai installé un Ubuntu 20.04.1 LTS.

    J’ai d’abord fait en mode Essai et ça fonctionnait correctement (sauf écran tactile et stylet) donc j’ai installé définitivement. L’installation s’est bien passée mais une fois faite je n’ai plus eu accès au wifi (alors que je l’avais en mode test).

    Là je suis ton tuto mais au moment d’installer le kernel, j’ai un message me disant que ce paquet n’est pas pris en compte. Du coup je ne peux plus rien faire; peux-tu m’aider ?

    1. Bonjour Delros,

      Pour vérifier les kernels qui sont présents, démarrez votre Surface sous Ubuntu en « mode avancé ». Dites-nous si plusieurs kernels sont inscrits. Si c’est le cas, essayez de démarrer sur l’un puis sur l’autre (idéalement le 5.3.18) pour voir si l’un d’eux fonctionne. Le kernel étant le noyau du système qui explique à l’OS comment il doit communiquer avec les périphériques internes (processeur à mémoire, carte graphique, etc.) le kernel qui se charge en ce moment sur votre Surface au démarrage de celle-ci sous Ubuntu n’est probablement pas le bon, ou un autre problème est survenu en cours d’installation.

      Si votre Surface fonctionne bien avec Ubuntu sur clé USB en mode Essai, à l’exception de l’écran tactile, et qu’il n’y avait pas de surchauffe, ça vaut certainement la peine de réinstaller Ubuntu à partir de votre clé et de n’appliquer que les correctifs liés à l’écran tactile dans notre tuto (à partir de la section « sudo apt update && sudo apt upgrade && \ sudo apt install git curl wget sed » vers le milieu d’article sur notre page https://tellhandel.blog/decouvrez-quel-kernel-gnu-linux-est-le-meilleur-ami-des-surface/)

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.