Archive for Macintosh

Conférence : Apple et le Design, 24 janvier 2019, Paris (confirmé)

280px Macintosh 128k transparency

À l’occasion des 35 ans du Mac, je donnerai une conférence Apple et le Design, le 24 janvier 2019, avec le Club Photoshop à Paris. Je reviendrai sur l’importance du design chez Apple, les processus industriels, l’évolution du design du Mac à travers les âges… Une conférence haute en couleurs et en anecdotes !

Il faut s’inscrire sur le site http://www.photoshop-paris.org. Si vous êtes membre du club Photoshop, l’inscription est gratuite, sinon, la participation vous en coûtera 15 euros (l’association ayant des frais à couvrir), avec également la participation de l’exceeeeeeeeellent Michel Netzer d’Apple qui causera déploiement de parc et du non moins exceeeeeeeeellent Hervé Petit qui viendra parler colorimétrie. Pour info, il n’y aura pas de captation vidéo des conférences.

Et si vous avez envie de voir cette conférence Apple et le Design, et que vous vous sentez l’âme d’organiser un tel événement, n’hésitez pas à me contacter !

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.

Apple Mail : quand il est impossible de déplacer un message d’une boite à une autre

Bug curieux chez un client ces derniers jours : suite à un crash ou à une fausse manipulation, plusieurs milliers de messages se sont déplacés dans des dossiers « Mail – éléments récupérés ». Près de 600 dossiers… Mais surtout, un gros souci, car à chaque tentative de déplacer certains messages dans un autre dossier, on tombe sur le message suivant : 

Le message « Blah blah » n’ pas pu être déplacé dans la boite « Truc ». Impossible de charger le corps du message pour LibM {“199990:34323:Wh*:2017-08-29 17:00:01 CET}”}.

Reconstruire la boite ne servait à rien, pas plus que d’exporter le dossier (la boite exportée pesait quelques Ko) ou de supprimer les messages (même erreur). Même chose également en supprimante les fichiers d’index de Mail. Mes quelques recherches sur le sujet n’ont pas donné grand chose, à part ce message d’un utilisateur sur les forums de discussion d’Apple expliquant qu’il est touché par le problème quand il est offline, par exemple dans un avion. Cela dit, c’était un début de piste intéressant. D’autant plus que certains messages se transféraient mais pas d’autres. Pourquoi donc ?

Après avoir regardé un peu dans la hiérarchie de Mail, j’ai trouvé une solution : certains messages qui posaient souci étaient indiqués dans le Finder comme étant de type .partial.emlx, alors que les autres étaient juste des fichiers .emlx. Et effectivement ces derniers se déplaçaient bien, mais pas les autres.

Et donc, en pratique : 

  1. Quittez Mail.
  2. Dans le Finder, ouvrez votre dossier Bibliothèque personnel (cliquez sur le menu Aller tout en enfonçant la touche Option pour afficher le menu Bibliothèque).
  3. Allez dans le dossier Mail/V4 (vous êtes donc dans ~/Library/Mail/V4). 
  4. Cherchez le compte ou se trouvent les messages qui posent problème. Pas forcément évident si vous avez beaucoup de comptes, car ils utilisent un UUID plutôt qu’un nom de compte… Dans ce cas, cherchez un dossier au nom bien particulier qui se trouverait sur ce compte (sinon créez un dossier « GG est le plus grand » et vous le retrouverez facilement, pensez juste à quitter Mail ensuite.
  5. Placez-vous dans le dossier où se trouvent les mails problématiques.
  6. Ouvrez le dossier qui s’y trouve (avec un numéro) puis le dossier Data.
  7. Dans les souss-dossiers qui s’y trouvent, vous découvrirez différents fichiers de mail, dont certains commencent par .partial.emlx : ce sont ces messages qui posent souci. En réalité ils sont bien complets (on peut les consulter sans problème) mais pour une raison inconnue Mail les a considérés comme incomplets.
  8. Supprimez donc « .partial » du nom de chaque message. Si vous disposez de centaines de dossiers, c’est le moment de mettre le nez dans Automator (Sylvain Gamel a écrit d’excellents bouquins sur le sujet ) !
  9. Relancez Mail.
  10. Déplacez vos messages à nouveau comme vous le souhaitez.

High Sierra : comment s’y préparer en entreprise (et pas que)

High Sierra, alias macOS 10.13, approche à grands pas, et à ce titre, Apple a diffusé plusieurs articles techniques en amont, tous résumés dans cet article. Intéressons-nous y donc de plus près…

Abandon des certificats signés SHA-1 utilisés avec le protocole TLS.

Cela peut avoir un impact si vous utilisez d’anciens certificats sur d’anciennes versions de Mac OS X Server, par exemple. Notez cependant cette phrase pas anodine en italique dans le document :

Les certificats CA racine signés SHA-1, les certificats SHA-1 distribués par des entreprises et les certificats SHA-1 installés par les utilisateurs ne sont pas concernés par cette modification.

Cela n’est donc surtout vrai que si, par exemple, vous hébergez un site web sur un serveur, site protégé par TLS avec un certificat considéré désormais comme non fiable. Depuis macOS 10.12.4 et iOS 10, Safari affichait une alerte en cas de certificat non fiable, mais désormais, la connexion est carrément refusée. À vous de mettre à jour votre certificat sur votre site. Ça ne sera pas un mal dans tous les cas…

Et dans tous les cas, même pour vos certificats d’entreprise, ou autres, il vaut mieux basculer vers des certificats signés de façon plus sûre.

Les certificats utilisant des clés RSA d’une taille inférieure à 2048 bits à travers toutes les connexionsMacos aofs maj TLS ne seront plus considérées comme sûres.

Là encore, il s’agit d’une amélioration de la sécurité au vu des évolutions technologiques. Apple pousse la sécurité vers le haut, et préfère abandonner des technologies considérées comme obsolètes côté sécurité. Si vous êtes administrateur informatique, attention donc si vous utilisez par exemple des services comme des VPN utilisant des clés RSA un peu trop faibles.

Un exemple de clé RSA non valide sous macOS High Sierra (chiffrement 1024 bits).

TLS 1.2 par défaut pour les configuration EAP-TLS

Important surtout si vous utilisez une authentification de type entreprise exploitant le protocole EAP-TLS pour vos connexions Wi-Fi ou Ethernet. Vos points d’accès devront désormais utiliser TLS 1.2 et non plus 1.0. Dans le cas où vos points d’accès ne peuvent être mis à jour, vous devrez appliquer un profil de configuration sur vos Mac pour forcer l’utilisation de TLS 1.0.

APFS : tout ce qui va mettre le souk dans vos systèmes informatiques

J’ai déjà longuement abordé APFS, je ne reviendrai pas dessus, même si il va falloir éduquer quelque peu vos utilisateurs (« je comprends pas pourquoi désormais quand je duplique des fichiers de 10 Go, la copie se fait toute seule et la taille du disque ne bouge pas… »). Apple y a carrément dédié un article spécifique, pas encore disponible en VF (mais le lien que j’ai utilisé devrait pointer sur la VF dès qu’elle sera disponible).

Il va cependant falloir noter certains points TRÈS importants lors de la migration vers High Sierra.

  • High Sierra va automatiquement convertir tous vos disques de type flash (internes ?) vers APFS, et à priori, on ne peut pas l’éviter. Or, si vous avez des disques partagés via le protocole AFP, ceux-ci ne pourront plus être partagés en utilisant ce protocole (obsolète). Ça peut être gênant si vous avez des anciens clients sous Mac OS X, ou des logiciels qui supportent mal le SMB (<Tousse> Adobe CC <Tousse tousse>), dans ce cas vous ne pourrez plus vous connecter en forçant AFP plutôt que SMB.En clair, si vous avez des serveurs tournant sous des versions récentes de macOS, évitez le passage sous High Sierra si vous avez encore besoin du protocole AFP.
Macos aofs maj

Si vous voyez cette case sur un disque dur classique, vous ne la verrez pas lors de l’installation de la version finale de macOS High Sierra sur un disque flash.

  • Notez que le passage ne sera automatique que pour les disques intégralement Flash, donc pas de migration si vous utilisez un Fusion Drive ou un disque dur classique.
  • Si vous utilisez Time Machine via AFP, vous devrez basculer la connexion en SMB. Du coup, vos postes clients devront peut-être être reconfigurés pour être à nouveau sauvegardés via Time Machine.
  • Les versions de macOS antérieures à macOS 10.12.6 ne pourront pas lire ou écrire sur un disque APFS. Si vous devez assurer l’échange de fichiers avec des disques externes vers d’anciens systèmes, ne les convertissez pas vers APFS. Utilisez Mac OS Étendu pour l’échange vers des Mac, ou exFAT si vous devez également transférer des fichiers vers des PC (évitez FAT-32 (pas de gestion des gros fichiers) et NTFS (pas géré nativement par macOS en écriture)) (et oui je sais il y a trop de parenthèses dans cette phrase).
  • Boot Camp est supporté si vous mettez à jour votre Mac vers macOS Sierra, SAUF si le volume Boot Camp est d’une taille supérieure à 3 To ET réside sur un disque Fusion Drive. Que se passe-t-il si vous avez un volume Boot Camp de plus de 3 To sur un Fusion Drive ? Ben… on ne sait pas. Mystère total. Est-ce que le volume devient non bootable ? Est-ce qu’il faut recréer la partition Boot Camp intégralement ? Au cas où, vous pouvez quand même réduire le volume avec Camptune X (testé avec succès chez moi).
  • Dans tous les cas, Boot Camp ne gèrera pas APFS, en tout cas pour le moment. Cependant, la phrase d’Apple est ambiguë : Boot Camp doesn’t support Read/Write to APFS-formatted Mac volumes. Est-ce que ça veut dire que Boot Camp supportera au moins la lecture des volumes APFS ? SI vous avez la réponse à cette question, ça m’intéresse :)
  • Et évidemment, il faudra mettre à jour la totalité de vos utilitaires de gestion/réparation de disque avec des versions compatible APFS. Mais ça, vous vous en doutiez, n’est-ce pas.

Du côté des services d’annuaires…

Pas grand chose à signaler de ce côté. Ah si, quand même un truc important :

  • Les postes sous High Sierra ne pourront plus être reliés à un annuaire Active Directory dont le niveau de fonctionnalités est inférieur à 2008. Exit Windows Server 2003. Mais de toute façon, en tant que bon sysadmin, ça fait longtemps que vous avez dégagé vos serveurs 2003, n’est-ce pas (enfin je l’espère pour vous).
  • Y’a un deuxième point à savoir, si vous faites partie des 2 administrateurs à encore utiliser NIS, vous ne pourrez pas intégrer vos postes High Sierra. Je sais, c’est un coup dur.

Extensions de kernel… UAKEL bordel ! 1

Du côté des extensions de noyau, ou kernel pour les intimes, il y a énormément de changements. Tout d’abord, rappelons ce qu’est une extension de noyau. Il s’agit d’un fichier doté d’une extension .kext qui ajoute des fonctionnalités au micro-noyau de macOS. La plupart du temps, les extensions de noyau sont plutôt des pilotes matériels, des protocoles réseau, des systèmes de fichiers… Dans l’absolu, Apple invite fortement les développeurs à se passer des extensions de noyau pour éviter qu’un crash d’une extension provoque la chute du système (et donc un reboot obligatoire). Et il est rare qu’un logiciel ait vraiment besoin de charger des extensions de noyau. Mais cela arrive !

Avant High Sierra, une application pouvait installer une extension de kernel et se lancer tranquillou billou, sans que l’utilisateur en soit averti. Mais désormais, le comportement de macOS va changer. Un nouveau mécanisme appelé User Approved Kernel Extension Loading (UAKEL, c’est moche) va désormais inviter l’utilisateur à valider les applications à utiliser une extension de noyau à se charger.

Alors, j’avoue que quelque part, ça me laisse perplexe. En effet, dans cela fait seize ans que macOS charge des extensions d’applications tierce sans qu’Apple s’en émeuve, et d’un coup, ça devient un méga-problème. C’est très bien qu’Apple veuille que les utilisateurs sachent que des trucs se passent sur leur Mac, mais d’un autre côté, ça implique que l’utilisateur comprenne ce qu’est une extension de noyau, et aille valider dans un dialogue s’il souhaite ou non utiliser une extension sans comprendre vraiment à quoi ça sert. Mouaaaaaaaaaais. D’autant plus que l’utilisateur n’aura pas besoin d’être administrateur pour activer l’extension. Ce qui, à mon goût, tue un peu l’intérêt du truc. Cela me fait furieusement penser au concept de l’UAC sous Windows… Erik Gomez a longuement écrit (en anglais) sur ce qu’il appelle Kextpocalypse. Heureusement, Apple a modifié le comportement de l’UAKEL pour rendre la gestion bien plus simple que prévue :

  • UAKEL ne s’activera que pour les nouvelles extensions installées après ou pendant l’installation de High Sierra. Si vous avez déjà des applications installées qui utilisaient des extensions, elles seront automatiquement validées. Ça devrait déjà éliminer un paquet de problèmes.
  • Si une extension remplace une extension déjà validée, elle ne demandera pas la validation.
  • Surtout, si vos Mac sont enrôlés dans une solution de gestion de mobilité (MDM), telle Jamf Pro, Jamf Now, Airwatch, Filewave, Profile Manager… UAKEL sera automatiquement désactivé. Plus de crainte de centaines d’appels affolés après une migration en masse vers High Sierra !
  • Par ailleurs, Apple précise que vous pourrez désactiver UAKEL à la main sur vos postes à l’aide de la commande spctl en démarrant sur la partition Recovery (processus lourd). Et réinitialiser la NVRAM réactivera automatiquement  l’UAKEL.

Mettre à jour vers macOS High Sierra… ou déployer une image de High Sierra ?

Depuis l’arrivée du programme DEP pour le déploiement des appareils, la question de déployer un système en s’appuyant sur une image-disque avec un outil comme Deploy Studio ou autre se pose de plus en plus. Dans le cas du passage à High Sierra, la question ne se pose même pas :

Vous DEVREZ déployer au moins une fois High Sierra via l’application de mise à jour.

L’explication est simple : lors du déploiement de High Sierra, une mise à jour de firmware sera également automatiquement installée par le logiciel d’installation de macOS, comme l’explique cet article. Impossible également de mettre à jour un système sur un disque externe ou sur un Mac en mode disque cible.

Apple a d’ailleurs ajouté de façon très claire et bien visible dans son article :

Apple doesn’t recommend or support monolithic system imaging when upgrading or updating macOS.

C’est clair non ?
 
CEPENDANT.

Vous pourrez toujours faire une image d’un Mac après qu’il ait été migré en High Sierra une première fois, puis déployer l’image SI CES MACS ONT ÉTÉ DÉJÀ MIS À JOUR UNE PREMIÈRE FOIS VERS HIGH SIERRA.

En clair : si vous avez déjà mis une première fois vos Mac à jour vers High Sierra, rien ne devrait vous empêcher de déployer une image monolithique par la suite, une fois que le firmware a été déployé. Mais ça ne reste pas une solution que je recommande, pour plein de raisons qu’il serait trop long de lister ici.

Par contre, imaginons que vous commandiez un lot d’iMac ces jours-ci auprès d’Apple, et que ces iMac vous soient livrés avec macOS 10.12 Sierra. Là, vous vous dites, « les machines sont neuves, j’attends High Sierra et je les déploie avec un nouveau master tout beau tout propre vers High Sierra avant de les déployer, ni vu ni connu j’t’embrouille ». Ben là, c’est complètement non supporté et vous risquez de rencontrer des problèmes (kernel panics, chute de cheveux, nouvelle émission d’Hanouna, que sais-je). Donc, vous devrez passer par la case mise à jour de logiciels :

  • Par la partition Recovery avec Option + Commande + R (si vous utilisez Cmd + R, vous réinstalleriez la version de l’OS fournie avec votre Mac !) ;
  • En lançant l’installation de macOS depuis le Finder ;
  • Avec un disque d’installation  de macOS créé avec la commande createinstallmedia OU DiskMaker X (Et oui, cela signifie aussi que Diskmaker X sera sûrement d’actualité pour High Sierra ;-) ) ;
  • En créant une image d’installation avec l’utilitaire d’image-système et en la déployant avec la fonction Netinstall de macOS Server.

Le plus simple sera sûrement de déployer l’application High Sierra (à l’aide d’un logiciel d’installation customisé) en exploitant votre solution de déploiement habituelle, Jamf, Filewave, Munki, etc).

Conclusion

Ne migrez pas tout de suite vers High Sierra dès sa sortie. Si vous le pouvez, bloquez la mise à jour autant que possible, et attendez la version .2 ou .3 pour la déployer, comme d’habitude. N’oubliez pas que vous pouvez simplement désactiver le téléchargement des mises à jour en arrière-plan. Jamf Pro permet aussi de bloquer le lancement des applications

Et surtout, testez, testez et testez. La meilleure solution pour les déploiements de ce type consiste souvent à déterminer deux ou trois utilisateurs avancés/passionnés capables de vous faire des vrais retours d’expérience, capables d’assumer les conséquences d’une migration anticipée vers un nouvel OS, de vous indiquer clairement les soucis rencontrés.

N’hésitez pas à renvoyer à Apple vos rapports de bugs. Oui, ils sont bien lus et ils sont pris en compte, surtout si ils sont nombreux. Mais cela pourrait être l’objet d’un autre article.

Et dans tous les cas, enjoy macOS High Sierra !

  1. Je me rends compte que je n’ai jamais fait de vanne sur Kernel et Lion, alors que les Kernel de Lion, ça aurait pu faire un super gag gastronomique. C’est triste.

Finder et « Afficher tous les fichiers » : le raccourci impossible en VF (màj : ou pas)

J’ai entendu parler d’un nouveau raccourci dans le Finder de macOS ces derniers jours à deux occasions, lors d’un article sur le site MacStories, et plus récemment sur Slack. Il s’agit d’une combinaison de touches utilisable dans le Finder pour afficher ou masquer les éléments invisibles dans les différents dossiers de votre Mac. Or, ce raccourci semblait totalement inutilisable sur mon Mac. Le raccourci en question est :

Cmd + Maj + . (point).

À priori, c’est donc un super nouveau raccourci, qui fonctionne d’ailleurs déjà depuis 10.11 (peut-être avant, flemme de tester) dans les dialogues d’ouverture et enregistrement de fichiers. Mais curieusement, il ne fonctionne pas si votre clavier est en configuration AZERTY (99% de la population française). En effet, en France le point est affiché en utilisant Maj + point-virgule. Or, dans notre cas, la correspondance des touches ne fonctionne pas. J’ai essayé différentes solutions, en particulier en attribuant de nouveaux raccourcis-claviers dans la préférence Système Clavier > Raccourcis, mais aucune ne fonctionne correctement, le Finder n’ayant pas d’article Afficher ou Masquer les éléments invisibles pour lui créer une correspondance.

MISE À JOUR (28/05/2017) : En fait, il y a bien un raccourci-clavier utilisable en AZERTY ! Il faut ajouter la touche Fn, ce qui fait donc Fn + Cmd + Maj + point. Bravo à @trebleum qui a trouvé la solution sur Twitter.

Il reste toujours la solution du Terminal (taper defaults write com.apple.finder AppleShowAllFiles yes ; killall -9 Finder et valider), mais il est dommage qu’on ne puisse pas bénéficier de ce raccourci en VF. J’ai renseigné un Radar sur sur ce sujet (#32443380), n’hésitez pas à faire un duplicate dessus.

AppleShowAllFiles

Captures d’écran sur Mac : capturer un dialogue (et pas toute une fenêtre)

Une petite astuce fort utile si vous faites des captures d’écran à longueur de journée sur votre Mac…

Vous savez normalement qu’en utilisant Cmd + Maj + 3, on capture tout l’écran du Mac, et Cmd + Maj + 4 capture une zone de l’écran.

Maintenant, les pros savent également qu’en utilisant Cmd + Maj + 4 puis en enfonçant immédiatement la barre d’espace, on peut sélectionner une fenêtre à l’écran. Mais cette dernière commande a un petit défaut : si vous capturez un dialogue dans une fenêtre, comme dans l’exemple ci-dessous :

Capture Complete

Vous n’aurez pas d’autre choix que de capturer toute la fenêtre, puis recadrer l’image pour ne sélectionner que le dialogue lui-même.

Sauf que.

Si vous laissez enfoncée à ce moment la touche Cmd, vous aurez la possibilité de sélectionner le dialogue en premier plan SANS capturer toute la fenêtre. Vous pouvez aussi capturer uniquement la fenêtre en arrière-plan si ça vous chante.

Capture Partielle

 

 

Je sais pas vous, mais moi, cette astuce va me changer littéralement la vie. Ou pas. Mais quand même.

Laissez la mémoire de macOS tranquille !

Kirk Mc Elhearn (que nous avions eu le plaisir d’avoir comme invité sur 3 hommes et un podcast) a publié ces jours-ci un article (en anglais) sur les problèmes de consommation de mémoire de Safari, qu’il trouve trop gourmand. Même s’il soulève des points intéressants, je pense qu’il a une approche trop technique de la gestion de la RAM de nos ordinateurs, et surtout de nos Mac, pour ne pas dire quelque peu rétrograde (no offense, Kirk). Et je pense que c’est assez symptomatique des utilisateurs (dont je fais partie) du Mac depuis de longues années. Reprenons donc depuis le début.

Aux origines fut le Systeme 1.0

Le premier système qui a équipé le premier Macintosh était le système 1.0. D’une sophistication incroyable pour l’époque, il ne permettait qu’un seul programme en mémoire à un instant donné. Le MultiFinder puis le Système 7 ont permis d’exploiter plusieurs applications en même temps. Et ce fameux Système 7 a aussi permis d’améliorer la gestion de la mémoire à l’aide de la mémoire virtuelle. Mais toutes ces améliorations ont posé d’autres problèmes : le système gérait la mémoire de façon coopérative, ne gérait pas la fragmentation de la mémoire (des bouts contigus de mémoire ne pouvaient pas être attribués à une autre application, sauf à quitter toutes les applications lancées depuis), et chaque application devait se voir attribuée une quantité de mémoire avant le lancement. Si l’application manquait de RAM, pas de bol ! Il fallait quitter l’application, la sélectionner, utiliser la fenêtre Lire les informations pour attribuer plus de mémoire (si on en avait…).

Fenêtre Lire les informations dans le Système 6

Bref, ce n’était pas vraiment très souple… et cette gestion de la mémoire a pénalisé le Mac durant de nombreuses années, jusqu’à l’arrivée de Mac OS X.

Mac OS X : la mémoire, c’est moi !

En 2001, le nouveau système d’Apple basé sur NeXT apporte enfin au Mac une gestion dynamique de la mémoire1. Ainsi, plus besoin de gérer la mémoire à la main : le système se charge de gérer comme un vrai chef d’orchestre la mémoire, en gérant plus intelligemment également la mémoire virtuelle qui était aussi devenue dynamiquement attribuée. Mais si la puissance des processeurs de nos ordinateurs a augmenté et la quantité de mémoire vive installée également, leur plus gros point noir reste le disque dur qui équipe majoritairement nos Mac. Et c’est le drame du swap : lorsqu’un programme manque de mémoire, le système déplace une partie de la RAM vers le disque dur, ce qui génère des ralentissements importants. Et là, pas le choix : il faut quitter des applications lorsque la mémoire commence vraiment à manquer.

Mavericks : une gestion (encore) améliorée de la mémoire

OS X 10.9 (Mavericks) a également intégré un nouveau mécanisme de compression de la mémoire, afin de rendre la gestion de la mémoire plus efficace. Apple a d’ailleurs publié un nouvel article technique pour expliquer comment la mémoire est gérée par macOS (oui, on va maintenant dire macOS hein), et en particulier expliquer la notion de pression sur la mémoire. Et c’est peut-être l’endroit le plus important à comprendre pour bien gérer la mémoire de son Mac.

Moniteur Activite memoire compression

La zone Pression de la mémoire vous indique dans quel état se trouve la mémoire de votre Mac : si c’est vert, tout va bien ! Si on est dans l’orange, ça devient inquiétant, et s’il est rouge… Aie, vous êtes en mode swap total ! Dans ce cas, quitter des applications voire redémarrer devient indispensable.

Et encore, pour l’orange, ce n’est pas forcément significatif si votre Mac est équipé d’un SSD plutôt que d’un disque dur classique : certes le SSD reste moins rapide que de la vraie RAM, mais l’impact du swap sur les performances devient du coup très amoindri. Je ne dis pas qu’il n’existe pas, mais qu’il devient plus ou moins négligeable selon les cas.

Et Safari alors ?

Kirk constate que Safari consomme de la RAM, et ça le gêne. Je peux le comprendre, mais en réalité… qu’est-ce que ça peut faire si Safari consomme de la RAM si il y a encore de la RAM disponible ? Pourquoi vraiment est-ce un problème si Safari consomme 500 Mo ou un voire deux Go de RAM ? Est-ce que c’est vraiment un souci si cette mémoire n’est de toute façon pas utilisée par une autre application ? C’est le but du système d’exploitation d’attribuer de la mémoire, car la gestion qu’il en fait est bien trop complexe pour qu’on s’en occupe au final moins efficacement que lui.

Pour Apple, en fait, le but à long terme devrait être le même que pour iOS (et je pense que c’est leur objectif à long terme) : proposer le même système de gestion de mémoire que sur iOS où les apps sont tuées en arrière-plan et relancées automatiquement si besoin est (un mécanisme similaire existe dans macOS, mais je ne l’ai quasiment jamais vu en action), et où il n’y a finalement pas d’information sur la mémoire utilisée.

De nos jours, un navigateur web est une application complexe qui consomme de la RAM,  quasiment un système d’exploitation à lui tout seul, capable de gérer des applications de plus en plus complexes avec des langages interprétés dynamiquement, avec des contenus visuels ou sonores de plus en plus lourds (tiens, par exemple, placer des images Retina dans une page web, ça a forcément un impact sur la consommation mémoire de votre navigateur) . Quand Kirk dit que Google Docs consomme 500 Mo de RAM rien qu’en affichant uniquement une page blanche, c’est mésestimer la complexité de toute l’application autour de cette page. Nous ne sommes plus à l’époque de SimpleText, mais en 2016, et on s’attend à voir un traitement de texte (collaboratif en temps réel !) fonctionner à une vitesse correcte dans un navigateur web. Et pour que l’ensemble des fonctions de ce logiciel intégré au navigateur fonctionne… il faut sûrement plus de RAM que pour un Word. Et là encore, si j’ai encore de la RAM disponible, pourquoi devrais-je m’en priver si cela améliore les performances ? Si une page web consomme vraiment trop de RAM (et elles en consomment de plus en plus !), on peut toujours de toute façon la tuer sans stopper l’ensemble du navigateur (quel progrès mes aïeux !). Il arrive évidemment que certaines pages mal programmées génèrent des fuites de mémoire (j’en ai eu une aujourd’hui, en raison d’une vidéo mal programmée). Dans ce cas, pas le choix : tuez la page à l’aide du Moniteur d’activité, et passez à autre chose.

Mais alors, comment gérer la mémoire de son Mac ?

La réponse est en fait très simple : ne gérez la mémoire de votre Mac que lorsque c’est vraiment nécessaire, c’est-à-dire si vous constatez un ralentissement significatif d’activité, si une page web est plantée, si elle a un impact sur l’autonomie du Mac ou si ce dernier vous le demande poliment. Nous ne sommes plus dans les années 80, nos navigateurs sont des logiciels complexes qui ont besoin de mémoire pour fonctionner, tout comme l’ensemble de nos logiciels. Si vous avez encore la nostalgie des logiciels qui tournaient dans 100 Ko de mémoire, vous n’avez effectivement plus que vos yeux pour pleurer. Mais dans l’ensemble, macOS fait preuve d’une bonne efficacité dans la gestion de la mémoire. Ne le suppléez que si vous constatez un gros souci. J’ai eu par exemple le cas d’un logiciel (j’ai oublié lequel malheureusement) qui générait énormément de mémoire virtuelle (genre plusieurs dizaines de Go après quelques jours), alors qu’il s’agissait d’un logiciel simple qui se logeait dans la barre des menus. Lorsque j’ai constaté qu’il consommait plusieurs giga-octects de mémoire réelle probablement en raison d’une fuite de mémoire, je l’ai supprimé, et je n’ai plus eu de problème.

De même, n’oubliez pas que si vous disposez d’un SSD, la perte de performances imposée par la mémoire virtuelle est moins importante que pour un disque dur classique. Et si vous hésitez entre augmenter la mémoire installer un SSD pour améliorer un Mac vieillissant, investissez sans tarder sur le SSD !

Bref… Oubliez donc vos vieux réflexes, laissez vos programmes ouverts toute la journée si cela vous chante, et ne les quittez pas juste parce qu’ils consomment de la RAM à ne rien faire : au contraire, car cette mémoire sera disponible immédiatement en cas de besoin. Si macOS en a besoin, il saura sûrement la récupérer à son usage. Si vous quittez vos logiciels sans bonne raison, vous forcez le programme à se recharger de façon probablement inutile. N’ayez donc pas le Cmd+Q trop fréquent : vous ne feriez qu’y perdre côté inactivité. Et si toutes les fenêtres affichées d’un programme vous agacent, faites un clic droit > Masquer sur l’icône de l’application dans le Dock (ou Cmd + H pour masquer l’app en court, ou encore Cmd+Alt+H pour masquer toutes les autres applications en cours et ainsi dégager l’affichage). Ou pensez à exploiter le mode plein écran des applications macOS, c’est parfois aussi plus pratique.

Votre Mac ne pourra que vous en remercier !

leave_macos_memory_alone

  1. Ainsi que la protection de la mémoire ou un vrai multitâche, mais ce n’est pas le sujet aujourd’hui.

Matériel à vendre

Comme chaque année ou presque, je remets en vente une partie de mon matériel informatique.

IMPORTANT : si vous êtes intéressé par une de ces machines, merci de lire TOUT le pavé en bas de cette page avant de me contacter. Sinon, pas de réponse !

 
  • 1 iPhone 6s Plus, 64 Go, gris sidéral

Desimlocké, acheté chez Apple le 1/10/2015, sous AppleCare + (donc garantie étendue jusqu’au 1er octobre 2017). Excellent état général, juste deux petits chocs dans le coin inférieur gauche et supérieur droit, et très légères rayures indétectables à l’usage. Livré avec chargeur, câble Lightning et écouteurs Apple EarPods NEUFS.  650€ TTC.

iPhone 6s+ - Front
iPhone 6s+ - Back


wp-contentuploads2016IMG_2865.JPGwp-contentuploads2016IMG_2866.JPG

  • 1 iPad Air, 64 Go, Wi-Fi + 4G 
Desimlocké, acheté chez Apple le 1/10/2013. Excellent état général. Un magnifique sticker Super Mario au dos… Mais si vous n’en voulez pas, je le retirerai gratuitement ^^ Livré avec chargeur et câble Lightning. 450€ TTC.
iPad Air GG - FrontiPad_Mario
  • 1 NAS Synology 8 disques DS1812+. Caractéristiques ici. Excellent état, livré avec upgrade RAM 3 Go + 7 disques de 1 To chacun , mais vous mettez les disques que vous voulez dedans ! 600€, à négocier si vous ne voulez pas les disques.
  • 1 Mac Pro 2010, Quad-Core Intel Xeon 2.8 GHz (1 processeur), 3 disques 1 To, 32 Go de RAM (4×8 Go), ATI Radeon HD 5770, compatible Sierra ! 600€ TTC
  • 1 Xserve 2008, Quad-Core Intel Xeon Quad-Core Intel Xeon 2.8 GHz (quadcore 1 processeur), 16 Go de RAM (8×2 Go), disque interne 80 Go. 400€ TTC
  • bornes Airport Express 802.11b/g/n (modèle A1264) : celle avec l’ancien look, à directement insérer dans une prise murale ! 20€ TTC pièce.
  • borne Airport Express 802.11b/g (modèle A1088) : 10€ TTC.
  • 2 Apple TV : un modèle 2ème génération à 25€ TTC, et un modèle 3ème génération à 40€ TTC. Chacun livré avec télécommande d’origine.

Remarques importantes

– Tous les prix sont TTC.

– Les prix sont fermes et non négociables. Sauf si vous tenez tellement à acheter un de ces produits que vous êtes prêt à mettre plus, dans ce cas… ^^ Ne me contactez pas pour me demander si je suis prêt à le céder à moins que le prix annoncé, ça sera non.

– Chaque appareil est testé et fonctionnel. Si il y avait cependant un souci durant le premier mois d’utilisation, je la reprendrai sans discussion. Pour les machines couvertes par AppleCare, vous pourrez contacter directement Apple pour obtenir le support nécessaire.

– Les accessoires livrés d’origine sont normalement fournis. Si un adaptateur est nécessaire, je fournis celui d’origine ou un équivalent.

– Je peux établir une facture société pour certaines de ces machines (les plus récentes), certaines venant de mon stock professionnel, d’autres de mon stock personnel. Demandez la facture à la commande.

– Chaque machine pourra être récupérée directement à mon bureau à Vitry sur Seine (94). Éventuellement possibilité de livraison en main propre sur Paris ou sur la périphérie de Vitry sur Seine.

– Si vous souhaitez une configuration différente (disque plus gros ou SSD sur le Mac Pro, ajout de RAM), c’est faisable, mais ça ne sera pas gratuit :-) Contactez-moi et dites-moi exactement ce que vous souhaitez faire. Pour le Mac Pro, indiquez-moi également quel système vous souhaitez dessus.

– Possibilité d’envoi à vos frais sur la France métropolitaine (pas d’envoi à l’étranger). Dans ce cas, le règlement devra être effectué par virement AVANT l’envoi. L’appareil sera expédié dans les 7 jours suivant votre règlement. Pas de mandat-cash, pas de Western Union ou assimilé non plus.

Si vous êtes intéressé par un de ces appareils : envoyez-moi un e-mail à l’adresse ventes at gete point net. NE PAS M’APPELER POUR AVOIR PLUS D’INFORMATIONS OU POUR DEMANDER À ACHETER LA MACHINE. Que. Par. Mail. Merci.

Si vous avez des questions, envoyez également un e-mail. Vos adresses e-mail ne seront pas collectées à des fins commerciales. J’insiste.