update-world
Полезные советы
Простейший путь обновления своей системы
Без сомненья, одна из лучших возможностей Gentoo — это его система управления пакетами, Portage. С помощью Portage очень легко обновить всю вашу систему одной командой. Но как это ни печально, все может пройти не так гладко, как хотелось бы. Практически каждый пользователь Gentoo, напечатав emerge -uD world и уйдя спать, мечтет проснуться утром с системой с иголочки. К сожалению, более вероятно, проснувшись, обнаружить emerge, споткнувшийся на третьем пакете из 220. И начинается борьба с проблемами и процесс emerge --resume.
Введите update-world, чтобы сэкономить день. Update-world — это сценарий bash, недавно созданный count_zero и выложенный на форумах. Сценарий управляет ходом обновления и заставляет portage пропускать неудачные сборки, продолжая собирать пакеты, пока список обновлений не закончится. Неудачные сборки добавляются в список, который можно просмотреть, когда процесс обновления завершится.
Примечание: Сценарий зависит от команды equery, входящей в пакет app-portage/gentoolkit.
Безусловно, прежде чем запустить сценарий, его нужно скачать, записать в пределах видимости из $PATH и сделать исполняемым.
Листинг 3.1: Получение сценария
# wget -O /usr/bin/update-world http://countzero.amidal.com/files/update-world
# chmod +x /usr/bin/update-world
Теперь мы сможем использовать сценарий.
Листинг 3.2: Запуск update-world
# update-world --prepare
Так, с создания списка пакетов для установки, порождаемого emerge -uD --newuse world, начинается процесс установки. (Или же, вы можете использовать update-world --empty, чтобы создать список всех пакетов в системе, подобно emerge -e world). Эта команда создает список с именем 'emergelist' в ~/.update-world/. Теперь вы можете в помощью любимого редактора изменить его, как нравится — удалить пакеты, изменить версии и так далее. Закончив с emergelist, можете приступать к следующему этапу:
Листинг 3.3: Запуск update-world (продолжение)
# update-world --install
Фактически эта команда начинает процесс сборки, как если бы вы ввели emerge -uD world. Отличие заключается в том, что если пакет не соберется по той или иной причине — он будет добавлен в список 'failedlist' в ~/.update-world/. Также в ~/.update-world/[дата]/log/ создается ссылка на журнал portage этого пакета (обычно находящийся в /var/log/portage). Как только процесс завершится, у вас сразу будет полный список сбойных пакетов, что сэкономит массу времени. Если понадобится остановить процесс, просто нажмите 'Control-C', чтобы прервать его. Процесс обновления можно перезапускать с того же места, где он был остановлен, вводом команды update-world --install.
http://www.gentoo.org/news/ru/gwn/20061204-newsletter.xml
http://forums.gentoo.org/viewtopic-t-497125.html
- Для комментирования войдите или зарегистрируйтесь