2009-01-15 11 views
3

Je suis allé télécharger un nouveau fichier sur mon serveur web uniquement pour recevoir un message disant que mon quota de disque était plein ... Je n'utilisais pas mon espace alloué, mais plutôt ma QUANTITÉ DE FICHIER. Mon hôte plafonne mon nombre total de fichiers à environ 260 000.Comment supprimer des fichiers via FTP lorsque le répertoire contient plus de 100 000 fichiers?

Vérification dans mes dossiers, je crois que j'ai trouvé le coupable ...

J'ai une petite application de base de données de DVD (vidéo dB par split brain) que je l'ai installé et caché sur mon site web pour mon propre personnel utilisation. Il cache apparemment des données d'IMDB, et au cours des années a secrètement amassé ce qui est probablement proche d'un MIROIR d'IMDB à ce stade. Je ne sais pas avec certitude, mais j'ai eu une deuxième copie (inactive) du programme sur l'hôte que j'ai créé il y a quelques années que j'utilisais pour tester quand j'en modifiais des parties. Le dossier de cache de cette copie inactive contenait 40 000 fichiers d'une taille totale de 2,3 Go. J'ai été capable de supprimer ce dossier sur FTP mais cela a pris plus d'une heure. Heureusement, cela m'a aussi donné un peu de répit. Mais maintenant, comme vous pouvez l'imaginer, le dossier cache de la copie active de cette application web a probablement plus de 150000 fichiers totalisant environ 7Go de données.

C'est ici qu'intervient mon problème ... J'utilise Flash FXP pour mon client FTP et chaque fois que j'essaie de supprimer le dossier de cache, ou même simplement d'afficher le contenu, il s'installe et essaie de charger une liste de fichiers bonne 5 minutes et ensuite perdre la connexion au serveur ...

mon hôte a un navigateur de fichiers basé sur le Web et il se bloque en essayant de le faire ... tout comme les clients FTP en ligne gratuits comme net2ftp.com. Je n'ai pas de capacité SSH sur ce serveur, donc je ne peux pas me connecter directement pour le supprimer.

Quelqu'un at-il une idée de comment je peux supprimer ces fichiers? Y a-t-il un programme FTP différent que je peux télécharger qui aurait un meilleur succès ... ou peut-être un petit script que je pourrais exécuter et qui serait capable de s'en occuper?

Toute aide serait grandement appréciée.

Répondre

3

Il semble que ce soit l'heure d'un utilitaire FTP en ligne de commande. Un navire avec à peu près tous les systèmes d'exploitation. Avec autant de fichiers, j'écrirais un script pour mon client FTP en ligne de commande qui irait dans le dossier en question et effectuerait une liste de répertoires, redirigeant la sortie vers un fichier. Ensuite, utilisez magic (ou perl ou autre) pour traiter ce fichier dans un nouveau script FTP qui exécute une commande delete sur tous les fichiers. Oui, il faudra beaucoup de temps pour courir.

Si le serveur prend en charge les caractères génériques, faites-le à la place et supprimez simplement ..

Si tout cela vous semble trop long, ouvrez un ticket de support auprès de votre fournisseur d'hébergement et demandez-lui de le nettoyer directement sur le serveur. Cela dit, ce n'est pas vraiment une question de programmation et devrait probablement être fermé.

1

Nous avons eu une question il y a un moment où j'ai couru une expérience pour montrer que Firefox peut parcourir un répertoire avec 10 000 fichiers sans problème, via FTP. Vraisemblablement, 150 000 seront aussi bien. Firefox ne vous aidera pas à supprimer, mais il peut être utile de capturer les noms des fichiers que vous devez supprimer.

Mais d'abord je voudrais juste essayer le client de ligne de commande ncftp. C'est bien conçu et j'ai eu de la chance avec ça dans le passé.Vous pouvez supprimer un grand nombre de fichiers à la fois en utilisant des modèles de shell. Et il est disponible pour Windows, MacOS, Linux et bien d'autres plateformes. Si cela ne fonctionne pas, vous ressemblez à un client à long terme --- pourriez-vous prier votre fournisseur de services Internet le privilège d'un compte shell pendant une semaine afin que vous puissiez vous connecter à distance avec Putty ou SSH et souffler la totalité répertoire avec une seule commande rm -r?

5

Quelqu'un at-il une idée de comment je peux supprimer ces fichiers?

Soumettez une demande d'assistance en leur demandant de la supprimer pour vous?

+3

+1 pour le bon sens :) – Kev

1

Si votre FAI fournit un accès ssh, vous pouvez utiliser une commande rm pour supprimer les fichiers.

S'il n'y a pas d'accès par ligne de commande, vous pouvez essayer avec un client FTP puissant tel que CrossFTP. Cela fonctionne sur win, mac et linux. Lorsque vous choisissez de supprimer l'énorme quantité de fichiers sur votre serveur, il peut être mis en file d'attente dans les opérations de suppression, de sorte que vous n'avez pas besoin de recharger le dossier à nouveau. Lorsque vous redémarrez CrossFTP, la file d'attente peut également être restaurée et continuée.