{"id":1438,"date":"2018-05-29T13:18:34","date_gmt":"2018-05-29T11:18:34","guid":{"rendered":"http:\/\/clark.tipistrani.it\/?p=1438"},"modified":"2019-01-14T08:29:27","modified_gmt":"2019-01-14T07:29:27","slug":"rimuovere-automaticamente-i-files-scaricati-da-un-server-ftp","status":"publish","type":"post","link":"http:\/\/clark.tipistrani.it\/?p=1438","title":{"rendered":"Rimuovere automaticamente i files scaricati da un server FTP"},"content":{"rendered":"<p>Poco tempo fa ho riscritto il server <a href=\"http:\/\/clark.tipistrani.it\/?p=1428\">FTP<\/a> aziendale, ma una volta di pi\u00f9 mi sono reso conto che in breve tempo \u00e8 diventato un deposito di roba non assolutamente gestito, non mi pare ci voglia una scienza a tenere pulito un server che metti a disposizione dei clienti\/fornitori, basta la volont\u00e0 di farlo ma evidentemente non \u00e8 cos\u00ec.<br \/>\nPotevo semplicemente fare una pulita ogni tot giorni, ma dato che mi metto sempre nei panni dell&#8217;utente mi son detto che potevo avere mille cose da fare prima di scaricare quel documento che avrei usato tra 3 mesi ad esempio, e quindi se indiscriminatamente ogni domenica per fare un esempio la directory download viene svuotata io corro il rischio di non aver scaricato il mio file e di dover dire per favore rimettimelo su a disposizione, non facendoci certo una bella figura.<br \/>\nQuindi mi son messo a cercare per bene come cancellare solo i files scaricati effettivamente.<br \/>\nTutto quello che c&#8217;\u00e8 da sapere lo si trova nel file di log di proftpd che si chiama xferlog e si trova in \/var\/log\/proftpd.<br \/>\nun esempio banale di xferlog \u00e8 questo:<\/p>\n<p>Fri Apr 20 07:44:50 2018 2 sangiorgio.oceano.lan 1000878 \/home\/archivio\/download\/slide-sd-20-170621140832.pdf b _ i r manager ftp 0 * c<br \/>\nFri Apr 20 07:45:05 2018 3 sangiorgio.oceano.lan 815930 \/home\/archivio\/download\/slide-sd-20-170621140711.pdf b _ i r manager ftp 0 * c<br \/>\nFri Apr 20 07:45:08 2018 5 sangiorgio.oceano.lan 1370869 \/home\/archivio\/download\/slide-sd-20-170621140342.pdf b _ i r manager ftp 0 * c<br \/>\nFri Apr 20 07:47:21 2018 70 sangiorgio.oceano.lan 26815143 \/home\/archivio\/upload\/debian-handbook.pdf b _ i r archivio ftp 0 * c<br \/>\nFri Apr 20 08:06:39 2018 3 sangiorgio.oceano.lan 815930 \/home\/archivio\/download\/slide-sd-20-170621140711.pdf b _ o r archivio ftp 0 * c<br \/>\nFri Apr 20 08:06:42 2018 6 sangiorgio.oceano.lan 1370869 \/home\/archivio\/download\/slide-sd-20-170621140342.pdf b _ o r archivio ftp 0 * c<br \/>\nFri Apr 20 08:06:44 2018 4 sangiorgio.oceano.lan 1000878 \/home\/archivio\/download\/slide-sd-20-170621140832.pdf b _ o r archivio ftp 0 * c<\/p>\n<p>Cercando in rete ho trovato questa informazione, i tre caratteri che seguono il nome del file indicano lo stato del file stesso, quindi:<br \/>\nin caso di formato ASCII<br \/>\na _ i (uploaded)<br \/>\na _ o (downloaded)<br \/>\na _ d (deleted)<br \/>\nin caso di formato binario<br \/>\nb _ i (uploaded)<br \/>\nb _ o (downloaded)<br \/>\nb _ d (deleted)<br \/>\nQuindi se io parso il log ed estraggo le linee con b _ o e quindi le passo a un qualcosa che provvede ad eliminare i miei files scaricati dalla directory download sono a posto.<\/p>\n<p>Quindi:<\/p>\n<p>cd \/usr\/local\/bin<\/p>\n<p>vim remdow.sh (remove downloaded primo premio per la fantasia&#8230;)<br \/>\n#! \/bin\/bash<br \/>\ncd \/home\/archivio\/dowload<br \/>\ngrep -w &#8220;b _ o r archivio ftp 0 *&#8221; \/var\/log\/proftpd\/xferlog | cut -d &#8216; &#8216; -f 9 | xargs rm -f<br \/>\nexit 0<br \/>\nRendo eseguibile il file e lo metto in crontab una volta a settimana et voil\u00e0 il gioco \u00e8 fatto.<\/p>\n<p>Grazie a ERLUG per la dritta su come passare la lista dei file al comando rm<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Poco tempo fa ho riscritto il server FTP aziendale, ma una volta di pi\u00f9 mi sono reso conto che in breve tempo \u00e8 diventato un deposito di roba non assolutamente gestito, non mi pare ci voglia una scienza a tenere pulito un server che metti a disposizione dei clienti\/fornitori, basta la volont\u00e0 di farlo ma [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,9,7,6],"tags":[123,119,25],"class_list":["post-1438","post","type-post","status-publish","format-standard","hentry","category-linux","category-script","category-sistemi-operativi","category-work","tag-bash","tag-ftp","tag-script-2"],"_links":{"self":[{"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=\/wp\/v2\/posts\/1438","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1438"}],"version-history":[{"count":4,"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=\/wp\/v2\/posts\/1438\/revisions"}],"predecessor-version":[{"id":1550,"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=\/wp\/v2\/posts\/1438\/revisions\/1550"}],"wp:attachment":[{"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1438"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1438"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/clark.tipistrani.it\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1438"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}