Comment désactiver la relance des applications et la restauration des fenêtres dans El Capitan au redémarrage?

19

Comment désactiver à la fois la fonctionnalité "relancer les applications après le redémarrage" ainsi que la fonctionnalité "rouvrir les fenêtres 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 être présenté avec un bureau vierge et pas tout ce que j'avais ouvert auparavant. De plus, lorsque j'ouvre une application, je ne veux pas que la douzaine de choses sur lesquelles je travaillais auparavant s'ouvrent en même temps.

tattar8
la source

Réponses:

25

Si vous cherchez un moyen de désactiver définitivement cette fonctionnalité afin de ne pas avoir à vous souvenir de l'étape supplémentaire "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 ce changement plus tard et réactiver la fonctionnalité, peut-être parce que vous avez subi des lésions cérébrales et que vous trouvez maintenant la boucle de démarrage amusante, supprimez simplement 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*
Dan
la source
Une telle excellente solution. Cela m'ennuie depuis si longtemps, mais je n'ai jamais pris le temps de chercher comment l'arrêter définitivement.
Brady
La meilleure réponse. Fonctionne sur El Capitan et Sierra.
Darryl E. Clarke
1
Votez maintenant, redémarrez. Je voterai de nouveau si je revois cette fenêtre dans 2 minutes :-)
William Entriken
1
Deux ajouts importants à cette solution: 1) Vous devrez peut-être supprimer et rajouter une version vide de ce fichier avant de modifier les autorisations. Sinon, il rouvrira simplement les fenêtres persistantes en dernier. 2) Vous devrez peut-être également modifier certains autres paramètres pour vous assurer que les applications ne sont pas configurées pour se lancer à la connexion.
Chuim
4

L'approche avec laquelle j'ai réussi est essentiellement l'approche de fichier verrouillé de John Smfifth, après avoir vidé le fichier. La bonne chose à ce sujet est que cela peut être fait sans droits root et en utilisant un simple script shell à deux lignes:

# 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 {} \;
href_
la source
Après une plongée rapide dans le findmanuel: le point d'exclamation dans la première commande est un unary notqui est analysé par la commande find, pas par l'expansion de l'historique bash. Il annule l' -size 0expression, de sorte que seul un fichier loginwindow non vide soit trouvé. Il pourrait également s'écrire -not.
Joe
3

La solution la plus simple et celle que j'utilise est de localiser le fichier dans le Finder: ~ / Library / Preferences / ByHost / com.apple.loginwindow

Ensuite, fermez toutes les applications pour vider le contenu des fichiers ci-dessus, ou de préférence ouvrez simplement le fichier dans Text Edit et supprimez tout le contenu, puis enregistrez-le.

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, car le processus est beaucoup plus simple à retenir. Le code du terminal que vous utilisez occasionnellement ne sera probablement pas facilement mémorisé ou récupéré.

John Smfifth
la source
1
Le problème est plus de se souvenir du nom et de l'emplacement du fichier dont vous devez modifier les paramètres. Une fois que vous savez que, pour de nombreux utilisateurs d'un arrière-plan Unix, les commandes shell chmod et chown et leur signification sont de notoriété publique, tout en sachant qu'Apple a créé un paramètre "verrouillé", dont ils ne savent pas exactement ce que cela signifie, est assez ésotérique.
gpvos
0

Pour empêcher les applications d'ouvrir des documents précédents, accédez à Préférences Système> Général et cochez la case Fermer les fenêtres lorsque vous quittez une application.

entrez la description de l'image ici

Pour empêcher les applications de relance après le redémarrage de se produire, décochez la case dans la fenêtre contextuelle Arrêter ou Redémarrer:

entrez la description de l'image ici

IconDaemon
la source
5
J'ai déjà coché la première case et je décoche toujours la case de réouverture. Mais quand je dois faire une réinitialisation matérielle pour une raison quelconque, les 50 choses que j'ai eues ont pu être relancées, et j'essaye de les arrêter.
tattar8
2
Je me concentrerais sur la correction de tout ce qui vous oblige à effectuer une réinitialisation matérielle. En ce moment, vous demandez au mécanicien de réparer le klaxon parce que les freins ne fonctionnent pas.
Tetsujin
3
Le problème est que MacOS rouvrira toujours les fenêtres après un arrêt forcé ou un crash. En d'autres termes, les situations mêmes où vous aimeriez le moins que les fenêtres rouvrent (et potentiellement répètent le problème)
ViggoV
1
@Tetsujin: mon système est stable, donc la nécessité d'une réinitialisation matérielle a tendance à se produire irrégulièrement et très rarement, mais des bugs se produisent, donc la cause est généralement un problème ponctuel, différent à chaque fois. Néanmoins, à une telle époque, je ne veux surtout pas que la méchante surprise du système rouvre tout.
gpvos