78 votes

Puis-je désactiver updatedb.mlocate ?

Je suis sur un serveur ubuntu et j'essaie de décompresser des fichiers images de 300M à partir d'un format de fichier compressé en utilisant Java.

Mon taux de déballage est de 0,5 Mo/sec, ce qui est abyssal (34 jours pour déballer 1,5 To à ce rythme).

J'essaie de comprendre pourquoi, et la seule bizarrerie que je remarque est que updatedb.mlocate fonctionne toujours lorsque j'effectue le processus de déballage. Je veux le désactiver pour voir s'il ne me gêne pas, mais je ne comprends pas grand-chose à ce qu'il est.

top

top - 05:16:52 up 1 day,  5:15,  3 users,  load average: 2.00, 2.01, 1.83
Tasks:  83 total,   1 running,  82 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.4%us,  0.8%sy,  0.0%ni,  8.4%id, 90.2%wa,  0.0%hi,  0.0%si,  0.2%st
Mem:   1737420k total,  1722680k used,    14740k free,  1241260k buffers
Swap:   917500k total,      160k used,   917340k free,   165448k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
22901 davidpar  20   0 1051m  56m 4992 S    3  3.3   0:47.84 java
 2221 root      20   0 32348  26m  268 D    1  1.6  27:57.86 updatedb.mlocat
   25 root      20   0     0    0    0 S    0  0.0  10:10.77 kswapd0
  678 root      20   0 15864  444  268 S    0  0.0   0:19.45 irqbalance
  849 davidpar  20   0 26560 1676  332 S    0  0.1  17:17.49 screen

iotop

Total DISK READ: 4.07 M/s | Total DISK WRITE: 789.62 K/s
  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND
 2221 idle root     1556.98 K/s    6.36 K/s  0.00 % 99.61 % updatedb.mlocate
22902 be/4 davidpar    2.54 M/s  671.93 K/s  0.00 % 96.96 % java -cp /home/davidparks21/fruggutils/lib/FruggMapreduceJobs.~educe.UnpackImages /mnt/local/imagebinaries-r-00010 /mnt/ebs1/
  547 be/3 root        0.00 B/s   87.47 K/s  0.00 %  0.30 % [jbd2/xvdf-8]
  177 be/3 root        0.00 B/s    3.98 K/s  0.00 %  0.15 % [jbd2/xvda1-8]

87voto

Eric Carvalho Points 51571

On peut le tuer avec :

sudo killall updatedb.mlocate

Ou :

sudo kill -9 <PID>

Il fonctionne tous les jours par cron. Désactivez-le avec :

sudo chmod -x /etc/cron.daily/mlocate

Et si vous voulez le réactiver :

sudo chmod +x /etc/cron.daily/mlocate

20voto

KGIII Points 3459

Je ne voulais pas éliminer totalement le processus, mais je voulais qu'il soit moins fréquent. J'ai donc trouvé le moyen de le configurer pour qu'il soit exécuté chaque semaine au lieu de chaque jour. Ceci est basé sur la réponse acceptée au-dessus de mais il est probablement préférable de l'énumérer comme sa propre réponse car il ne le désactive pas.

Cela dit... C'est plutôt simple et ça a l'air de bien fonctionner.

sudo chmod -x /etc/cron.daily/mlocate
sudo cp /etc/cron.daily/mlocate /etc/cron.weekly/mlocate
sudo chmod +x /etc/cron.weekly/mlocate

Le premier désactive la tâche cron. La deuxième le déplace vers les tâches hebdomadaires. La troisième commande définit les permissions pour qu'elle soit activée. Les options suivantes sont disponibles : quotidien, horaire, hebdomadaire et mensuel.

14voto

ant-san Points 141

Je n'ai jamais utilisé locate alors je l'ai enlevé. sudo dpkg -P mlocate Voir aussi : https://wiki.archlinux.org/index.php/File_system_search

1voto

andy magoon Points 833

Si vous désinstallez locate y mlocate avec par exemple :

sudo apt remove locate mlocate

Vous pouvez empêcher leur réinstallation avec :

cat <<EOF | sudo tee /etc/apt/preferences.d/do-not-install-locate.pref
Explanation: Do not install locate or mlocate to avoid excessive Disk I/O
Package: locate mlocate
Pin: origin *
Pin-Priority: -1
EOF

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