{"id":1620,"date":"2014-05-02T11:18:48","date_gmt":"2014-05-02T09:18:48","guid":{"rendered":"http:\/\/blog.nebule.org\/?p=1620"},"modified":"2016-03-29T19:01:18","modified_gmt":"2016-03-29T17:01:18","slug":"supprimer-un-grand-nombre-dobjets-anciens","status":"publish","type":"post","link":"http:\/\/blog.nebule.org\/?p=1620","title":{"rendered":"Supprimer un grand nombre d&rsquo;objets anciens"},"content":{"rendered":"<p style=\"text-align: justify;\">La fonction d&rsquo;oubli, bien qu&rsquo;indispensable, n&rsquo;est pas encore en place. Elle n\u00e9cessite la mise en place pr\u00e9alable de la pond\u00e9ration sur les objets. Cette pond\u00e9ration est elle-m\u00eame un d\u00e9riv\u00e9 des avis et \u00e9motions.<\/p>\n<p style=\"text-align: justify;\">En attendant, il peut \u00eatre n\u00e9cessaire de supprimer un grand nombre d&rsquo;objets anciens et qui perdent vite de la valeur avec le temps. Typiquement cela concerne les sauvegardes d&rsquo;un serveur. Les sauvegardes ont une forte utilit\u00e9 mais seule la derni\u00e8re en date a vraiment de l&rsquo;importance. Tout au plus peut-on garder des sauvegardes plus anciennes pour pouvoir remonter dans le temps, au cas o\u00f9. Mais si on fait une sauvegarde journali\u00e8re, la plupart des sauvegardes n&rsquo;ont plus d&rsquo;int\u00e9r\u00eat apr\u00e8s quelques jours, voir le lendemain.<\/p>\n<p style=\"text-align: justify;\">Voici comment supprimer des objets par lot dans <em>nebule<\/em>, et surtout en <em>bash<\/em>.<\/p>\n<h2 style=\"text-align: justify;\">1 Lister<\/h2>\n<p style=\"text-align: justify;\">Premi\u00e8re \u00e9tape, lister tous les objets que l&rsquo;on souhaite &lsquo;oublier&rsquo;. Ici, les objets sont ceux qui font plus de 10Mo et qui sont anciens de plus de 90 jours.<br \/>\nLancer :<br \/>\n<code>find pub\/o\/ -mtime +90 -size +10M | cut -d '\/' -f 3 &gt; aSupprimer.txt<\/code><\/p>\n<p style=\"text-align: justify;\">Le fichier <code>aSupprimer.txt<\/code> contient la liste des objets qui r\u00e9pondent aux crit\u00e8res. Il serait tentant de supprimer directement les fichiers, mais ceux-ci pourraient r\u00e9appara\u00eetre suite \u00e0 une synchronisation. Il est pr\u00e9f\u00e9rable de les marquer supprim\u00e9s.<\/p>\n<h2 style=\"text-align: justify;\">2 Supprimer<\/h2>\n<p style=\"text-align: justify;\">Deuxi\u00e8me \u00e9tape, faire supprimer et marquer comme supprim\u00e9s les objets pr\u00e9c\u00e9demment list\u00e9s.<br \/>\nLancer :<br \/>\n<code>. lib_nebule.sh<br \/>\n. env.sh<br \/>\nexport nebule_publ_entite=$(cat pub\/e)<br \/>\nexport nebule_priv_entite=$(cat priv\/e)<br \/>\nread -s -p \"Mot de passe : \" nebule_pass_entite<br \/>\nnebCheckKeyPass<br \/>\ncat aSupprimer.txt | while read O ; do echo $O ; _l_wr $(_l_gen 0 d $O 0 0) ; rm pub\/o\/$O ; done<\/code><\/p>\n<p style=\"text-align: justify;\">Et voila, les objets sont supprim\u00e9s et marqu\u00e9s comme supprim\u00e9s. Le fichier <code>aSupprimer.txt<\/code> peut \u00eatre lui aussi supprim\u00e9&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>La fonction d&rsquo;oubli, bien qu&rsquo;indispensable, n&rsquo;est pas encore en place. Elle n\u00e9cessite la mise en place pr\u00e9alable de la pond\u00e9ration sur les objets. Cette pond\u00e9ration est elle-m\u00eame un d\u00e9riv\u00e9 des avis et \u00e9motions. En attendant, il peut \u00eatre n\u00e9cessaire de supprimer un grand nombre d&rsquo;objets anciens et qui perdent vite de la valeur avec le &hellip; <a href=\"http:\/\/blog.nebule.org\/?p=1620\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">Supprimer un grand nombre d&rsquo;objets anciens<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[64,7,110,111,24,35],"tags":[],"_links":{"self":[{"href":"http:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/1620"}],"collection":[{"href":"http:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1620"}],"version-history":[{"count":1,"href":"http:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/1620\/revisions"}],"predecessor-version":[{"id":2200,"href":"http:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/1620\/revisions\/2200"}],"wp:attachment":[{"href":"http:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1620"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1620"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1620"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}