06aa499c65
- update to 7.0.5
637 lines
36 KiB
XML
637 lines
36 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
||
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
||
|
||
<part id="install-packages-advanced">
|
||
|
||
<title id="install-packages-advanced.title">Установка пакетов для опытных пользователей</title>
|
||
|
||
<preface>
|
||
|
||
<title>Введение</title>
|
||
|
||
<para>
|
||
В современных системах на базе Linux существует огромное число общих ресурсов:
|
||
разделяемых библиотек, содержащих стандартные функции, исполняемые файлы,
|
||
сценарии и стандартные утилиты и т.д. Этими общими ресурсами пользуются сразу
|
||
несколько программ. Удаление или изменение версии одного из составляющих
|
||
систему компонентов может повлечь неработоспособность других, связанных с ним
|
||
компонентов, или может привести к выводу из строя всей системы. В контексте
|
||
системного администрирования проблемы такого рода называют нарушением
|
||
<emphasis>целостности системы</emphasis>. Задача администратора — обеспечить
|
||
наличие в системе согласованных версий всех необходимых программных компонентов
|
||
(обеспечение целостности системы).
|
||
</para>
|
||
|
||
<para>
|
||
Для установки, удаления и обновления программ, а также поддержания целостности
|
||
системы в Linux в первую очередь стали использоваться программы
|
||
<emphasis>менеджеры пакетов</emphasis> (например, такие, как
|
||
<application>rpm</application>). С точки зрения менеджера пакетов программное
|
||
обеспечение представляет собой набор компонентов — программных
|
||
<emphasis>пакетов</emphasis>. Пакеты содержат в себе набор исполняемых программ
|
||
и вспомогательных файлов, необходимых для корректной работы программного
|
||
обеспечения. Менеджеры пакетов облегчают установку программ: они позволяют
|
||
проверить наличие необходимого для работы устанавливаемой программы компонента
|
||
подходящей версии непосредственно в момент установки. Менеджеры пакетов
|
||
производят необходимые процедуры для регистрации программы во всех операционных
|
||
средах пользователя: сразу после установки программа становится доступна
|
||
пользователю из командной строки и появляется, если это было предусмотрено, в
|
||
меню приложений всех графических оболочек.
|
||
</para>
|
||
|
||
<para>
|
||
Часто компоненты, используемые различными программами, выделяют в отдельные
|
||
пакеты и помечают, что для работы ПО, предоставляемого пакетом A, необходимо
|
||
установить пакет B. В таком случае говорят, что пакет A
|
||
<emphasis>зависит</emphasis> от пакета B или между пакетами A и B существует
|
||
<emphasis>зависимость</emphasis>.
|
||
</para>
|
||
|
||
<para>
|
||
Отслеживание зависимостей между такими пакетами представляет собой важную
|
||
задачу для любого дистрибутива. Некоторые компоненты пакетов могут быть
|
||
взаимозаменяемыми, т.е. может обнаружиться несколько пакетов, предлагающих
|
||
затребованный ресурс.
|
||
</para>
|
||
|
||
<para>
|
||
Ещё более сложной является задача контроля целостности и непротиворечивости
|
||
установленного в системе ПО. Представим, что некие программы A и B требуют
|
||
наличия в системе компонентов C версии 1.0. Обновление версии пакета A,
|
||
требующее обновления компонентов C до новой версии (например, до версии
|
||
2.0, использующей новый интерфейс доступа), влечёт за собой обязательное
|
||
обновление и программы B.
|
||
</para>
|
||
|
||
<para>
|
||
На практике менеджеры пакетов оказались неспособны эффективно устранить
|
||
нарушения целостности системы и предотвратить все коллизии при установке или
|
||
удалении программ. Особенно остро этот недостаток сказался на обновлении
|
||
систем из централизованного репозитория, в котором пакеты непрерывно
|
||
обновляются, дробятся на более мелкие и т.п. Именно этот недостаток
|
||
стимулировал создание систем управления программными пакетами и поддержания
|
||
целостности ОС.
|
||
</para>
|
||
|
||
<para>
|
||
Для автоматизации и контроля описанных выше процессов стала применяться
|
||
Усовершенствованная система управления программными пакетами
|
||
<application><acronym>APT</acronym></application> (от англ. Advanced Packaging
|
||
Tool). Автоматизация и контроль достигаются путём создания одного или
|
||
нескольких внешних репозиториев. В них хранятся доступные для установки пакеты
|
||
программ.
|
||
</para>
|
||
|
||
<para>
|
||
В распоряжении <application>APT</application> находятся две базы данных: одна
|
||
описывает установленные в системе пакеты, вторая — внешний репозиторий.
|
||
<application>APT</application> отслеживает целостность установленной системы и,
|
||
в случае обнаружения противоречий в зависимостях пакетов, разрешает конфликты,
|
||
находит пути их корректного устранения, руководствуясь сведениями из внешних
|
||
репозиториев.
|
||
</para>
|
||
|
||
<para>
|
||
Система <application>APT</application> состоит из нескольких утилит. Чаще всего
|
||
используется утилита управления пакетами <command>apt-get</command>. Она
|
||
автоматически определяет зависимости между пакетами и строго следит за её
|
||
соблюдением при выполнении любой из следующих операций: установка, удаление или
|
||
обновление пакетов.
|
||
</para>
|
||
|
||
</preface>
|
||
|
||
<chapter>
|
||
|
||
<title>Источники программ (репозитории)</title>
|
||
|
||
<para>
|
||
Отличие репозиториев, с которыми работает <application>APT</application>,
|
||
от простого набора пакетов —
|
||
наличие метаинформации. В ней содержится индекс находящихся в репозитории
|
||
пакетов и сведения о них. Поэтому, чтобы получить всю информацию о репозитории,
|
||
<application>APT</application> достаточно получить его индексы.
|
||
</para>
|
||
|
||
<para>
|
||
<application>APT</application> может пользоваться любым количеством
|
||
репозиториев одновременно, формируя единую информационную базу обо всех
|
||
содержащихся в них пакетах. При установке пакетов
|
||
<application>APT</application> обращает внимание только на название пакета, его
|
||
версию и зависимости. Для <application>APT</application> не имеет значения
|
||
расположение пакета в том или ином репозитории.
|
||
</para>
|
||
|
||
<important>
|
||
<para>
|
||
Для одновременного подключения нескольких репозиториев необходимо отслеживать
|
||
их совместимость друг с другом, т.е. их пакетная база должна отражать один
|
||
определённый этап разработки. Совместное использование репозиториев, относящихся
|
||
к разным дистрибутивам, или смешивание стабильного репозитория с нестабильной
|
||
веткой разработки (Sisyphus) может привести к различными неожиданностям и
|
||
трудностям при обновлении пакетов.
|
||
</para>
|
||
</important>
|
||
|
||
<para>
|
||
<application>APT</application> осуществляет взаимодействие с репозиториями при
|
||
помощи различных протоколов доступа. Наиболее популярные —
|
||
<acronym>HTTP</acronym> и <acronym>FTP</acronym>.
|
||
</para>
|
||
|
||
<para>
|
||
Для того чтобы <application>APT</application> мог использовать тот или иной
|
||
репозиторий, информацию о нём необходимо поместить в файл
|
||
<filename>/etc/apt/sources.list</filename>, либо в любой файл <filename
|
||
class="extension">.list</filename> (например,
|
||
<filename><replaceable>mysources</replaceable>.list</filename>) в каталоге
|
||
<filename class="directory">/etc/apt/sources.list.d/</filename>. Описания
|
||
репозиториев заносятся в эти файлы в следующем виде:
|
||
|
||
<programlisting>
|
||
<![CDATA[rpm [подпись] метод:путь база название
|
||
rpm-src [подпись] метод:путь база название]]>
|
||
</programlisting>
|
||
|
||
Здесь:
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>
|
||
rpm или rpm-src — тип репозитория (скомпилированные программы или исходные тексты);
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
[подпись] — необязательная строка-указатель на электронную подпись
|
||
разработчиков. Наличие этого поля подразумевает, что каждый пакет из данного
|
||
репозитория должен быть подписан соответствующей электронной подписью. Подписи
|
||
описываются в файле <filename>/etc/apt/vendor.list</filename>;
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
метод — способ доступа к репозиторию: ftp, http, file, rsh, ssh, cdrom, copy;
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
путь — путь к репозиторию в терминах выбранного метода;
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
база — относительный путь к базе данных репозитория;
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
название — название репозитория.
|
||
</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
</para>
|
||
|
||
<para>
|
||
Для добавления в <filename>sources.list</filename> репозитория на компакт-диске
|
||
в <application>APT</application> предусмотрена специальная утилита —
|
||
<command>apt-cdrom</command>. Чтобы добавить запись о репозитории на компакт-диске,
|
||
достаточно вставить диск в привод и выполнить команду <command>apt-cdrom
|
||
<option>add</option></command>. После этого в <filename>sources.list</filename>
|
||
появится запись о подключённом диске примерно такого вида:
|
||
|
||
<programlisting>
|
||
<![CDATA[rpm cdrom:[ALT Linux 7.0.0 Centaurus (Pholus) x86_64]/ ALTLinux main]]>
|
||
</programlisting>
|
||
|
||
</para>
|
||
|
||
<para>
|
||
После того как отредактирован список репозиториев в
|
||
<filename>sources.list</filename>, необходимо обновить локальную базу данных
|
||
<application>APT</application> о доступных пакетах. Это делается командой
|
||
<command>apt-get <option>update</option></command>.
|
||
</para>
|
||
|
||
<para>
|
||
Если в <filename>sources.list</filename> присутствует репозиторий, содержимое
|
||
которого может изменяться (например, постоянно разрабатываемый репозиторий или
|
||
репозиторий обновлений по безопасности), то прежде чем работать с
|
||
<application>APT</application>, необходимо синхронизировать локальную базу
|
||
данных с удалённым сервером командой <command>apt-get
|
||
<option>update</option></command>. Локальная база данных создаётся заново при
|
||
каждом изменении в репозитории: добавлении, удалении или переименовании пакета.
|
||
</para>
|
||
|
||
<para>
|
||
При установке определённого пакета <application>APT</application> производит
|
||
поиск самой новой версии этого пакета во всех известных ему репозиториях вне
|
||
зависимости от способа доступа к ним. Так, если в репозитории, доступном в сети
|
||
Интернет, обнаружена более новая в сравнении с компакт-диском версия программы,
|
||
то <application>APT</application> начнёт загружать соответствующий пакет из
|
||
сети Интернет. Поэтому, если подключение к сети Интернет отсутствует или
|
||
ограничено низкой пропускной способностью канала или высокой стоимостью, то
|
||
следует закомментировать строчки (добавить в начало строки символ #) в
|
||
<filename>/etc/apt/sources.list</filename>, относящиеся к ресурсам в сети
|
||
Интернет.
|
||
</para>
|
||
|
||
</chapter>
|
||
|
||
<chapter>
|
||
|
||
<title>Репозитории ALT Linux</title>
|
||
|
||
<para>
|
||
Все дистрибутивы ALT Linux выпускаются на основе репозитория Sisyphus команды
|
||
ALT Linux Team (<ulink url="http://www.altlinux.org/ALT_Linux_Team.org"/>).
|
||
Sisyphus не является самостоятельным дистрибутивом. Sisyphus — репозиторий,
|
||
отражающий текущее состояние разработки, поэтому он может содержать
|
||
нестабильные версии пакетов. На базе этого проекта выпускаются отдельные
|
||
протестированные «срезы» — дистрибутивы.
|
||
</para>
|
||
|
||
<para>
|
||
В отличие от Sisyphus, ежедневно обновляемого разработчиками, такие срезы
|
||
являются «замороженными» — разработка в них не ведётся, а сами срезы
|
||
сохраняются в целях обеспечения целостности среды дистрибутива.
|
||
</para>
|
||
|
||
<para>
|
||
Непосредственно после установки дистрибутива ALT Linux в
|
||
<filename>/etc/apt/sources.list</filename>, а также в файлах <filename>/etc/apt/sources.list.d/*.list</filename>
|
||
обычно указывается несколько репозиториев:
|
||
|
||
<itemizedlist>
|
||
<listitem>
|
||
<para>
|
||
репозиторий с установочного диска дистрибутива;
|
||
</para>
|
||
</listitem>
|
||
<listitem>
|
||
<para>
|
||
интернет-репозиторий, совместимый с установленным дистрибутивом.
|
||
</para>
|
||
</listitem>
|
||
</itemizedlist>
|
||
|
||
</para>
|
||
|
||
</chapter>
|
||
|
||
<chapter>
|
||
|
||
<title>Добавление репозиториев с использованием терминала</title>
|
||
|
||
<section>
|
||
|
||
<title>apt-repo</title>
|
||
|
||
<para>
|
||
Вы можете воспользоваться скриптом <command>apt-repo</command>. Для этого вам потребуется
|
||
запустить терминал и вводить команды в него.
|
||
Необходимы права администратора для выполнения большинства команд.
|
||
</para>
|
||
|
||
<para>
|
||
Глянуть список активных репозиториев можно командой <command>apt-repo list</command>.
|
||
</para>
|
||
|
||
<para>
|
||
Для добавления репозитория в список активных репозиториев используйте
|
||
<command>apt-repo <option>add <replaceable>репозиторий</replaceable></option></command>.
|
||
</para>
|
||
|
||
<para>
|
||
Для удаления или выключения репозитория используйте
|
||
<command>apt-repo <option>rm <replaceable>репозиторий</replaceable></option></command>.
|
||
</para>
|
||
|
||
<para>
|
||
Для обновления информации о репозиториях выполните
|
||
<command>apt-repo <option>update</option></command>.
|
||
</para>
|
||
|
||
<para>
|
||
Для более подробной справки используйте
|
||
<command>man <option>apt-repo</option></command> или
|
||
<command>apt-repo <option>--help</option></command>.
|
||
</para>
|
||
|
||
</section>
|
||
|
||
<section>
|
||
|
||
<title>Добавление репозиториев вручную</title>
|
||
|
||
<para>
|
||
Вы можете отредактировать в любом текстовом редакторе файлы из папки
|
||
<filename class="directory">/etc/apt/sources.list.d/</filename>. Необходимы
|
||
права администратора для изменения этих файлов. В файле
|
||
<filename><replaceable>alt</replaceable>.list</filename> может содержаться
|
||
такая информация:
|
||
|
||
<programlisting>
|
||
<![CDATA[# ftp.altlinux.org (ALT Linux, Moscow)
|
||
|
||
# ALT Linux Platform 7
|
||
#rpm [p7] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/p7/branch x86_64 classic
|
||
#rpm [p7] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/p7/branch x86_64-i586 classic
|
||
#rpm [p7] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/p7/branch noarch classic
|
||
|
||
rpm [p7] http://ftp.altlinux.org/pub/distributions/ALTLinux/p7/branch x86_64 classic
|
||
rpm [p7] http://ftp.altlinux.org/pub/distributions/ALTLinux/p7/branch x86_64-i586 classic
|
||
rpm [p7] http://ftp.altlinux.org/pub/distributions/ALTLinux/p7/branch noarch classic]]>
|
||
</programlisting>
|
||
|
||
</para>
|
||
|
||
<para>
|
||
По сути, каждая строчка соответствует некому репозиторию. В примере из текста
|
||
выше видно, что перед 3 строчками нету решётки. Именно эти строчки и будут
|
||
выбранными репозиториями. Если вы не хотите пользоваться этими репозиториями,
|
||
просто допишите решётку перед ними. Если вы хотите использовать другие
|
||
репозитории, то вы можете дописать их вниз этого или любого другого файла.
|
||
</para>
|
||
|
||
<para>
|
||
После добавления репозиториев обновите информацию о них: Запустите терминал и
|
||
выполните команду <command>apt-get <option>update</option></command> или
|
||
<command>apt-repo <option>update</option></command>. Необходимы права администратора для
|
||
выполнения этих команд.
|
||
</para>
|
||
|
||
<note>
|
||
<para>
|
||
О добавлении или удалении репозиториев с использованием графических приложений
|
||
вы можете почитать в <link linkend="install-from-external-repo" endterm="install-from-external-repo.title"/>.
|
||
</para>
|
||
</note>
|
||
|
||
</section>
|
||
|
||
</chapter>
|
||
|
||
<chapter>
|
||
|
||
<title>Поиск пакетов</title>
|
||
|
||
<para>
|
||
Если вы не знаете точного названия пакета, то для его поиска можно
|
||
воспользоваться утилитой <command>apt-cache</command>. Данная утилита позволяет
|
||
искать пакет не только по имени, но и по его описанию.
|
||
</para>
|
||
|
||
<para>
|
||
Команда <command>apt-cache <option>search
|
||
<replaceable>подстрока</replaceable></option></command> позволяет найти все
|
||
пакеты, в именах или описании которых присутствует указанная подстрока.
|
||
Например:
|
||
|
||
<screen>$ apt-cache search dictionary
|
||
stardict-wn - GCIDE - The Collaborative International Dictionary of English
|
||
firefox-ru - Russian (RU) Language Pack for Firefox
|
||
gnome-dictionary-applet - GNOME panel applet for gnome-dictionary
|
||
gnome-utils - Utilities for the GNOME 2.0 desktop
|
||
libgdict - GNOME Dictionary Library.
|
||
stardict-mueller7 - V.K. Mueller English-Russian Dictionary, 7 Edition: stardict format
|
||
stardict-slovnyk_be-en - Dictionary: Slovnyk Belarusian-English
|
||
stardict-slovnyk_be-ru - Dictionary: Slovnyk Belarusian-Russian
|
||
stardict-slovnyk_be-uk - Dictionary: Slovnyk Belarusian-Ukrainian
|
||
stardict-slovnyk_cs-ru - Dictionary: Slovnyk Czech-Russian
|
||
stardict-slovnyk_en-be - Dictionary: Slovnyk English-Belarusian
|
||
stardict-slovnyk_en-ru - Dictionary: Slovnyk English-Russian
|
||
stardict-slovnyk_en-uk - Dictionary: Slovnyk English-Ukrainian
|
||
stardict-slovnyk_es-ru - Dictionary: Slovnyk Spanish-Russian
|
||
stardict-slovnyk_ru-be - Dictionary: Slovnyk Russian-Belarusian
|
||
stardict-slovnyk_ru-cs - Dictionary: Slovnyk Russian-Czech
|
||
stardict-slovnyk_ru-en - Dictionary: Slovnyk Russian-English
|
||
stardict-slovnyk_ru-es - Dictionary: Slovnyk Russian-Spanish
|
||
stardict-slovnyk_ru-uk - Dictionary: Slovnyk Russian-Ukrainian
|
||
stardict-slovnyk_uk-be - Dictionary: Slovnyk Ukrainian-Belarusian
|
||
stardict-slovnyk_uk-en - Dictionary: Slovnyk Ukrainian-English
|
||
stardict-slovnyk_uk-ru - Dictionary: Slovnyk Ukrainian-Russian
|
||
words - A dictionary of English words for the /usr/share/dict directory
|
||
</screen>
|
||
|
||
</para>
|
||
|
||
<para>
|
||
Для того чтобы подробнее узнать информацию о найденном пакете и получить его
|
||
подробное описание, воспользуйтесь командой
|
||
<command>apt-cache <option>show</option></command>:
|
||
|
||
<screen>$ apt-cache show stardict-mueller7
|
||
Package: stardict-mueller7
|
||
Section: Text tools
|
||
Installed Size: 3095255
|
||
Maintainer: Anton V. Boyarshinov <boyarsh@altlinux.ru>
|
||
Version: 1.0-alt7
|
||
Pre-Depends: rpmlib(PayloadIsLzma)
|
||
Depends: stardict (>= 2.4.2)
|
||
Provides: stardict-mueller7 (= 1.0-alt7)
|
||
Architecture: noarch
|
||
Size: 3135276
|
||
MD5Sum: ea95c67ca323350b454fbc26533c3548
|
||
Filename: stardict-mueller7-1.0-alt7.noarch.rpm
|
||
Description: V.K. Mueller English-Russian Dictionary, 7 Edition: stardict format
|
||
Electronic version of V.K. Mueller English-Russian Dictionary, 7 Edition
|
||
in stardict format. You can use it with stardict client.
|
||
</screen>
|
||
|
||
</para>
|
||
|
||
<para>
|
||
При поиске с помощью <command>apt-cache</command> можно использовать русскую
|
||
подстроку. В этом случае будут найдены пакеты, имеющие описание на русском
|
||
языке. К сожалению, описание на русском языке в настоящее время есть не у всех
|
||
пакетов, но наиболее актуальные описания переведены.
|
||
</para>
|
||
|
||
</chapter>
|
||
|
||
<chapter>
|
||
|
||
<title>Установка или обновление пакета</title>
|
||
|
||
<para>
|
||
Установка пакета с помощью APT выполняется командой
|
||
<command>
|
||
<prompt># </prompt>apt-get
|
||
<option>install <replaceable>имя_пакета</replaceable></option>
|
||
</command>.
|
||
</para>
|
||
|
||
<important>
|
||
<para>
|
||
Для установки пакетов требуются привилегии администратора.
|
||
</para>
|
||
</important>
|
||
|
||
<para>
|
||
<command>apt-get</command> позволяет устанавливать в систему пакеты, требующие
|
||
для работы наличие других, пока ещё не установленных пакетов. В этом случае он
|
||
определяет, какие пакеты необходимо установить. <command>apt-get</command>
|
||
устанавливает их, пользуясь всеми доступными репозиториями.
|
||
</para>
|
||
|
||
<para>
|
||
Установка пакета <emphasis>stardict-mueller7</emphasis> командой
|
||
<command>apt-get <option>install stardict-mueller7</option></command>
|
||
приведёт к следующему диалогу с <application>APT</application>:
|
||
|
||
<screen># apt-get install stardict-mueller7
|
||
Чтение списков пакетов... Завершено
|
||
Построение дерева зависимостей... Завершено
|
||
Следующие НОВЫЕ пакеты будут установлены:
|
||
stardict-mueller7
|
||
0 будет обновлено, 1 новых установлено, 0 пакетов будет удалено и 0 не будет обновлено.
|
||
Необходимо получить 0B/3135kB архивов.
|
||
После распаковки потребуется дополнительно 3095kB дискового пространства.
|
||
Совершаем изменения...
|
||
Preparing... ####################### [100%]
|
||
1: stardict-mueller7 ####################### [100%]
|
||
Running /usr/lib/rpm/posttrans-filetriggers
|
||
Завершено.
|
||
</screen>
|
||
|
||
</para>
|
||
|
||
<para>
|
||
Команда
|
||
<command>
|
||
apt-get <option>install <replaceable>имя_пакета</replaceable></option>
|
||
</command>
|
||
используется также и для обновления уже установленного пакета или группы
|
||
пакетов. В этом случае <command>apt-get</command> дополнительно проверяет, есть
|
||
ли обновлённая, в сравнении с установленной в системе, версия пакета в
|
||
репозитории.
|
||
</para>
|
||
|
||
<para>
|
||
При помощи <application>APT</application> можно установить и отдельный rpm-
|
||
пакет, не входящий в состав репозиториев (например, полученный из сети
|
||
Интернет). Для этого достаточно выполнить команду
|
||
<command>
|
||
apt-get <option>install
|
||
<filename><replaceable>/путь/к/файлу.rpm</replaceable></filename>
|
||
</option>
|
||
</command>.
|
||
При этом <application>APT</application> проведёт стандартную процедуру проверки
|
||
зависимостей и конфликтов с уже установленными пакетами.
|
||
</para>
|
||
|
||
<para>
|
||
Иногда в результате операций с пакетами без использования
|
||
<application>APT</application> целостность системы нарушается, и
|
||
<command>apt-get</command> отказывается выполнять операции установки, удаления или
|
||
обновления. В этом случае необходимо повторить операцию, задав опцию
|
||
<option>-f</option>, заставляющую <command>apt-get</command> исправить
|
||
нарушенные зависимости, удалить или заменить конфликтующие пакеты. В этом
|
||
случае необходимо внимательно следить за сообщениями, выводимыми
|
||
<command>apt-get</command>. Любые действия в этом режиме обязательно требуют подтверждения
|
||
со стороны пользователя.
|
||
</para>
|
||
|
||
</chapter>
|
||
|
||
<chapter>
|
||
|
||
<title>Удаление установленного пакета</title>
|
||
|
||
<para>
|
||
Для удаления пакета используется команда
|
||
<command>apt-get <option>remove <replaceable>имя_пакета</replaceable></option></command>.
|
||
Для того чтобы не нарушать целостность системы, будут удалены и все пакеты,
|
||
зависящие от удаляемого. В случае удаления пакета, который относится к базовым
|
||
компонентам системы, <command>apt-get</command> потребует дополнительное
|
||
подтверждение с целью предотвращения возможной случайной ошибки.
|
||
</para>
|
||
|
||
<important>
|
||
<para>
|
||
Для удаления пакетов требуются привилегии администратора.
|
||
</para>
|
||
</important>
|
||
|
||
<para>
|
||
При попытке с помощью <command>apt-get</command> удалить базовый компонент
|
||
системы, вы увидите
|
||
следующий запрос на подтверждение операции:
|
||
|
||
<screen># apt-get remove filesystem
|
||
Чтение списков пакетов... Завершено
|
||
Построение дерева зависимостей... Завершено
|
||
Следующие пакеты будут УДАЛЕНЫ:
|
||
...
|
||
ВНИМАНИЕ: Будут удалены важные для работы системы пакеты
|
||
Обычно этого делать не следует. Вы должны точно понимать возможные последствия!
|
||
...
|
||
0 будет обновлено, 0 новых установлено, 2648 пакетов будет удалено и 0 не будет обновлено.
|
||
Необходимо получить 0B архивов.
|
||
После распаковки будет освобождено 8994MB дискового пространства.
|
||
Вы делаете нечто потенциально опасное!
|
||
Введите фразу 'Yes, do as I say!' чтобы продолжить.
|
||
</screen>
|
||
|
||
</para>
|
||
|
||
<para>
|
||
Каждую ситуацию, в которой <application>APT</application> выдаёт такой запрос,
|
||
необходимо рассматривать отдельно. Вероятность того, что после выполнения этой
|
||
команды система окажется неработоспособной, очень велика.
|
||
</para>
|
||
|
||
</chapter>
|
||
|
||
<chapter>
|
||
|
||
<title>Обновление всех установленных пакетов</title>
|
||
|
||
<para>
|
||
Для обновления всех установленных пакетов используется команда
|
||
<command>apt-get <option>dist-upgrade</option></command>.Она позволяет
|
||
обновить только те установленные пакеты, для которых в репозиториях,
|
||
перечисленных в <filename>/etc/apt/sources.list</filename>, имеются новые
|
||
версии.
|
||
</para>
|
||
|
||
<!--
|
||
<para>
|
||
|
||
Никакие другие пакеты при этой операции из системы удалены не будут. Этот
|
||
способ полезен при работе со стабильными пакетами приложений, относительно
|
||
которых известно, что они при смене версии изменяются несущественно.
|
||
|
||
</para>
|
||
<para>
|
||
|
||
Иногда происходит изменение в наименовании пакетов или изменение их
|
||
зависимостей. Такие ситуации не обрабатываются командой `apt-get upgrade`, в
|
||
результате чего происходит нарушение целостности системы: появляются
|
||
неудовлетворённые зависимости. Например, переименование пакета `MySQL-shared`,
|
||
содержащего динамически загружаемые библиотеки для работы с СУБД MySQL, в
|
||
`libMySQL` (отражающая общую тенденцию к наименованию библиотек в дистрибутиве)
|
||
не приводит к тому, что установка обновлённой версии `libMySQL` требует
|
||
удаления старой версии `MySQL-shared`. Для разрешения этой проблемы существует
|
||
режим обновления в масштабе дистрибутива — `apt-get dist-upgrade`.
|
||
|
||
</para>
|
||
-->
|
||
|
||
<para>
|
||
В случае обновления всего дистрибутива <application>APT</application> проведёт
|
||
сравнение системы с репозиторием и удалит устаревшие пакеты, установит новые
|
||
версии присутствующих в системе пакетов, отследит ситуации с переименованиями
|
||
пакетов или изменения зависимостей между старыми и новыми версиями программ.
|
||
Всё, что потребуется поставить (или удалить) дополнительно к уже имеющемуся в
|
||
системе, будет указано в отчёте <command>apt-get</command>, которым
|
||
<application>APT</application> предварит само обновление.
|
||
</para>
|
||
|
||
</chapter>
|
||
|
||
</part>
|