Comment désactiver à la fois la fonction "relancer les applications après le redémarrage" et la fonction "rouvrir Windows au redémarrage" ? Lorsque je redémarre (que ce soit après une réinitialisation matérielle ou une commande de redémarrage), je veux que l'on me présente un bureau vierge et non pas tout ce que j'avais ouvert auparavant. De même, lorsque j'ouvre une application, je ne veux pas que la douzaine de choses sur lesquelles je travaillais précédemment s'ouvrent toutes en même temps.
Réponses
Trop de publicités?Si vous cherchez un moyen de désactiver définitivement cette fonction pour ne pas avoir à vous souvenir de l'étape supplémentaire consistant à "décocher la case" chaque fois que vous éteignez votre machine, vous pouvez simplement refuser à OS X l'accès au fichier qu'il utilise pour stocker l'état de votre session.
Dans un terminal,
# Make the file owned by root (otherwise the OS will just replace it)
sudo chown root ~/Library/Preferences/ByHost/com.apple.loginwindow*
# Remove all permissions, so it can't be read or written to
sudo chmod 000 ~/Library/Preferences/ByHost/com.apple.loginwindow*
Si vous souhaitez annuler cette modification ultérieurement et réactiver la fonction, peut-être parce que vous avez subi des lésions cérébrales et que vous trouvez maintenant le démarrage en boucle amusant, il suffit de supprimer ce fichier et le système d'exploitation le recréera.
# Re-enable El Capitan's obnoxious "relaunch all the things" behavior
sudo rm -f ~/Library/Preferences/ByHost/com.apple.loginwindow*
L'approche avec laquelle j'ai eu du succès est essentiellement celle du fichier verrouillé de John Smfifth, après avoir vidé le fichier. Ce qui est bien, c'est que cela peut être fait sans droits Root et en utilisant un simple script de deux lignes du shell :
# clear the file if it isn't empty
find ~/Library/Preferences/ByHost/ -name 'com.apple.loginwindow*' ! -size 0 -exec tee {} \; < /dev/null
# set the user immutable flag
find ~/Library/Preferences/ByHost/ -name 'com.apple.loginwindow*' -exec chflags uimmutable {} \;
La solution la plus simple et celle que j'utilise, est de localiser le fichier dans le finder : ~/Bibliothèque/Préférences/ByHost/com.apple.loginwindow
Ensuite, vous pouvez soit fermer toutes les applications pour vider le contenu des fichiers ci-dessus, soit, de préférence, ouvrir le fichier dans l'éditeur de texte et supprimer tout le contenu, puis l'enregistrer.
Ensuite, resélectionnez le fichier dans le finder mais ne l'ouvrez pas.
Ensuite, appuyez sur la touche Apple (à côté de la barre d'espace) + i, ou allez dans le menu fichier et cliquez sur "Obtenir des informations". Ensuite, dans la section "Général" de la fenêtre d'information affichée, cochez la case de sélection "Verrouillé" (le fichier est alors verrouillé).
En utilisant cette méthode, il est beaucoup plus facile d'activer ou de désactiver la fonction, car le processus est beaucoup plus simple à mémoriser. Le code du terminal que vous utilisez occasionnellement ne sera probablement pas facile à mémoriser ou à retrouver.
Pour empêcher les applications d'ouvrir les documents précédents, allez dans Préférences système > Général et cochez la case Fermer les fenêtres lorsque vous quittez une application.
Pour éviter que les applications ne soient relancées après le redémarrage, décochez la case de la fenêtre contextuelle Arrêt ou redémarrage :