English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Partage de la méthode de suppression rapide et correcte de fichiers massifs sous Linux

Préface

Attention, ce que l'on appelle ici "énorme" ne se réfère pas à la taille, mais au nombre, par exemple, un répertoire peut contenir des centaines de milliers de fichiers.

Récemment, en optimisant le serveur, j'ai découvert que sous postfix, le répertoire maildrop et le répertoire clientmqueue contiennent un grand nombre de fichiers. Entrer dans ces répertoires et utiliser la commande ls est une méthode stupide, et exécuter directement rm * , il n'y a aucune réponse, et le nombre de fichiers n'a pas diminué, ce qui signifie que l'utilisation directe de la commande rm dans un répertoire de grande quantité de fichiers est inefficace.

Alors quelle est la méthode correcte ? Il y a deux méthodes à choisir :

Première méthode :

find /path/to/directory -type f -exec rm {} \;

Deuxième méthode :

ls -1 /path/to/directory | xargs -I{} rm {}

Ces deux méthodes peuvent supprimer avec succès un grand nombre de fichiers, et la vitesse est également très rapide. Mais il existe une méthode encore meilleure, par exemple, pour supprimer le répertoire clientmqueue mentionné précédemment, qui contient tous des emails, utilisez la méthode suivante :

service sendmail stop
cd /var/spool
mv clientmqueue clientmqueue-todelete
mkdir clientmqueue
chown --reference=clientmqueue-todelete clientmqueue
chmod --reference=clientmqueue-todelete clientmqueue
service sendmail start
rm -rf clientmqueue-todelete

La méthode ci-dessus consiste à renommer le répertoire puis à utiliser --Utilisez le paramètre de référence pour reconstruire le répertoire, puis supprimez le répertoire renommé. La suppression directe du répertoire est très rapide. Vous pouvez également le conserver en tant que sauvegarde sans le supprimer. Plus sûr.

Résumé

Ceci est le contenu complet de cet article. J'espère que le contenu de cet article peut apporter un certain aide à votre apprentissage ou à votre travail. Si vous avez des questions, vous pouvez laisser des messages pour échanger. Merci de votre soutien à l'enseignement de cri

Vous pourriez aussi aimer