predator 30.08.2010 01:24

Gentoo LinuxТюнинг portage

Для ускорения процесса резрешения зависимостей можно научить portage работать с SQLite

1. Пакет dev-lang/python должен быть собран с USE флагом sqlite
2. Создаём файл /etc/portage/modules, если он ещё не создан и добавляем в него строку
1
portdbapi.auxdbmodule=cache.sqlite.database


3. Если используете версию portage новее чем 2.1.6.4 то в make.conf к FEATURES добавляем через пробел metadata-transfer
1
FEATURES="parallel-fetch metadata-transfer"


4. Пересоздаём кэш
1
rm -rf /var/cache/edb/dep && emerge --metadata


5. Если хотите что бы eix тоже использовал sqlite то его тоже надо пересобрать с USE флагом sqlite
6. Для того чтобы eix использовал sqlite и для оверлеев добавляем в /etc/eixrc строки
1
PORTDIR_CACHE_METHOD='sqlite'


1
OVERLAY_CACHE_METHOD='sqlite'


7. Пересоздаём кэш eix
1
eix-update




<1> "parallel-fetch" – загрузка пакетов параллельно со сборкой – позволяет не прерывать процесс сборки на загрузку. В случае большого количества больших пакетов и/или медленного соединения, помогает сократить общее время сборки мира.


Тэги: eix Gentoo portage sqlite
+ 3 -
Похожие Поделиться

cppmm 30.08.2010 01:42 #
Спасибо. Узнал несколько новых фич.
devl547 30.08.2010 02:06 #
1. Копипаста
2. Даже двойная копипаста с gentoo-wiki
3. На лоре недавно обсуждение было, по тестам sqlite слил обычныму режиму.
predator 30.08.2010 02:15 #
1. Для этого и сделан пост-ссылка
2. -> 1
3. пруф?
devl547 30.08.2010 18:53 #
еще:

OVERLAY_CACHE_METHOD='sqlite'


В 95% случаев не заработает, так как в оверлеях не будет metadata.
haku 30.08.2010 02:19 #
хм,
# emerge -metadata
!!! '-metadata' is not a valid package atom.
!!! Please check ebuild(5) for full details.
наверно имелось ввиду
# emerge --metadata
silent 30.08.2010 08:43 #
пробовал, это не быстрее.
и вообще eix и так довольно быстро все ищет, куда уж еще. не нравится - посмотрите как быстро работают пакетные менеджеры в случае поиска в других дистрибутивах ;)
blackraven 30.08.2010 10:30 #
В арче yaourt ищет в разы быстрее emerge - инфа 100%
silent 30.08.2010 10:32 #
быстрее emerge, но гораздо медленнее чем eix
blackraven 30.08.2010 12:38 #
Пруф в студию?
silent 30.08.2010 12:46 #
нет арча под рукой, когда был - я очень сильно раздражался его поиску после многолетнего пользования eix.
blackraven 30.08.2010 14:48 #
Хм. У меня даже поиск по AUR быстро работает. А он по определению должен быть медленнее поиска по локальной базе.
NickNill 31.08.2010 01:47 #
а я только что попробовал - быстрее в 2\3 раза. ЧЯДНТ?
silent 31.08.2010 02:07 #
сокращения уебанские используешь. что пробовал?
silent 30.08.2010 10:33 #
по-моему, parallel-fetch уже по-дефолту всюду включен, я уже не помню когда последний раз его куда-то прописывал - все и так параллельно качается.
vovan888 30.08.2010 12:48 #
Тоже пробовал - sqlite backend медленнее обычного. eix ищет и так быстро.
predator 30.08.2010 13:20 #
Для ускорения процесса резрешения зависимостей
silent 30.08.2010 14:58 #
зависимости разрешает emerge, а не eix. статью же вы написали про то, как eix перевести на sqlite, а не emerge.
predator 30.08.2010 15:00 #
Вы вообще читали что там написано?
silent 30.08.2010 15:11 #
чорт, каюсь и прошу прощения.

в любом случае так тоже быстрее не становится, по крайней мере на глаз.
NickNill 02.09.2010 21:33 #
минус в sqlite + portage в том, что portato не работает с ними. Да, я признаю что я сильно ленивый прописывать в ручную USE флаги =)
megabaks 14.09.2010 00:34 #
вообще то скулы в базе дают наибольший профит при повторном подсчёте (т.е. не первый после синка)