2 votes

Configuration automatisée de l'écran de veille en ligne de commande/Shell Shell.

Je suis donc en train de configurer des LaunchAgents de modèle d'utilisateur par défaut pour configurer un économiseur d'écran par défaut pour certains des fanarts les plus populaires de mon entreprise. (Il a en fait été très bien accueilli par l'équipe). Ils sont conçus comme des images de premier lancement lorsqu'ils se connectent à leurs utilisateurs Active Directory locaux forcés.

Cependant, j'obtiens maintenant des résultats très incohérents... à savoir que cela ne fonctionne pas du tout.

El .plist lance un Shell Shell situé dans le dossier /sbin/. Ce qui est étrange, c'est que cela fonctionne surtout dans un utilisateur existant.

L'économiseur d'écran est censé utiliser "Flipup" avec un dossier spécifique d'images, mélanger les images et définir un temps de démarrage de 5 minutes.

Par exemple, j'ai intentionnellement réglé mon économiseur d'écran "configuration utilisateur par défaut" d'abord sur "Holiday Mobile", puis sur "Cosmos" (l'un des paramètres par défaut) avec un temps de démarrage de 20 minutes et j'ai décoché "shuffle images". Puis je l'ai changé pour "Arabesque".

Lorsque je me suis déconnecté et reconnecté pour lancer le script, j'ai obtenu "Holiday Mobile". Cependant, lorsque je suis allé dans "Desktop and Screensaver Settings", "Arabesque" était en fait sélectionné bien que l'aperçu de "Holiday Mobile" s'affichait avec un "Screen Saver Options" grisé en dessous. (Cependant, le temps de démarrage est passé à 5 minutes et lorsque j'ai cliqué sur "Holiday Mobile", "Shuffle Slide Order" a été coché correctement).

Donc, dans l'utilisateur test, il va à Fan Art, active Shuffle et change l'heure.

Mais lorsque je crée un nouvel utilisateur après avoir ajouté le LaunchAgent .plist au modèle d'utilisateur par défaut, je n'obtiens rien d'autre que l'écran de veille standard "Nom de l'ordinateur" sur fond noir.

Je ne comprends pas du tout pourquoi cela se produit. Avez-vous des suggestions ?

Voici le Shell Shell :

    #!/bin/sh

    ## Set Screensaver to Photo Slideshow
    /usr/bin/defaults -currentHost write com.apple.screensaver 'CleanExit' -string "YES"
    /usr/bin/defaults -currentHost write com.apple.screensaver 'PrefsVersion' -int "100"
    /usr/bin/defaults -currentHost write com.apple.screensaver 'idleTime' -int "300"
    /usr/bin/defaults -currentHost write com.apple.screensaver "moduleDict" -dict-add "path" -string "/System/Library/Frameworks/ScreenSaver.framework/Resources/iLifeSlideshows.saver"
    /usr/bin/defaults -currentHost write com.apple.screensaver "moduleDict" -dict-add "type" -int "0" 
    /usr/bin/defaults -currentHost write com.apple.screensaver 'ShowClock' -bool "false"
    /usr/bin/defaults -currentHost write com.apple.screensaver 'tokenRemovalAction' -int "0"

    ## Set Type of Slideshow to "Flipup" (Results inconsistent)
    /usr/bin/defaults -currentHost write com.apple.ScreenSaver.iLifeSlideshows 'styleKey' -string "Flipup" 

    ## Set location of photos to Fan Art 
    /usr/bin/defaults -currentHost write com.apple.ScreenSaverPhotoChooser 'SelectedSource' -int "4"
    /usr/bin/defaults -currentHost write com.apple.ScreenSaverPhotoChooser 'SelectedFolderPath' "/Manehattan Files/Manehattan Backgrounds/Fan Art"
    /usr/bin/defaults -currentHost write com.apple.ScreenSaverPhotoChooser 'ShufflesPhotos' -bool "true"

    ## Removes the .plist LaunchAgent from inside the User Launch Agent Folder. 
    rm -f ~/Library/LaunchAgents/set-screensaver.plist

    exit

3voto

ghostof101 Points 353

Ainsi, grâce à JAMF, un homme très sage m'a montré une chose très simple que je devais ajouter à la fin de mon script :

killall cfprefsd

Le problème a été entièrement résolu. Si vous allez dans les préférences système, l'ancien économiseur d'écran est toujours sélectionné, mais il fonctionne.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X