8 votes

Empêcher Spotlight d'indexer les futurs disques durs

Avec Mavericks, comment puis-je empêcher Spotlight d'indexer tous les disques à l'exception de mon disque interne principal ? Dans mon travail, je connecte des dizaines de nouveaux lecteurs chaque semaine, et je ne veux pas que le dossier .Spotlight-V100 soit créé sur eux.

Je sais que je peux ajouter chaque lecteur à la liste de confidentialité de Spotlight, mais cela ne peut se faire qu'après avoir connecté le lecteur, et le dossier .Spotlight-V100 a déjà été créé.

Je pourrais désactiver complètement Spotlight, mais je perdrais alors la possibilité d'indexer mon disque interne. Je veux utiliser Spotlight uniquement pour mon disque interne et le désactiver pour tous les autres disques, y compris ceux qui n'ont pas encore été connectés.

4voto

Paddy Carroll Points 193

Un fichier appelé

.metadata_never_index

dans la racine d'un volume supprimera l'indexation.

Vous pouvez générer ce fichier automatiquement

les fichiers suivants doivent être créés en tant que Root

le shell script suivant créera le fichier requis si une entrée spotlight active (datant de moins de 30 jours) n'est pas trouvée.

/var/root/unindex.sh

pour créer cette

sudo vi /var/root/unindex.sh

ou utilisez votre éditeur de texte préféré

Le contenu doit être

#!/bin/bash
# suppress spotlight indexing of new volumes
# pc 26-june-2014 v0.1
# v 0.2 27-june-2014 add mdutil

# get the last volume mounted

vol=$(df)
vol=${vol##*%}
echo $vol

# is this a volume that has been indexed in the past month

count=$(find ${vol}/.Spotlight-V100 -mtime -30 | wc -l )
[[ $count -gt 1 ]] && {

# then it remains so

logger -t unindex spotlight activity detected in last 30 days
exit 0
}

# else create index supression file
logger -t unindex creating ${vol}/.metadata_never_index
touch ${vol}/.metadata_never_index
# and stop spotlight indexing the drive
logger -t unindex mdutil -i off /Volumes/${vol}
mdutil -i off /Volumes/${vol}

s'assurer qu'il peut être exécuté...

sudo chmod a+x /var/root/unindex.sh

ajoutez maintenant une entrée à launchd, créez le fichier

/Library/LaunchDaemons/org.misctools.unindex.plist

pour créer cette

sudo vi /Library/LaunchDaemons/org.misctools.unindex.plist

avec contenu

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>org.misctools.unindex</string>
    <key>ProgramArguments</key>
    <array>
        <string>/var/root/unindex.sh</string>
    </array>
    <key>RunAtLoad</key>
    <false/>
    <key>StartOnMount</key>
    <true/>
</dict>
</plist>

activer maintenant le travail

sudo launchctl load /Library/LaunchDaemons/org.misctools.unindex.plist

le job sera lancé à chaque fois que vous monterez un disque, regardez dans la console les messages filtrés par 'unindex' pour connaître ses actions, par exemple sur ma machine

 26/06/2014 09:02:35.824 unindex[1362]: creating /Volumes/hfs/.metadata_never_index

3voto

njboot Points 8005

Utiliser l'outil de ligne de commande mdutil .

Par exemple, supposons que vous connectiez un volume journalisé HFS+ nommé "LEAVE_ME_BE"

Utilisez la commande suivante pour désactiver l'indexation du volume. Si la propriété est activée, l'exécution en tant que sudo peut s'avérer nécessaire :

sudo mdutil -i off /Volumes/LEAVE_ME_BE

Vérifier l'état de l'indexation de tous les volumes connectés :

mdutil -s /Volumes/*

Lisez la page de manuel mentionnée ci-dessus pour plus d'options.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X