Как полностью выкачать все пакеты из дерева портежей?
Гость 15 Августа, 2005 - 11:27
Появилась возможность использовать очень широкий канал и возникла необходимость выкачать в программы и библиотеки описанные в дереве портежей (т.е. все что есть) как бы это сделать?
»
- Для комментирования войдите или зарегистрируйтесь
См. "Как
См. "Как организовать зеркало" в документации.
_____________________
Дорогу осилит идущий!
Можно
Можно воспользоваться следующей опцией
emerge -f <имя пакета>.
Написать скрипт который проходит по каталогам в portage и за место <имя пакета> подставляет каталог.
Можно с помощью, что-то вроде
for i in 'команда типа ls -lR'
do
emerge -f $i
done;
Надо поразбирать man ls
вот
вот скриптик:
http://v12aml.narod.ru/fetch_ebuilds.html
описание гдето на
http://v12aml-projects.blogspot.com валяется
писал для своих нужд, думаю, тебе подойдет
GNU/Wonderland -- GNU/Страна чудес, страна, в которой вы часто бываете, но, в которую, что примечательно, не надо оформлять визу.
Спасибо
Премного благодарен!
UNIX WAY -->200m
Размер
А не подскажешь сколько мегабайт пришлось скачать?
UNIX WAY -->200m
гигов наверное
гигов наверное 60 :)
Ты неправ!
на сервере все вместе занимает 33 гига!
И ты думаешь что все они прописаны в дереве портежей?
UNIX WAY -->200m
Ты знаешь, а
Ты знаешь, а если на сервере исчо ( :) ) пакеты от 1.4 лежат, а так если сырцы только, то мало будет (гигов 15). Можешь спросить на gentoo.org сколько у них это весит.
http://v12aml-projects.blogspot.com/2005/06/fetchebuildssh.html
P.S. если найдете ошибки в скрипте или будут пожелания относительно улучшения, не стесняйтесь, оставляйте комменты в
http://v12aml-projects.blogspot.com/2005/06/fetchebuildssh.html
;)
GNU/Wonderland -- GNU/Страна чудес, страна, в которой вы часто бываете, но, в которую, что примечательно, не надо оформлять визу.
У меня есть хороший скрипт, но его н
Во-общем у нас на нем держится локальное зеркало. Написан на питоне, работает с кешем портежей.
Закачивает с разных url'ов аналогично приведенному выше скрипту. Раньше сначала пробовал скачивать из нескольких случайных зеркал из списка в базе данных, но потом я это отключил - там обычно нет нужных файлов. После скачивания проверяет размер и md5. если неправильно - то пробует еще заданное число раз.
Можно обновить только часть зеркала (например app-admin, можно только группу пока указывать). Можно посмотреть, какие файлы необходимо скачать ничего не скачивая.
Имеется возможность чистить от старых файлов, проверять md5, неверные - удалять.
Еще можно в файле задать флаги, и тогда файлы, которые для них нужны скачиваться не будут (например пишем ppc, и openoffice-bin для ppc не качается)
Но имеется одна большая проблема - надо его привести в порядок, и написан он местами криво.
Для скачивания ведется статистика (http://distrib.fopf.mipt.ru/index.php?page=linux&&subpage=gentoo_mirror)
Если кому интересно, могу выложить скрипт. Я его все хочу дописать, но никак руки не доходят.
Выложил
http://distrib.fopf.mipt.ru/distupdate-0.01_alpha.tar.gz
из-за кривости запускать так:
1. распаковать в одну директорию
2. создать в mysql пользователя и базу, или ипользовать существующих
3. прописать изменения в defs.py
4. добавить таблицы в базу из default.sql
5. запускать можно только из этой директории.
6. Запустить
Вначале лучше для одно группы попробовать. Он сначала несколько минут вычисляет, что скачать надо для всех портежей.
База используется для хранения зеркал, сбора статистики и для удаления старых дистфайлов (с помощью базы и индексов намного быстрее получается :))