Чистка старых версий портежей
Гость 15 марта, 2005 - 06:07
Подскажите существует ли скриптик который правильно удалял бы старые версии сурсов. Т.е. допустим оставил бы эксперементальные и последние стабильные. "emerge -P" вроде похоже. Подскажите плиз, новичку, а то 35 Гб дистфайлов меня пугают ;)
»
- Для комментирования войдите или зарегистрируйтесь
сам emerge sync удаля
сам emerge sync удаляет из портажа старые ссылки! (если я не ошибаюсь)
Но distfiles не трог
Но distfiles не трогает
Удаление ненужных distfiles
http://linuxshop.ru/forum/viewtopic.php?t=11114
Чтото на сайт автора зайти не получилось, но скрипты у меня его лежат... могу выслать... Хотя я гдето похожий скрипт от другогго человека видел
ИМХО
Вообще, ИМХО, такой скрипт написать не очень сложно.... будет время, попробую написать на BASH'е ;-)
Вышлите плиз. Ме
Вышлите плиз. Меня интересует именно удаление старых дистфайлов, но только так чтобы он просматривал все мои дистфайлы т.к. у меня не все дистфайлы одинаково синхронихизированы с портежами. Надеюсь понятно выразился. А вообще конечно большое спасибо.
"Чтобы попасть в Рай нужно переплыть Лету"
Станислав Ежи Лец
выслать не могу
выслать не могу всвязи с незнанием твоего Email...
Вот clean.pl
А вот genlist.pl
Это не с linuxshop'а?
Это не с linuxshop'а?
Мыло? Интересно, изменять могу, в профиле есть. А действительно как связываться? Это вопрос разработчикам.
"Чтобы попасть в Рай нужно переплыть Лету"
Станислав Ежи Лец
Re: Это не с linuxshop'а?
Мыло используется для того, чтобы высылать вам уведомления и пароли в случае их утери. Адреса на сайте не показываются в ваших же интересах - спамеры ведь не дремлют. :) Если есть желание, можно сделать текстовое поле для "публичного" email'а в профиле пользователя.
Если немного поковыряться можно сделать дополнительный тип поля для email'ов, чтобы они "шифровались" заменой символов на их цифровые коды (браузеры такое понимают, а сканеры страниц не все).
Я пока добавил поле ICQ в профиле в качестве временного решения.
поле для Jabber доб
поле для Jabber добавь :)
Ок. :)
[ done ]
Re: Это не с linuxshop'а?
Я имел ввиду как в phpBB2.
Ну уже несколько дней назад я установил модуль личных сообщений - уведомления оправляются автоматически.
Подойдет такой вариант? :)
Как эти пользоваться Крат
Вот как этим пользоваться:
хотя я пользуюсь только
./genlist.pl && ./clean.pl
./clean.pl --delete
Не знаю как у вас, а у меня genlist.pl ругается:
Не мудрено: строчка "
@dig = ;
" ничего ни для меня ни для перла не значит.Что там должно было быть? Перла я не знаю, но вижу, что это скорее всего должен быть массив (список, или что там в перле есть) строк файла.
Re:
Там должны быть дискрипторы файлов. В genlist.pl - <DIGEST>, в clean.pl - <DIGESTFILES>
Просто форум поубирал эти слова, думая что это таги
У меня скрипт есть, который это может, но только там кроме этого еще много чего, собственно, наше локальное зеркало на нем и работает. Если надо могу прислать, только написан коряво слегка, и mysql ему нужен для ведения статистики и для определения старых дистфайлов (если это питоновскими средствами делать, то медленно будет, решил не париться и через mysql сделать).
---
Gentoo / 2.6.12rc1 / kde-3.4 (sometimes fluxfox)
Забыл сказать - работает ТОЛЬКО с кешем портежей.
---
Gentoo / 2.6.12rc1 / kde-3.4 (sometimes fluxfox)
cleandistfiles-20040812.tar.gz
Если кому надо, свяжитесь со мной (аська\джаббер в профиле указаны) и я вам вышлю архив
---
GNU/Wonderland -- GNU/Страна чудес, страна, в которой вы часто бываете, но, в которую, что примечательно, не надо оформлять визу.
за скрипт
за скрипт спасибо.
на будущее:
в перле объявления переменных через my надо брать в скобки, если там много чего объявляется.
my ($listfile, $portagedir, @dig, %files) = ();
А в процедуре running код перебора палочки '/' пишется в одну строчку:
$pr = {'|'=>'/','/'=>'-','-'=>'\\','\\'=>'|'}->{$pr};
Чистка старых версий исходников
Вот такую штуку видел, ничего сказать не могу относительно работоспособности, сам не пробовал:
# mv /usr/portage/distfiles /usr/portage/distfiles.old
# mkdir -p /etc/portage
# echo local /usr/portage/distfiles.old > /etc/portage/mirrors
# emerge -ef world
# rm /etc/portage/mirrors
# rm -rf /usr/portage/distfiles.old
Не совсем оптимально.... это поместит в /usr/portage/distfiles те исходники софта, который у вас установлен... но если, к примеру, вы поставили irssi (соответствено, выкачали исходники), потом его удалили и решили почистить дистфайлз... в итоге вы потеряете сурсы irssi даже в том случае, если они еще новы... а если это не ирсси а иксы и вы решите их все же поставить?... ИМХО, небольшой скриптик, проходящийся по files/digest* (собственно вышерасположеный скрипт это и делает) и выдирающий от туда имя пакета (опционально размер и МД5) сверяющий с тем что имеется и удаляющий лишнее лучше справится с задачей...
З.Ы. Такой скрипт я написал всего за пару часов (правда там были некоторые "навороты" ;) ), думаю, кому это надо сделает тоже, задача НЕ из ряда сложных.
Краевая ситуация.
Есть некоторый снапшот дерева. И куча дистфайлов. После обновления дерева вероятность того что ни один дистфайл не соответсвует дереву невелика, но есть.. В результате скрипт очистки (если конечно без выкрутасов) снесет все дистфайлы. Интересно, а что на это скажет deltup....
Вобщем не все так просто, нужно еще каким то образом сохранять самый свежий и небитый исходник, даже если его уже нет в дереве.. Тоесть само дерево не очень предназначено для подобных вещей.
Чистка старых версий портежей - обн
Это те которые выложены в топике сверху
http://den-linux.pisem.net/cleandistfiles/index.html
А если не удалять, а переносить?
ИМХО если старые distfiles не удалять, а переносить, то будет более гибко.