avril 2011

Migration de la base de données d’Apple Remote Desktop

Lorsque vous commencez à faire de la migration de données, il est toujours important d’obtenir une bonne compréhension de quelle donnée vous avez besoin de transférer, et dans quel but vous faites cette migration : des éléments peuvent être plus importants  que d’autres pour vous. Dans le cas de Apple Remote Desktop (ARD), il y a différents endroits de stockage de ces données, il faut en être conscient :

/Library/Preferences/com.apple.RemoteDesktop.plist

Ce fichier contient toutes les préférences qui s’appliquent à tout le système, premièrement les informations de sérialisation, qui est système spécifique (vous devrez donc entrer le numéro de série sur le nouveau système).

/var/db/RemoteManagement

Cette base de données et son jeu de caches contient la base de données des client Remote Desktop, utilisée pour le reporting du client.

~/Library/Application Support/RemoteDesktop

Ce dossier est utilisé pour stocker les préselections de commandes (incluant les modèles de commandes de Envoyer une commande Unix), votre historique des tâches, et les actions et réglages du manager de tâches.

~/Library/Preferences/com.apple.RemoteDesktop.plist

Ce fichier contient la mémoire de votre expérience avec ARD, incluant la complète base de données de l’ordinateur, les listes d’ordinateurs, les scanners et tout aussi important les références des accès à tous les ordinateurs de la base de données.

Une fois que vous avez une compréhension des données et de leur lieu de stockage par ARD, il devient assez trivial de transférer les données de la base de données. Partant du principe dans l’exemple qui suit que vous désirez migrer votre base de données d’ARD depuis un ordinateur local vers un nouvel ordinateur connecté en mode cible avec Firewire et monté comme /Volumes/NewMac. Dans la plupart des cas, tout ce que vous avez à copier est le fichier de préférences de l’utilisateur principal situé à ~/Library/Preferences/com.apple.RemoteDesktop.plist :

cd /Volumes/NewMac/Users/username

cp -p ~/Library/Preferences/com.apple.RemoteDesktop.plist Library/Preferences/com.apple.RemoteDesktop.plist

Si vous avez des modèles de commandes stockés, ou que vous désirez préserver votre historique des tâches, copiez aussi le dossier depuis Application Support :

cp -pR ~/Library/Application Support/RemoteDesktop/  Library/Application Support/Remote Desktop/

Si votre installation d’ARD agit comme serveur de tâches et reçoit des rapports, vous voudrez aussi les copier. Parce que cette base de données appartient à root, vous aurez besoin d’utiliser sudo pour le copier :

sudo cp -pR /var/db/RemoteManagement/ /Volumes/NewMac/var/db/RemoteManagement/

Ça y est ! Une dernière chose, ce sera une bonne idée de redémarrer pour faire bonne mesure, mais un redémarrage de de l’application ARD pourra faire l’affaire et vous vous retrouverez avec votre nouvelle base de données.

 

Cet article a paru le 13 janvier 2011 sur le TechJournal de l’entreprise 318

Pas de commentaires

mDNSResponder, mDNS et dns-sd

Le processus qui rend Bonjour possible est mDNSResponder, il est situé dans /usr/sbin. /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist invoque mDNSResponder au démarrage (boot). L’une des façons les plus faciles pour circonscrire un problème que vous pensez lié à Bonjour est de désactiver temporairement mDNSResponder :

launchctl unload -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist

Pour le réactiver :

launchctl load -w /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist

En addition de l’activation et la désactivation de mDNSResponder, quand vous cherchez à résoudre un problème vous devriez toujours regarder les logs. Les événements de logs sont enregistrés à la manière syslog et sont disponibles dans la Console. Ils sont situés à /var/log/system.log. En recherchant les erreurs liés à mDNSResponder dans system.log peut aussi être fait en utilisant le Terminal :

cat /var/log/system.log | grep mDNSResponder

Ou interactivement, vous pouvez chercher les erreurs comme elles apparaissent :

tail -f /var/log/system.log | grep mDNSResponder

Afin d’avoir plus d’informations, envoyer une commande SIGUSR1 à mDNSResponder en utilisant killall :

sudo killall -USR1 mDNSResponder

Pour voir les informations au niveau des paquets dans system.log, envoyez un SIGUSR2 à mDNSResponder :

sudo killall -USR2 mDNSResponder

Pour copier l’état dans system.log :

sudo killall -INFO mDNSResponder

mDNSResponder utilise Mach sur le port 5123. Chaque service qui a Bonjour implémenté s’enregistrera avec mDNSResponder sur ce port et pourra être appelé. On retrouve le mécanisme des enregistrements DNS avec un préfixe pour le service et un suffixe pour le type TCP/IP. Par exemple, IPP printing est _ipp._tcp., Apple Events distants est -EPPC._tcp., Remote Frame Buffer est _rfb._tcp., SSH est _ssh._tcp., SFTP est _sftp-SSH._tcp, Partage de Page Web est appelé _home-sharing._tcp, le partage iTunes est _afpovertcp._tcp. et AFP est _afpovertcp._tcp. Un exemple de trafic UDPserait _net-assistant._udp.

Si vous désirez voir quel service est enregistré (et enregistrer des sercies si vous contruisez un réseaux de services qui le nécessitent), utilisez la commande mDNS. L’option -B pour mDNS peut être utilisé pour requérir un espace de noms. Par exemple, l’espace de noms _afpovertcp._tcp peut être appelé en utlisant la commande suivante :

mDNS -B _afpovertcp._tcp

Le résultat serait le suivant, il montre toutes les instances vivantes que le système voit :

Timestamp     A/R Flags Domain                   Service Type             Instance Name

22:53:15.988  Add     0 local.                   _afpovertcp._tcp.            Krypted MacBook Air

Pour enregistrer des services avec Bonjour, il faut utiliser l’opérateur -R et pour chercher des information au sujet d’une instance donnée d’un service utilisez l’opérateur -L. L’opérateur -L vous permet d’obtenir beaucoup d’informations à propos d’un objet donné. Une fois que vous avez trouvé l’objet en utilisant l’option -B, vous aurez le Domaine et le nom de l’instance.  Cela permettra à mDNS d’obtenir IPv4, IPv6, le numéro de port, et les enregistrements TXT, qui fournissent une bande d’options, tel que les informations des imprimantes et autres services et objets. Par exemple, Mac OS X  génère aussi automatiquement des informations au sujet des imprimantes, fondés sur les informations insérées dans le système au sujet de ces imprimantes, tel que le support d’agrafage (Staple=F), le support de collation (Collate=T), et l’url de l’administrateur CUPS (adminurl:http///<computer name>:631/printers/<printername>). D’autres services comme le partage personnel fera un usage important du nom de la machine ou de l’ID de la bas de données d’iTunes.

Pour permettre à mDNS d’utiliser une sortie étendue, utilisez la commande mDNS, avec l’option -L, suivi du nom de l’instance (le nom de l’instance est défini par le service à l’enregistrement de l’instance et peut être le nom de l’imprimante, le nom de l’ordinateur ou ce que le vendeur choisit d’utiliser). Après le nom de l’Instance, mettez l’espace d’adressage (le type de service) et ensuite le domaine donné précédemment lors de l’utilisation de l’option -B. Par exemple, pour regarder une HP 8565 partagé depuis le MacBook Air de Krypted appelé « HP 8565 Krypted MacBook Air », j’utilise :

mDNS -L « HP 8565 Krypted MacBook Air » _ipp._tcp local.

D’autres opérateurs qui ne sont pas sur la page man, mais sont disponibles, inclut _E pour trouver des domaines d’enregistrement recommandés, -F pour trouver des informations au sujet des domaines navigués, -A pour tester des enregistrements mis à jour, -U pour tester des enregistrements TXT, -N pour tester des mises à jour d’enregistrements NULL, -T pour tester des ajouts d’enregistrements, -M pour de multiples enregistrements et -I pour mettre à jour immédiatement des enregistrements plutôt que d’obliger à travailler à travers la mémoire cache. Disponible aussi pour appelé est la commande dns-sd, utilisant la syntaxe identique à mDNS et avec la même sortie aussi. Les données du système ne change pas toujours dynamiquement. Pour recharger les informations après des changements, utilisez l’option flushcache de dscacheutil :

dscacheutil -flushcache

 

Cet article a paru le 27 mars 2011 sur le site Krypted
Pas de commentaires