Guide

Nouvelles mises à jour et améliorations de Roundfleet.

Avis important

Les exemples de code et scripts fournis dans ces tutoriels sont uniquement à des fins éducatives. Roundfleet n'est pas responsable des problèmes, dommages ou vulnérabilités de sécurité qui pourraient survenir lors de l'utilisation, modification ou implémentation de ces exemples. Toujours vérifier et tester le code dans un environnement sécurisé avant de l'utiliser dans des systèmes de production.

Désactiver les Mises à Jour Automatiques de macOS

Dans les environnements d'entreprise, contrôler quand et comment les mises à jour macOS sont installées est crucial pour maintenir la stabilité du système et assurer la compatibilité avec les applications métier. Ce tutoriel montre comment désactiver les mises à jour automatiques de macOS avec des scripts shell.

Comprendre les Paramètres de Mise à Jour macOS

macOS a deux comportements principaux de mise à jour automatique :

  • Téléchargement Automatique : Télécharge les mises à jour en arrière-plan
  • Vérification Automatique : Vérifie périodiquement les serveurs d'Apple pour de nouvelles mises à jour

Les deux peuvent être contrôlés via le domaine de préférences com.apple.SoftwareUpdate.

Scripts de Base

Désactiver le Téléchargement Automatique

#!/bin/bash
defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticDownload -boolean false

Désactiver la Vérification Automatique

#!/bin/bash
defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticCheckEnabled -boolean false

Script de Déploiement Entreprise

Pour un déploiement à grande échelle dans votre Roundfleet :

#!/bin/bash

# Désactiver les Mises à Jour Automatiques macOS - Script Entreprise
# Compatible avec macOS 10.14+

# Fonction pour enregistrer les messages
log_message() {
    echo "$(date '+%Y-%m-%d %H:%M:%S') - $1" | tee -a /var/log/macos_update_config.log
}

# Fonction pour obtenir l'utilisateur actuel
get_current_user() {
    stat -f "%Su" /dev/console
}

# Fonction principale de configuration
configure_updates() {
    local current_user
    current_user=$(get_current_user)
    
    log_message "Début de la configuration des mises à jour macOS pour l'utilisateur : $current_user"
    
    # Désactiver le téléchargement automatique
    if defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticDownload -boolean false; then
        log_message "✓ Téléchargement automatique désactivé avec succès"
    else
        log_message "✗ Échec de la désactivation du téléchargement automatique"
        return 1
    fi
    
    # Désactiver la vérification automatique
    if defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticCheckEnabled -boolean false; then
        log_message "✓ Vérification automatique désactivée avec succès"
    else
        log_message "✗ Échec de la désactivation de la vérification automatique"
        return 1
    fi
    
    # Désactiver l'installation automatique (sécurité supplémentaire)
    if defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticallyInstallMacOSUpdates -boolean false; then
        log_message "✓ Installation automatique désactivée avec succès"
    else
        log_message "✗ Échec de la désactivation de l'installation automatique"
    fi
    
    # Redémarrer les préférences Software Update pour forcer le rechargement
    killall -HUP cfprefsd 2>/dev/null || true
    
    log_message "Configuration des mises à jour macOS terminée"
    return 0
}

# Fonction de vérification
verify_configuration() {
    local download_status check_status install_status
    
    download_status=$(defaults read /Library/Preferences/com.apple.SoftwareUpdate AutomaticDownload 2>/dev/null || echo "non défini")
    check_status=$(defaults read /Library/Preferences/com.apple.SoftwareUpdate AutomaticCheckEnabled 2>/dev/null || echo "non défini")
    install_status=$(defaults read /Library/Preferences/com.apple.SoftwareUpdate AutomaticallyInstallMacOSUpdates 2>/dev/null || echo "non défini")
    
    log_message "Vérification de la configuration :"
    log_message "  Téléchargement Automatique : $download_status"
    log_message "  Vérification Automatique : $check_status"
    log_message "  Installation Automatique : $install_status"
}

# Exécuter la fonction principale
if configure_updates; then
    verify_configuration
    log_message "Script exécuté avec succès"
    exit 0
else
    log_message "Échec de l'exécution du script"
    exit 1
fi

Script de Vérification

Vérifier les paramètres de mise à jour actuels :

#!/bin/bash

echo "=== État des Paramètres de Mise à Jour macOS ==="
echo "Téléchargement Automatique : $(defaults read /Library/Preferences/com.apple.SoftwareUpdate AutomaticDownload 2>/dev/null || echo 'Non configuré')"
echo "Vérification Automatique : $(defaults read /Library/Preferences/com.apple.SoftwareUpdate AutomaticCheckEnabled 2>/dev/null || echo 'Non configuré')"
echo "Installation Automatique : $(defaults read /Library/Preferences/com.apple.SoftwareUpdate AutomaticallyInstallMacOSUpdates 2>/dev/null || echo 'Non configuré')"

Réactiver les Mises à Jour

Pour restaurer les mises à jour automatiques :

#!/bin/bash

# Réactiver le téléchargement automatique
defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticDownload -boolean true

# Réactiver la vérification automatique
defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticCheckEnabled -boolean true

# Réactiver l'installation automatique
defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticallyInstallMacOSUpdates -boolean true

echo "Mises à jour automatiques réactivées"

Dépannage

ProblèmeSolution
Les paramètres reviennent après redémarrageS'assurer que les scripts s'exécutent avec des privilèges admin
Préférences Système affiche les anciennes valeursRedémarrer Préférences Système ou exécuter killall -HUP cfprefsd
Les changements ne s'appliquent pasVérifier /var/log/macos_update_config.log pour les erreurs
Les mises à jour se téléchargent encoreVérifier les permissions du fichier de préférences

Notes Importantes

  • Les utilisateurs avec privilèges admin peuvent changer manuellement ces paramètres
  • L'app Préférences Système/Réglages peut nécessiter un redémarrage pour refléter les changements
  • Considérez l'utilisation de Profils de Configuration pour un contrôle plus strict
  • Testez sur un petit groupe avant le déploiement à l'échelle de l'entreprise

Alternative avec Profil de Configuration

Pour un contrôle plus strict, considérez le déploiement d'un Profil de Configuration :

<key>AutomaticCheckEnabled</key>
<false/>
<key>AutomaticDownload</key>
<false/>
<key>AutomaticallyInstallMacOSUpdates</key>
<false/>

Related Tutorials

Gestion de Lancement Automatique d'Applications sur macOS

Déployez et gérez les lancements automatiques d'applications sur les appareils macOS en utilisant des configurations LaunchAgent de niveau entreprise, la gestion de profils utilisateur et le contrôle de cycle de vie d'application centralisé.

7 juil. 2025

Gestion des Mises à Jour Automatiques de l'App Store sur macOS

Apprenez à contrôler les mises à jour automatiques de l'App Store sur les appareils macOS en utilisant les outils en ligne de commande. Guide complet pour la gestion des mises à jour d'entreprise, l'optimisation de la bande passante et le contrôle de sécurité.

7 juil. 2025

Gestion Navigateur Safari sur macOS

Apprenez à configurer la page d'accueil Safari, paramètres navigateur, politiques sécurité et déployer la gestion navigateur entreprise sur vos appareils Roundfleet avec gestion utilisateur complète et fonctionnalités conformité.

7 juil. 2025

Gestion Rosetta 2 et Compatibilité Apple Silicon sur macOS

Apprenez à installer, gérer et surveiller la couche traduction Rosetta 2 sur Mac Apple Silicon avec gestion compatibilité niveau entreprise, surveillance applications et capacités déploiement flotte.

7 juil. 2025

Gestion de Paquets d'Entreprise avec Homebrew sur macOS

Déployez, gérez et maintenez les paquets logiciels sur les appareils macOS en utilisant Homebrew avec une gestion de configuration d'entreprise, un suivi de conformité et des flux de déploiement automatisés.

7 juil. 2025

Gérer les extensions de noyau sur macOS

Apprenez à afficher, charger, décharger et surveiller les extensions de noyau (kexts) sur les appareils macOS via des scripts en ligne de commande pour une gestion système et sécurité améliorées.

7 juil. 2025

Gestion Apple ID et Suivi d'Identité sur macOS

Découvrez et gérez les Apple ID, surveillez les services iCloud, appliquez les politiques de confidentialité et implémentez la gestion d'identité d'entreprise sur les appareils macOS avec un suivi complet d'audit et de conformité.

7 juil. 2025

Gestion d'Inventaire App Store sur macOS

Apprenez à découvrir, suivre et gérer les applications App Store sur les appareils macOS en utilisant des scripts d'inventaire complets avec rapports d'entreprise, suivi de conformité et capacités de gestion de flotte.

7 juil. 2025