Як зробити dpkg швидше?


17

Установка пакунків (не) в системі Debian жахливо повільна, почасти тому, що вона працює з цілим набором (невеликих) файлів. Якщо не отримати швидшого зберігання, як це пришвидшити? Я думаю, можливо, завантажую деякий каталог із швидким доступом до оперативної пам'яті як одне рішення, але як це зробити? Чи є краще рішення?


Яка файлова система та скільки пакунків у вас є? Для великих каталогів, ext3 або вище з dir_indexопцією, або Reiser, це суттєве поліпшення порівняно з ext2 або ext3 без dir_index.
Жил "ТАК - перестань бути злим"

@Gilles Я використовую ext4 і встановлено ~ 1400 пакунків.
thepang

Відповіді:


17

Для цього рішення вам знадобиться версія dpkg принаймні 1.15.8.6.

Оскільки ця версія dpkg, існує нова force-unsafe-ioопція, яка відключатиме dpkg від виклику sync () тощо) між кожним пакетом. Ви можете додати цю опцію до конфігурації в / etc / dpkg, щоб вона завжди діяла.

Якщо у вас є старша версія dpkg, ви можете альтернативно використовувати eatmydata .

І пам’ятайте, що обидва ці рішення небезпечні і, ймовірно, призведуть до втрати даних, якщо буде відключено живлення під час або незабаром після запуску dpkg.


Отже, я просто додаю force-unsafe-ioдо /etc/dpkg/dpkg.cfg , і це все?
thepang

1
Наразі у мене немає робочого вікна Linux (збій PSU), але він echo "force-unsafe-io" > /etc/dpkg/dpkg.cfg.d/force-unsafe-ioповинен працювати. Або ви можете додати його до основного файлу конфігурації dpkg, який, на мою думку, є /etc/dpkg/dpkg.cfg .
Arrowmaster

3
Я засік і без цієї опції, і не було НЕ помітних змін в продуктивності.
thepang

Ви спробували це з етмідатами? Крім того, коли я почав використовувати сильно небезпечний варіант у моїх pbuilder chroots, я пам'ятаю дуже помітну різницю.
Arrowmaster

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.