Administrer Apple Remote Desktop en ligne de commande
Apple Remote Desktop (ou encore ARD) et l’outil de prédilection d’un administrateur Mac.

Cet outil permet non seulement d’observer et de prendre la main aussi bien sur des postes clients que sur les xserve de l’entreprise (même durant l’installation), mais aussi de déployer de manière centralisée des packets, des scripts, de lancer des commandes à distance, ou encore de générer des rapports sur l’état des machines. Sur un Mac OS X Server, l’installateur vous propose lui même d’activer ARD à la fin de l’installation.
Sur un poste client, ARD se basant sur le partage decran, celui ci n’est pas forcement actif lorsque l’on peut en avoir besoin… Voici donc quelques commandes qui vont nous permettre de l’activer grâce à un accès SSH:
$ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -restart -agent -privs -all
Cette ligne activera donc l’accès ARD pour n’importe quel compte autorisé à se loguer sur cette machine (les utilisateurs locaux et réseau).
Vous pouvez également restreindre cette accès afin de n’autoriser que les utilisateurs possédant des droits d’administration sur la machine en question en lançant plutôt cette commande:
$ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -users admin -privs -all -restart -agent -menu
Toujours via le terminal, vous pouvez également désactiver ARD et son démarrage automatique:
$ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -deactivate -stop
Les utilisateurs déjà habitués à ARD auront certainement déjà remarqué qu’il arrive que le service se retrouve indisponible selon la version d’ARD et de Mac OS, vous pouvez très facilement redémarrer ARD, toujours en ligne de commande:
$ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -restart -agent
Disque de sauvegarde en réseau et compatibilité Mac
Voilà quelques mois que je cherchais un petit nas réseau qui prendrai en charge l’AFP et me permettrai de faire mes sauvegardes via le réseau pour ne pas avoir à brancher de disque USB tous les 4 matins.
J’avais bien un petit Linksys NSLU2 flashé sous Debian en rab mais cela m’obligeais à ajouter des disques USB 2.0, donc double d’alimentation, place, qui plus ai la bête à tendance à siffler, et le tout avec des performances (la machine n’a qu’un ARM bridé à 133mhz avec 32mo de mémoire), j’ai vite laissé tombé l’idée.
En surveillant un peux les modèles disponibles je suis alors tombé sur le Netgear Stora MS2110, petit frère du Readynas avec une orientation plus “grand public”, le tout pour moins de 200€ disque compris, accès en AFP, certifié TimeMachine, et finalement très décevant…
Malgré sa certification TimeMachine, le Netgear offre un utilisation “multiple” et permet de stocker de la musique, des photos, des vidéos, des documents… De ce fait l’espace de sauvegarde, non actif de base et accessible seulement en SMB, est bridé par un quota de 200go, et cette limite est sans appel… Impossible donc de l’utiliser pour sauvegarder toutes mes machines sur 200go! mon macbook à lui seul avec son disque de 250go dépassait déjà lors de la sauvegarde initiale…
Me voilà donc avec un disque à 200€ acheté pour un besoin auquel il ne répond pas… et heureusement, je l’avais prix chez materiel.net qui encore une fois m’a prouvé son sérieux et sa qualité! Contact direct avec Netgear de leur part, réponse sous 48h, les techniciens de Netgear n’ont pour l’instant pas prévu la modification, et pour gagner du temps Materiel.net à choisit de me reprendre le produit en question afin de ne pas bloquer mon problème de sauvegarde. J’ai donc retourné le Netgear à son envoyeur qui m’a alors fait un avoir (pas fou!), frais de retour compris. Comme d’habitude, Materiel.net, j’en suis content et je le recommande!
Bref revenons a nous moutons, après avoir hésité sur quelques modèles de chez Synology, je me suis dis que cela m’aurai fait une sauvegarde finalement assez éloignée de ma machine à sauvegarder: macbook -> neufbox (54mbits) -> switch (100mb) -> nas (1gbits) et enfin les accès disques.
J’ai donc craquer et encore une fois j’ai acheté chez Apple. Une petite TimeCapsule viens de rejoindre mon réseau, remplaçant ainsi le switch gigabyte et le wifi fourni par la neufbox, je sais que mon espace de sauvegarde se trouve juste derrière la borne et que le produit est prévu pour, bref aucun problème tout fonctionne!
Note à mois même, ne plus essayer de bidouiller un système alternatif pour économiser 60€, ça marchera toujours moins bien…
Installation de mod_python pour Apache sous Mac OS X
Bataille d’une soirée, j’ai passé pas mal de temps avant de réussir à faire redémarré mon Apache avec le chargement du module python.
L’erreur est pourtant simple:
mod_python.so: mach-o, but wrong architecture
Curieusement, il m’a alors fallu compiler un mod_python compatible avec toutes les architectures suportées par OS X (alors que je n’ai que des machines intel…)
Attention, pré-requis: vous devez avoir “gcc” et “make” installé sur votre machine. Si ce n’est pas le cas, installez les xcodestools.
Voici alors comment précéder:
-Tout d’abord, récupérez les dernières sources de mod_python sur le site du projet apache Actuellement, la dernière version étant la 3.3.1, l’url compléte des sources sera: http://www.apache.org/dist/httpd/modpython/mod_python-3.3.1.tgz (utilisez wget si vous l’avez installé!)
-Ouvrez un terminal est localisez l’endroit où ses sources ont été téléchargées (certainemant dans ~/Downloads)
-Décompressez l’archive:
% tar xvf mod_python-X.Y.Z.tgz
(notez que le X.Y.Z correspond à votre version) et entrez dans le dossier:
% cd mod_python-X.Y.Z
-Commençons par configurer les sources en précisant l’emplacement d’apxs
% ./configure —with-apxs=/usr/sbin/apxs
Laissons la machine mouliner et si tout ce passe bien elle devrai nous créer les bons Makefile.
C’est là que ça se complique puisque nous allons modifier directement le Makefile pour lui préciser les architectures à utiliser:
-Ouvrez donc le fichier src/MakeFile avec votre éditeur de text favori (vi est le mien!)
-Reperez la ligne LDFLAGS et ajoutez en fin de ligne:
-arch x86_64 -arch ppc -arch i386
Pour obtenir quelque chose du genre:
LDFLAGS= -Wl,-framework,Python -u _PyMac_Error -framework Python -Wl,-F. -arch x86_64 -arch ppc -arch i386
-Interessez vous maintenant à la ligne CFLAGS et ajoutez lui, en fin de ligne encore une fois:
-arch x86_64 -arch ppc -arch i386
Vous obtiendrez alors quelque chose qui ressemblera à ceci:
CFLAGS=$(OPT) $(INCLUDES) -arch x86_64 -arch ppc -arch i386
-Enfin dans la section “mod_python.so: $(SRCS)” (un peu plus bas), ajoutez les options:
-Wc,”-arch x86_64” -Wc,”-arch ppc” -Wc,”-arch i386”
après l’option -c de la ligne
$(APXS) $(INCLUDES) -c $(SRCS) $(LDFLAGS) $(LIBS)
pour obtenir un résultat proche de celui-ci:
$(APXS) $(INCLUDES) -c -Wc,”-arch x86_64” -Wc,”-arch ppc” -Wc,”-arch i386” $(SRCS) $(LDFLAGS) $(LIBS)
-Enregistrez vous modifications et quittez l’éditeur de texte pour revenir dans le dossier principal des sources.
Passons maintenant à la compilation de ce fameu module:
-Un petit
make
suvit d’un
sudo make install
devrai faire apparaitre un module nommé “mod_python.so” dans le dossier /usr/libexec/apache2
-Pour plus d’information sur notre module:
% file mod_python.so mod_python.so: Mach-O universal binary with 3 architectures mod_python.so (for architecture x86_64): Mach-O 64-bit bundle x86_64 mod_python.so (for architecture ppc7400): Mach-O bundle ppc mod_python.so (for architecture i386): Mach-O bundle i386
Enfin pour finir, activons le module dans Apache et voyons le résultat:
-Editez le fichier /etc/apache2/httpd.conf avec les droits administrateur et ajoutez la ligne
LoadModule python_module libexec/apache2/mod_python.so
(proprement parmi les autres LoadModule)
-Enfin pour tester le tout, ajoutez ces lignes à la toute fin du fichier:
<Location /mpinfo> SetHandler mod_python PythonInterpreter main_interpreter PythonHandler mod_python.testhandler </Location>
-Sauvegardez les modification, quittez l’éditeur de texte et relancez apache:
apachectl -k restart
Le final: Connectez vous maintenant à l’adresse http://localhost/mpinfo et vous remarquerez que votre serveur fonctionne bien avec les extensions python :)