Archive for macOS

Appeler une fenêtre de Terminal dès le premier démarrage de macOS

Comme expliqué dans mon astuce précédente, on peut facilement faire ré-apparaître l’assistant de choix de langue de macOS au premier démarrage du Mac après une réinstallation complète du système. Mais cette astuce est plus stratégique qu’il n’y paraît.

En effet, elle permet aussi d’appeler une fenêtre de Terminal… en mode root ! Ce qui permet par exemple de lancer un script pour personnaliser le système avant même le premier démarrage du Mac après avoir monté un disque externe. Ce qui peut être fort utile puisque désormais, les Mac deviennent de plus en plus durs à configurer en sortie de carton, en dehors du programme Apple Business (ex-DEP). Dans certains environnements où je travaille, on me demande de préparer un poste avant de le livrer à l’utilisateur, et cette solution peut être intéressante pour rapidement remettre un poste à neuf, installer des mises à jour système ou quelques application, des fonds d’écran, etc.

Pour faire apparaître la fenêtre de Terminal, enfoncez donc simplement les touches : Cmd + T (pour certaines versions de macOS, c’est peut-être Cmd + Shift + Ctrl + T, mais en 10.13, Cmd + T semble suffire).

MacOS Root Terminal Language Chooser

Une fois que vous avez obtenu l’accès root, vous pouvez faire différentes opérations, mais le plus intéressant est bien évidemment de lancer un script d’installation via la ligne de commande. Pour monter un disque externe, tapez :

diskutil mountDisk disk2

En supposant qu’un seul disque externe soit connecté, sinon utilisez :

diskutil list

pour trouver le bon disque.

Si tout est OK, les volumes du disque externe seront montés dans /Volumes/, et vous pourrez vous y déplacer :

cd /Volumes/NomDuVolume

Ceci fait, vous n’avez plus qu’à lancer par exemple un script stocké sur votre disque externe :

./install.sh

Script dans lequel vous placerez toutes les actions à déclencher à la chaine, comme l’installation de packages avec la commande installer. N’oubliez donc pas de rajouter un shutdown à la fin du script pour éteindre le Mac avant de le livrer à son utilisateur final.

Faire apparaître à nouveau le choix de la langue au démarrage

Si vous avez suivi mon astuce précédente pour réinstaller entièrement macOS, vous aurez peut-être constaté un petit souci : le premier assistant de choix de la langue de macOS ne s’affiche pas.

Language chooser

Cet assistant ne se lance en effet qu’au tout premier démarrage de macOS, mais à la réinstallation, macOS conserve la langue choisie précédemment au premier démarrage. Il faut déjà savoir que macOS vérifie à chaque démarrage la présence du fichier /var/db/.AppleSetupDone et lance l’assistant de configuration s’il est absent.

Le problème vient de l’absence du fichier .RunLanguageChooserToo, présent habituellement dans le dossier /var/db/. Son nom commence par un point, et il est donc habituellement invisible.

Pour forcer l’affichage de cet assistant, il faut :

  1. Démarrer en mode Single User en enfonçant les touches Cmd + S ;
  2. Taper la commande suivante afin de monter le volume de démarrage en lecture / écriture (attention, la frappe clavier sera en QWERTY !)  :mount -uw /
  3. Placez-vous ensuite dans le bon dossier :

    cd /var/db
  4. Créez le fichier :touch .RunLanguageChooserToo
  5. Il ne reste plus qu’à redémarrer :reboot

MacOS Single User RunLanguageChooserToo

Au redémarrage suivant, la fenêtre de choix de la langue s’affichera à nouveau avant l’Assistant de démarrage.

Et si vous avez envie d’automatiser tout ça, je vous propose un petit package qui force le lancement de l’assistant de langue au démarrage en créant le fameux fichier. Vous pouvez ainsi l’automatiser avec la ligne de commande startosinstall, comme expliqué dans l’astuce précédente.

Télécharger RunLanguageChooserToo.pkg (18 Ko)

Et afficher cet écran de langue n’est pas forcément si anodin, comme je vous l’expliquerai dans une toute prochaine astuce…

Faire une installation propre de macOS depuis le logiciel d’installation de macOS avec startosinstall

macOS Install App

Si vous devez réinstaller macOS de façon totalement propre (clean install, comme on dit dans notre jargon d’informaticien), vous disposez de plusieurs méthodes : 

  • Démarrer depuis une clé de démarrage créée avec DiskMaker X (ou un autre outil) ou la ligne de commande, formater le disque et réinstaller le système;
  • Démarrer depuis la partition macOS Recovery, formater le disque et réinstaller le système depuis Internet ;

Mais depuis le logiciel d’installation de macOS 10.13.4, il existe une autre méthode : utiliser la commande startosinstall  en y ajoutant l’option eraseinstall. Cette commande est « cachée » dans le logiciel d’installation de macOS. Vous pouvez la lancer depuis le système en cours d’utilisation, ce qui aura pour effet de redémarrer le Mac, effacer le contenu de la partition en cours et réinstaller le système au propre. Et oui, tout d’un seul coup ! Evidemment, n’utilisez pas cette méthode si vous avez encore des données non sauvegardées à conserver !!!

Pour utiliser cette méthode, le plus simple est de laisser l’application Installer macOS Mojave (lien de téléchargement) ou Installer macOS High Sierra (lien de téléchargement) dans le dossier… /Applications.

Ensuite, lancez le Terminal, et tapez la commande suivante :

– Pour macOS Mojave :

sudo /Applications/macOS\ Mojave\ Install.app/Contents/Resources/startosinstall --eraseinstall

– Pour macOS High Sierra :

sudo /Applications/macOS\ High\ Sierra\ Install.app/Contents/Resources/startosinstall --eraseinstall

Vous devrez ensuite valider en tapant votre mot de passe d’administrateur, puis en tapant A pour valider le fait que vous souhaitez reformater le système, et encore une fois A pour accepter la licence de macOS. Votre Mac va alors redémarrer, puis réinstaller un système tout beau tout propre.

Quelques remarques :

  • Le système doit être installé sur une partition APFS. Si vous êtes encore en HFS+, ça ne fonctionnera pas.
  • L’application d’installation de macOS 10.13 doit installer macOS 10.13.4 minimum. Si vous essayez avec une version plus ancienne, ça ne passera pas. Téléchargez à nouveau macOS 10.13 depuis l’App Store pour récupérer la dernière version (10.13.6).
  • Cette astuce ne fonctionne que si le système installé est déjà en 10.13.4 minimum. Par exemple, vous ne pourrez pas faire un effacement / réinstallation si vous essayez d’utiliser startosinstall depuis un Mac ayant démarré sur un 10.12.
  • Si la partition est chiffrée avec FileVault, elle sera effacée et le système sera réinstallé sur le volume non chiffré. Il faudra donc réactiver FileVault derrière (en tout logique).
  • Si vous ne souhaitez pas afficher le message de licence, ajoutez après la commande l’option –agreetolicense
  • Par défaut, macOS crée sur un disque APFS un conteneur qui peut intégrer des volumes additionnels dont l’espace de stockage est partagé au sein du conteneur. Par exemple, un conteneur de 1 To peut intégrer deux volumes distincts mais dont le stockage est partagé entre les deux volumes. Si vous utilisez l’option eraseinstall, tous les volumes du conteneur APFS seront effacés. Pour éviter cela, ajoutez l’option –preservecontainer pour effacer uniquement le volume de démarrage courant sans toucher aux autres volumes.
  • Vous pouvez renommer automatiquement la partition avec le nom de votre choix en ajoutant l’option –-newvolumename suivie du nom de votre choix (pensez à mettre le nom entre guillemets si vous souhaitez le nommer avec des espaces). Exemple :
sudo /Applications/macOS\ High\ Sierra\ Install.app/Contents/Resources/startosinstall --eraseinstall --newvolumename "Macintosh HD"

 Notez que la réinstallation est alors assez rapide : comptez une quinzaine de minutes.

Si vous utilisez une solution de gestion de parc type Jamf Pro, FileWave, Munki… vous pouvez utiliser cette méthode pour facilement remettre un poste au propre, en déployant au préalable l’app d’installation puis en lançant la commande via un script.

Et si vous avez n’aimez pas le Terminal, il existe EraseInstall.app, une interface graphique pour cette commande.

Réinitialiser les réglages Bluetooth sous macOS

Si vous rencontrez des problèmes de connexion Bluetooth avec un appareil Apple ou autre, voici une petite astuce qui peut parfois dépanner.

Cliquez sur le menu Bluetooth dans la barre des menus tout en enfonçant les touches Maj et Option. Une version étendue de ce menu va apparaître, avec par exemple la version de la couche Bluetooth, l’adresse MAC du contrôleur Bluetooth… Mais surtout menu Déboguer. 

Bluetooth Debug Menu

 

Vous disposerez dans ce menu de trois options possibles :

  • Réinitialiser le module Bluetooth : cette option redémarre tout simplement le contrôleur Bluetooth, sans se poser de questions. Utile peut-être si vous avez un périphérique qui a du mal à répondre.
  • Réinitialiser avec les réglages d’origine tous les appareils Apple connectés : cette option n’affecte que les matériels d’origine Apple, donc clavier, souris et trackpad Apple essentiellement. Dans ce cas, les appareils Apple connectés au Mac ne sont plus liés et sont retirés de la liste des appareils Bluetooth connectés, telle que vue dans la préférence Système Bluetooth. Attention cependant : les appareils eux-même ne sont pas réinitialisés (par exemple leur nom reste celui indiqué précédemment), mais ils ne seront plus connectés par défaut à ce Mac.
  • Supprimer tous les appareils : supprime tous les appareils de la liste, y compris les appareils tierce-partie.

Bref… Si vos appareils Bluetooth vous pourrissent la vie, ça vaut toujours le coup de tenter de réinitialiser leurs réglages pour assainir la situation.

Quand le Mac ne se met plus en veille

Bug TRÈS agaçant sur mon Macbook Pro ces derniers jours : je le ferme, je le mets dans mon sac, je pars en vadrouille… et il ressort chaud du sac, car il ne s’est pas mis en veille comme prévu. Et ça s’est répété un soir où je l’avais fermé mais non connecté au serveur, et beaucoup d’apps actives. Pas de mise en veille… et la batterie à zéro le matin.

Pour comprendre ce qui se passe, le plus simple reste de passer par le Terminal, et de taper la commande suivante :

pmset -g

La fenêtre suivante s’affiche alors : 

Pmset

La ligne qui nous intéresse, c’est évidemment la ligne sleep.

Pmset sleep

Ici, on voit que la mise en veille est empêchée par le logiciel sharingd. Mais ça sert à quoi, ça, sharingd ? Le « d » à la fin nous indique qu’il s’agit d’un daemon Unix. Un coup de man sharingd (ou l’appui sur la touche qui va bien sur la Touch Bar #protip) :

Protip man touchbar

Et donc on apprend que…

 

Man sharingd

Intéressant ! sharingd gère donc tout ce qui est lié aux fonctions Continuité de macOS, le partage de fichiers, l’accès aux lecteurs DVD distants… Or, ces temps-ci, j’utilise beaucoup le partage de connexion de mon iPhone ou iPad. Donc, coupons le WI-Fi pour voir avant la mise en veille… Et vérifions déjà ce que ça donne.

 

Pmset ok

 

Voilà ! À priori, ça devrait aller mieux. Cependant, il ne s’agit pas d’une méthode universelle, et il n’est pas interdit par exemple de tester une réinitialisation du SMC si cette méthode ne suffit pas.

Quand un Mac est (trop) verrouillé… pensez PRAM !

Cas étrange hier chez un client : un MacBook Pro précédemment verrouillé par iCloud avec la fonction Localiser mon Mac, puis supprimé du compte associé. Pourtant le Mac restait bloqué sur l’écran de boot avec le message : Veuillez patienter 60 minutes. Sauf qu’au bout des 60 minutes, seul un message apparaît en rouge : « Wrong password ». Alors que rien n’a été tapé du tout. Gênant.

Heureusement, boot possible sur un disque externe. J’ai donc décidé d’associer le poste à un autre compte iCloud, puis de le verrouiller. Au redémarrage, j’ai bien un message sur la fenêtre de login expliquant que le poste a bien été verrouillé par le compte iCloud de mon choix. Mais toujours le même message : « attendez 60 mn », et aucun moyen de saisir le mot de passe tapé sur icloud.com. Encore gênant.

La solution, simplissime, m’a été transmise par le support Apple (merci Laurent) : faites un reset de PRAM sur le poste, avec le classique Cmd-Option-P-R au démarrage. Et effectivement, y’avait une pétouille dans la PRAM qui ne plaisait pas au firmware et l’envoyait directement en mode verrouillé.

Depuis, le Mac a pu être réinstallé et est fonctionnel. Et il vit de nouveaux jours heureux avec son nouveau propriétaire…

Le syndrome du Pro

Qu’est-ce qu’un pro ?

Je me pose la question encore une fois, suite à de nombreuses discussions sur mon fil Twitter. Certains estiment que l’iPad Pro… n’est pas pro. Parce qu’il n’est pas capable par exemple de gérer facilement un disque dur USB à travers l’appli Fichiers. Une limite totalement arbitraire imposée par Apple, c’est vrai.

Pour d’autres, ça sera l’absence de souris qui constituera une faiblesse. L’absence de pavé numérique. L’absence de Photoshop / InDesign / une application de bureau classique.

Pour d’autres, c’est l’absence de Microsoft Office. Ah mais non, il est dispo depuis bientôt 4 ans. Ah oui mais non, c’est pas la même chose que sur un ordinateur de bureau. Donc pas pro.

Mais est-ce que ces seuls points discréditent l’iPad (pas forcément Pro, non plus), de remplir des tâches professionnelles ?

Chaque jour, on rencontre de nouveaux utilisateurs d’iPad qui s’en disent satisfaits. Qui bossent avec, qui créent. Ce sont aussi des pros. Mais à la différence d’autres utilisateurs, ils ont été prêts à accepter les quelques sacrifices qu’imposaient la bascule vers iOS pour un outil qui leur correspondait peut-être plus. Qui leur proposait des choses qu’un ordinateur portable ne fait pas aussi facilement. Comme prendre une photo, et griffonner des remarques dessus avec un Apple Pencil avant de l’envoyer à un contact quelconque ou le stocker dans un service cloud dédié pour qu’un client puisse également l’annoter. C’est pas pro, ça ? Pourtant, c’est exactement ce pourquoi l’iPad a été conçu.

IPad Pro

Tenez, prenez la revue-fleuve de Federico Vittici sur iOS 12. Ce n’est pas sa première revue, loin de là, entièrement réalisée sur iOS. Ce n’est donc pas un usage professionnel ? Vraiment ? Pourtant, il a produit plusieurs milliers de signe, et tout mis en ligne uniquement avec son iPad. En revanche, il est intéressant de constater que dans la liste des applications utilisées pour réaliser cette revue, il n’y a pas de ces killer apps si indispensables à tout usage pro. Pas de Microsoft Word™, pas d’Adobe Photoshop™. Car l’iPad Pro n’est pas une machine de confort. C’est un ordinateur (disons-le, oui, c’est un ordinateur, ni plus ni moins), qui ne se laissera apprivoiser que si vous acceptez de remettre en cause votre façon de travailler, vos outils, pour y trouver de bien meilleurs outils, plus adaptés à vos besoins.

C’est un peu d’ailleurs un problème général : se dire que Word ou Excel sont incontournables, alors qu’il existe des outils cent fois meilleurs pour certaines tâches, même sur Mac. Personnellement, j’ai par exemple de plus en plus de mal à travailler avec Word, alors que je prends de plus en plus plaisir avec Pages, ne serait-ce que parce qu’il gère correctement les fonctions d’auto-enregistrement de macOS.

Mais alors, on peut toujours revenir à la question initiale : qu’est-ce qu’un pro ? Un professionnel, donc. Mais de quoi ?

Si l’on prend la définition de Wikipedia: Le professionnel est une personne spécialisée dans un secteur d’activité ou exerçant une profession ou un métier. Le professionnalisme caractérise la qualité du travail de quelqu’un ayant de l’expérience. Le professionnalisme est la capacité à assurer un engagement envers la société et à répondre à ses attentes. Mais historiquement, chez Apple, les Pro… ce sont les créatifs. Enfin, ça c’était avant. Depuis, Apple a conquis avec l’iPad et l’iPhone bien d’autres marchés professionnels, dont on parle beaucoup moins, parce qu’on reste attaché à cette frange de professionnels qu’ont été les créa de l’image, du son et de la vidéo durant des années pour Apple.

Il y a cependant une différenciation très importante chez Apple sur l’utilisation du mot pro. Chez Apple, le Pro s’applique pour différencier les gammes de matériel. Ce terme Pro a remplacé le terme Power avec le temps : Power Macintosh > Mac Pro, PowerBook > MacBook Pro, Power Pascal > Pascal Praud (ok je sors). L’iPad aurait pu s’appeler le Power iPad… et cela aurait été finalement plus clair. Un iPad, avec plus de puissance, tout simplement. Apple fait donc peut-être une erreur et complique la situation en attribuant le terme Pro à ses ordinateurs qui sont simplement les plus puissants, et pas juste réservés à une clientèle pro voire une clientèle s’intéressant uniquement à la création pure.

Revenons donc à nos iPad Pro. Si vous estimez donc que vous avez absolument besoin de connecter un disque dur externe de 8 To dessus pour travailler toute la journée, alors peut-être qu’effectivement, l’iPad Pro n’est pas (encore) pour vous. Mais ne pensez pas que ce que vous ne pouvez faire qu’avec votre ordinateur disqualifie automatiquement l’iPad comme outil professionnel pour beaucoup de gens. Considérez juste l’iPad comme un outil inadapté à votre besoin, tout comme le MacBook Pro pourrait être considéré comme inadapté à d’autres besoins. Seul importe le résultat final. Et ça ne rendra pas l’iPad pro moins pro pour les autres. Your mileage may vary, comme disent les anglais avant le Brexit (après, ils diront juste « Fuck fuck fuck »).

Ce n’est pas l’outil qui décidera si vous êtes un pro ou non. C’est ce que vous ferez de cet outil qui le décidera pour vous.

DiskMaker X 8 for Mojave est disponible

Si vous avez besoin de créer une clé de démarrage de macOS, et que vous avez envie de vous jeter su le nouvel OS d’Apple ce soir comme la misère sur le pauvre monde, pensez à sortir couvert ! DiskMaker X est mis à jour dans une nouvelle version pour la modique somme de ce que vous voulez.

Toutes les infos nécessaires sont sur le site http://diskmakerx.com. Qu’il va falloir qu’un jour je me prenne la tête à remettre en VF, suite à une mauvaise manip de ma part qui avait fait sauter les différentes langues, WOUHOUUUUUUU !!!

Et je reste à l’écoute de vos commentaires et suggestions à l’adresse ldm@gete.net.

Bonne migration, et n’oubliez pas le plus important avec de passer sur un nouvel OS :

SAUVEGARDEZ !!!

 

BACKUP

Réinitialiser la liste des Services de macOS

Une des fonctions les plus sous-utilisées de macOS reste les Services. Accessibles via le menu du nom de l’application en cours (à côté du menu Pomme) > Services, ou via un clic droit > Services, ce menu contextuel permet de lancer différentes actions définies par rapport à la sélection en cours. Par exemple, j’avais créé il y a pas mal de temps un service pour compter les signes de la sélection en cours (script toujours fonctionnel d’ailleurs).

Automator permet depuis quelques versions de macOS de créer ses propres services, comme très bien expliqué par Sylvain Gamel dans son livre Automatisez sous Mac1. Vous trouverez d’ailleurs plein d’exemples de services à créer avec Automator sur son site automatisez.net.

Mais j’étais confronté depuis quelques jours à un petit problème agaçant : les menus étaient toujours dans le désordre, et surtout, après avoir tenté de renommer un service, celui-ci continuait à s’afficher avec son ancien nom. Virer des préférences ou supprimer des caches ne servait à rien, même après reboot.

Un message posté sur Slack m’a donné la piste : lancez le Terminal et tapez :

/System/Library/CoreServices/pbs -update

Le menu des Services devrait être proprement réinitialisé. L’ordre alphabétique sera quand à lui partiellement rétabli, macOS préférant à priori classer les services d’abord par application, puis par ordre alphabétique au sein de ces mêmes applications. Enfin je crois, c’est pas si évident (surtout que l’ordre n’est pas le même que dans le menu de l’application > Services). Mais au moins, les noms sont à nouveau corrects, toujours ça de pris.

 

MacOS Reinitialiser Services

/System/Li



bdfrary/CoreServices/pbs -update

  1. Dont je ne peux que vous recommander la lecture, et surtout la superbe préface.

[Test] Fibaro, un détecteur d’ouverture de porte compatible HomeKit

Drame il y a quelques jours : un Velux resté ouvert, un orage un peu violent, une manette GamePad Wii U laissé sur le canapé… sous le Velux.

Et plouf le Gamepad.

Après avoir déboursé la rondelette somme de 80€ pour un nouveau GamePad (ouch), il a fallu trouver une solution pour éviter que le problème se reproduise. Et comme je n’en suis pas encore à lancer un Leetchi pour me faire offrir un nouvel iPhone remplacer le Velux par un modèle à détection de pluie, j’ai du chercher une solution pour au moins être alerté quand la fenêtre est ouverte.

Je n’ai donc pas encore trouvé la solution idéale, mais j’ai trouvé un détecteur de porte efficace chez Fibaro : le Door/Window Sensor (référence FGBHDW-002).

FIbaro Home door detection

Attention, il n’est pas donné : à 67,90€ chez Amazon, on n’est pas dans du produit d’entrée de gamme. L’indispensable Pierre Dandumont a lui testé deux autres solutions sur son blog.

La mise en route est normalement simplissime : on allume l’accessoire (en retirant le petit papier qui bloque la pile), et on scanne le code HomeKit (à bien conserver précieusement) avec l’application Maison. Puis…

Rien. Accessoire non détecté.

Grumpf.

Mais est-ce que le souci ne viendrait pas d’iOS ? Car je venais juste de faire le passage vers la GM d’iOS 12…

Nouveau test, avec un iPad encore en iOS 11 et des brouettes…

Eureka ! Le jumelage se fait du premier coup, et l’accessoire est ajouté et visible dans l’application Maison.

IMG 5210

Et désormais, quand la fenêtre est ouverte, je reçois une alerte sur mon iPhone ! Enfin presque : il a fallu que je décolle et recolle l’accessoire dans le bon sens (on peut le visser). Après, c’est bon.

IMG 5210

… Et même sur l’Apple Watch !

IMG 5211

Idem quand elle est fermée : on reçoit alors une nouvelle alerte.

IMG 5212

Et dans l’app Maison, le détecteur est visible et son état indiqué.

IMG 5208

Cependant, HomeKit reste limité : impossible de rajouter un appareil détecteur de pluie, comme une station météo, pour déclencher une alerte si le détecteur de porte est en position ouverte ET il commence à tomber de la pluie. Mais c’est peut-être faisable avec des solutions comme Homebridge. À suivre donc…