[ ] [ ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ ]

Информация о выпуске Debian GNU/Linux 3.1 (`sarge') для архитектуры Alpha
4 - Upgrades from previous releases


4.1 Preparing for the upgrade

Перед обновлением настоятельно рекомендуется сделать резервную копию всей системы или, по крайней мере, всех данных и настроек, которые вы не хотите потерять. Инструменты для обновления и сам процесс достаточно надёжны, но сбой аппаратного обеспечения в ходе обновления может привести к серьёзному повреждению системы.

В первую очередь необходимо сохранить резервные копии содержимого каталогов /etc и /var/lib/dpkg, а также вывод команды dpkg --get-selections \*.

It's wise to inform all users in advance of any upgrades you're planning, although users accessing your system via SSH (at least) shouldn't notice much during the upgrade, and may want to continue working. If you wish to take extra precautions, back up or unmount user's partitions (/home) before upgrading. A reboot will not normally be necessary, unless you plan to also upgrade your kernel.

Обновление дистрибутива возможно как с локальной консоли (или подключённого напрямую последовательного терминала), так и удалённо через канал ssh.

Внимание! Ни в коем случае не обновляйте систему через telnet, rlogin, rsh или из графического сеанса под управлением xdm, gdm, kdm и т.д., запущенного на обновляемой системе. Это связано с тем, что все эти серверы могут быть перезапущены при обновлении, что может привести к недоступности системы, обновлённой только наполовину.

Производить обновление рекомендуется с помощью apritude, как описано в данном документе. Встроенный анализ зависимостей делает процесс обновления достаточно лёгким и простым.

Установка любого пакета должна производиться с привилегиями суперпользователя. Поэтому вы должны либо войти в систему под именем суперпользователя (root), либо использовать программы su или sudo.

First the aptitude package needs to be installed. This is done with:

     apt-get install aptitude

Provided that you have a working APT configuration this will install the woody version of aptitude.


4.1.1 Disabling APT pinning

If you have configured APT to install certain packages from a distribution other than stable (e.g. from testing), you may have to change your APT pinning configuration (stored in /etc/apt/preferences) to allow the upgrade of packages to the versions in the new stable release. Further information on APT pinning can be found in apt_preferences(5).


4.1.2 Checking packages status

Regardless of the method used for upgrading, it is recommended that you check the status of all packages first, and verify that all packages are in an upgradable state. The following command will show any packages which have a status of Half-Installed or Failed-Config, and those with any error status.

     # dpkg --audit

You could also inspect the state of all packages on your system using dselect, aptitude, or with commands such as

     # dpkg -l | pager

or

     # dpkg --get-selections > ~/curr-pkgs.txt

It is desirable to remove any holds before upgrading. If any package that is essential for the upgrade is on hold, the upgrade will fail. You can identify packages on hold with

     # dpkg --audit

If you changed and recompiled a package locally, and didn't rename it or put an epoch in the version, you must put it on hold to prevent it from being upgraded. The `hold' package state can be changed by using aptitude. With

     aptitude hold | unhold <package>

4.2 Preparing sources for APT

Перед началом процесса обновления вы должны настроить файл конфигурации apt /etc/apt/sources.list.

Программа apt при запросе на установку пакета установит наивысшую версию пакета из тех, которые можно найти в источниках, соответствующих строкам deb этого файла. При равных версиях приоритет будут иметь строки, находящиеся в файле выше (таким образом, в случае использования нескольких зеркал обычно лучше первым указать каталог на локальном жёстком диске, затем компакт-диск и, наконец, зеркала HTTP/FTP).


4.2.1 Adding APT Internet sources

Конфигурация по умолчанию позволяет произвести установку с главных серверов Debian, но вы можете изменить файл /etc/apt/sources.list и использовать другие зеркала. Лучше использовать ближайшее к вам (в смысле скорости передачи данных) зеркало.

Адреса HTTP- и FTP-зеркал Debian можно найти по адресу http://www.debian.org/distrib/ftplist (см. раздел "Полный список зеркал"). HTTP-зеркала обычно быстрее, чем FTP.

For example, suppose your closest Debian mirror is http://mirrors.kernel.org/debian/. When inspecting that mirror with a web browser or FTP program, you will notice that the main directories are organized like this:

     http://mirrors.kernel.org/debian/dists/stable/main/binary-alpha/...
     http://mirrors.kernel.org/debian/dists/stable/contrib/binary-alpha/...

To use this mirror with apt, you add this line to your sources.list file:

     deb http://mirrors.kernel.org/debian sarge main contrib

Обратите внимание на то, что `dists' добавляется автоматически, а параметры после имени выпуска используются для дополнения сетевого пути до реальных каталогов.

После того, как вы добавили новый источник, отключите присутствовавшие ранее в файле sources.list строки deb, поставив в начале каждой строки знак диеза (#).

Все пакеты, требуемые для установки, после загрузки из сети размещаются в каталоге /var/cache/apt/archives (во время загрузки -- в подкаталоге partial/), поэтому перед началом установки вы должны убедиться в том, что там достаточно места. Для обычной установки понадобится приблизительно 300МБ дискового пространства.


4.2.2 Adding APT sources for a local mirror

Instead of using HTTP or FTP packages mirrors, you may wish to modify /etc/apt/sources.list to use a mirror on a local disk (possibly mounted over NFS).

For example, your packages mirror may be under /var/ftp/debian/, and have main directories like this:

     /var/ftp/debian/dists/stable/main/binary-alpha/...
     /var/ftp/debian/dists/stable/contrib/binary-alpha/...

To use this with apt, add this line to your sources.list file:

     deb file:/var/ftp/debian stable main contrib

Обратите внимание на то, что `dists' добавляется автоматически, а параметры после имени выпуска используются для дополнения сетевого пути до реальных каталогов.

После того, как вы добавили новый источник, отключите присутствовавшие ранее в файле sources.list строки deb, поставив в начале каждой строки знак диеза (#).


4.2.3 Adding APT source from CD-ROM

Если вы хотите использовать только компакт-диски, закомментируйте все присутствующие в файле /etc/apt/sources.list строки deb, поставив в начале каждой строки знак диеза (#).

Make sure there is a line in /etc/fstab that enables mounting your CD-ROM drive at the /cdrom mount point (the exact /cdrom mount point is required for apt-cdrom). For example, if /dev/hdc is your CD-ROM drive, /etc/fstab should contain a line like:

     /dev/hdc /cdrom auto defaults,noauto,ro 0 0

Обратите внимание на то, что между словами defaults,noauto,ro в четвёртом поле строки не должно быть пробелов.

To verify it works, insert a CD and try running

     mount /cdrom   # this will mount the CD to the mount point
     ls -alF /cdrom # this should show the CD's root directory
     umount /cdrom  # this will unmount the CD

Next, run:

     apt-cdrom add

for each Debian Binary CD-ROM you have, to add the data about each CD to APT's database.


4.3 Обновление пакетов

Для обновления Debian GNU/Linux до нового выпуска рекомендуется использовать программу управления пакетами aptitude. Этот инструмент принимает более безопасные решения об установке пакетов, чем при непосредственном запуске apt-get.

Don't forget to mount all needed partitions (notably the root and /usr partitions) read-write, with a command like:

     mount -o remount,rw /mountpoint

После этого убедитесь в том, что источники, указанные в файле /etc/apt/sources.list, ссылаются на стабильный (stable) дистрибутив и не ссылаются на дистрибутив по кодовому имени (например, woody).

It is strongly recommended that you use the /usr/bin/script program to record a transcript of the upgrade session. Then if a problem occurs, you will have a log of what happened, and if needed, can provide exact information in a bug report. To start the recording, type:

     script -a ~/upgrade-to-sarge.typescript

or similar. Do not put the typescript file in a temporary directory such as /tmp or /var/tmp (files in those directories may be deleted during the upgrade or during any restart).

Сначала программе aptitude нужен список новых и обновлённых пакетов нового выпуска. Его можно получить командой

     aptitude update

Once aptitude has information on all the available packages, the system is almost ready to be fully upgraded. First however the doc-base package must be upgraded if it is installed. You can find out if it is installed using:

     dpkg -l doc-base

Если первая буква в напечатанной строке - "i", то пакет установлен и должен быть обновлён в первую очередь.

     aptitude install doc-base

Теперь можно приступить собственно к обновлению. Выполните команду

     aptitude -f --with-recommends dist-upgrade

Эта команда произведёт полное обновление системы, т.е. установку последних доступных версий всех пакетов и разрешение всех изменившихся между выпусками зависимостей. При необходимости она установит новые пакеты (обычно это новые версии библиотек или переименованные пакеты) и удалит все вызывающие конфликты устаревшие пакеты (такие как console-tools-libs).

При обновлении с набора компакт-дисков система несколько раз попросит вас вставить в привод соответствующий диск. Возможно, вам придётся вставлять один диск по нескольку раз, это вызвано тем, что взаимосвязанные пакеты могут находится на разных дисках.

New versions of currently installed packages that cannot be upgraded without changing the install status of another package will be left at their current version (displayed as "held back"). This can be resolved by either using aptitude to choose these packages for installation or by trying aptitude -f install package.

Параметр --fix-broken (или просто -f) приведёт к тому, что apt будет пытаться сразу исправлять нарушенные зависимости. Система apt не позволяет, чтобы какие-либо зависимости в системе были не удовлетворены.


4.3.1 Possible issues during upgrade

If an operation using aptitude, apt-get or dpkg fails with the error

     E: Dynamic MMap ran out of room

the default cache space is insufficient. You can solve this by either removing or commenting lines you don't need in /etc/apt/sources.list or by increasing the cache size. The cache size can be increased by setting APT::Cache-Limit in /etc/apt/apt.conf. The following command will set it to a value that should be sufficient for the upgrade:

     echo 'APT::Cache-Limit "12500000";' >> /etc/apt/apt.conf

This assumes that you do not yet have this variable set in that file.

Иногда необходимо активизировать параметр APT::Force-LoopBreak, чтобы разрешить временное удаление пакета первой необходимости при возникновении циклической зависимости типа конфликт/требование предварительной установки. Программа aptitude сообщит об этом и прекратит обновление. Чтобы решить эту проблему, следует указать в командной строке aptitude параметр -o APT::Force-LoopBreak=1.

It is possible that a system's dependency structure can be so corrupt as to require manual intervention. Usually this means using aptitude or

     dpkg --remove packagename

to eliminate some of the offending packages, or

     aptitude --fix-broken install
     dpkg --configure --pending

In extreme cases you might have to force re-installation with a command like

     dpkg --install /path/to/packagename.deb

After fixing things up, you should be able to resume the upgrade by repeating the previously described aptitude commands.

During the upgrade, you will be asked questions regarding the configuration or re-configuration of several packages. When you are asked if any file in the /etc/init.d or /etc/terminfo directories, or the /etc/manpath.config file should be replaced by the package maintainer's version, it's usually necessary to answer `yes' to ensure system consistency. You can always revert to the old versions, since they will be saved with a .dpkg-old extension.

Если вы не уверены в том, что нужно делать, запишите имя пакета или файла и разберитесь с проблемой позднее. Информацию, выводившуюся на экран во время обновления, вы сможете найти в файле транскрипта.


4.3.2 Перед перезагрузкой

Когда команда aptitude dist-upgrade закончила работу, формально обновление завершено, но перед перезагрузкой следует проделать ещё несколько действий.

Read /usr/share/doc/xfree86-common/README.Debian-upgrade.gz for more info on the upgrade of the X window system packages. This is relevant for users of all previous Debian releases. In short, you need to read it.


4.3.2.1 Обновление ядра

Note that the Linux kernel was not upgraded by these procedures. You may wish to do so yourself, either by installing one of the kernel-image-* packages or by compiling a customized kernel from sources.

Debian GNU/Linux поставляется с ядром 2.4.27 из серии 2.4, старой стабильной серии ядер. Возможно, вы захотите использовать ядро серии 2.6, лучше поддерживающее различные устройства и обладающее улучшенной производительностью.

Мы настоятельно не рекомендуем вам менять ядро одновременно с обновлением всей системы woody на sarge. Некоторые проблемы перехода на ядро 2.6 описаны в разделе Upgrading to a 2.6 kernel, 5.2.

To upgrade your kernel you must first choose the kernel most appropriate for your subarchitecture. A list of kernels available for you to install can be found with:

     apt-cache search ^kernel-image

You should then use aptitude install to install it. Once this new kernel is installed you should reboot at the next available opportunity to get the benefit.

Следует заметить, что сиcтема установки woody и более старых выпусков не устанавливала ядро в качестве пакета в вашу систему. В sarge ситуация изменилась, теперь вы можете устанавливать псевдопакеты чтобы отслеживать смену ядер. Эти пакеты будут иметь имена вида kernel-image-ВЕРСИЯ-АРХИТЕКТУРА, где ВЕРСИЯ - номер версии ядра (2.4 или 2.6), а АРХИТЕКТУРА - любая из поддерживаемых архитектур.

For the more adventurous there is an easy way to compile your own custom kernel on Debian GNU/Linux. Install the kernel-package tool and read the documentation in /usr/share/doc/kernel-package.


4.4 Устаревшие пакеты

Вместе с появлением девяти тысяч новых пакетов, более двух тысяч пакетов из состава woody с появлением sarge устаревают. Устаревшие пакеты не влючены в sarge и не больше будут обновляться. Ничто не мешает вам продолжить пользоваться этими пакетами, но приблизительно через год [1] после выхода sarge команда безопасности прекратит выпускать для них исправления. Мы рекомендуем перейти на использование альтернативных пакетов, если есть такая возможность.

Пакет может быть удалён из дистрибутива по многим причинам: разработка программы прекращена, пакет не интересен никому из разработчиков Debian, программа вытеснена другой, более функциональной (другой версии или от других разработчиков). Возможно, пакет содержит ошибки, из-за которых пока не может быть включён в sarge, в этом случае пакет всё-таки доступен в нестабильном ("unstable") дистрибутиве.

Detecting which packages in an updated system are "obsolete" is easy since the package management front-ends will mark them as such. If you are using aptitude, you will see a listing of these packages in the "Obsolete and Locally Created Packages" entry. dselect provides a similar section but the listing it presents might differ. Also, if you have used aptitude to manually install packages in woody it will have kept track of those packages you manually installed and will be able to mark as obsolete those packages pulled in by dependencies alone which are no longer needed if a package has been removed. Also, aptitude, unlike deborphan will not mark as obsolete packages that you manually installed, as opposed to those that were automaticaly installed through dependancies.

Существуют и другие инструменты для определения неиспользуемых пакетов, в их число входят deborphan, debfoster и cruft. Советуем использовать deborphan, хотя по умолчанию он ищет только ненужные библиотеки (пакеты в секциях "libs" и "oldlibs", от которых не зависит ни один другой пакет). Не удаляйте подряд все пакеты, найденные такими инструментами (в особенностиесли при запуске вы указали опции, отличные от опций по умолчанию), чтобы не удалить чего-нибуть нужного. Настоятельно рекомендуем перед удалением внимательно просмотреть список предложенных пакетов (прочесть описание, посмотреть входящие файлы).

В системе отслеживания ошибок Debian зачастую содержится дополнительная информация о причинах удаления пакета. Просмотрите архив сообщений об ошибках для интересуещего вас пакета и для псевдо-пакета ftp.debian.orge


4.4.1 Пакеты-пустышки

Многие пакеты из woody в sarge были поделены на несколько разных пакетов, чаще всего чтобы облегчить поддержку системы. Для простоты обновления в состав sarge нередко входит пакет-"пустышка" (пустой пакет с именем старого пакета из woody). Такой пакет при установке устанавливает новые пакетов, от которых зависит. Сразу же после установки "пустышки" становятся неиспользуемыми и их можно спокойно удалять.

В описании большинства (но не всех) пакетов-пустышек ясно указано их предназначение. К сожалению, никаких правил для описания пустышек нет, поэтому для их обнаружения вам пожет пригодиться deborphan с опцией --guess. Некоторые пустышки удалять после обновления не нужно, так как они впоследствии используются для определения установленной версии программы.


[ ] [ ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ ]

Информация о выпуске Debian GNU/Linux 3.1 (`sarge') для архитектуры Alpha

$Id: ch-upgrading.ru.html,v 1.1 2005/05/26 14:15:55 pronik-guest Exp $

Josip Rodin, Bob Hilliard, Adam Di Carlo, Anne Bezemer, Rob Bradford (current)
debian-doc@lists.debian.org