Вход/Регистрация
Linux для пользователя
вернуться

Костромин Виктор Алексеевич

Шрифт:

Необходимо только заметить, что если для перекачки пакетов из Интернета вы используете компьютер, работающий под Windows 95, то все имена пакетов у вас будут, скорее всего, искажены. Дело в том, что Windows "не любит" имена, в которых несколько точек (например, glib-1.0.6-3.i386.rpm) и заменит "лишние", по его мнению, точки на знаки подчеркивания - glib-1_0_6-3_i386.rpm. Так что после получения пакета (при переносе его на ПК с ОС Linux) желательно эти "исправления" устранить, вернувшись к исходным именам UNIX. Правда, делать это не обязательно, поскольку внутри rpm-пакет все равно правильно идентифицирован, но для единообразия и облегчения поиска файлов все же целесообразно.

Итак, вы нашли и скачали rpm-архив с исполняемой версией нужного вам пакета. Если вы ставите совершенно новый пакет (у вас не было на компьютере предыдущих версий этого ПО), то для установки пакета из этого архива достаточно перейти в тот каталог, где находится архив, и дать команду (для самых нетерпеливых: не спешите выполнять эту рекомендацию, прочитайте еще хотя бы пару абзацев)

[root]# rpm -i имя_rpm-архива

Если у вас была установлена предыдущая версия пакета, то в простейшем случае надо дать команду следующего формата:

[root]# rpm -U -force имя_rpm-архива

Здесь параметр -U говорит программе, что надо произвести обновление (upgrade) пакета, а опция -force требует безусловно (и без лишних вопросов) обновить все входящие в пакет файлы. Заметьте, что это очень сильное требование, и в некоторых случаях может быть лучше сохранить какие-то (например, конфигурационные) файлы от предыдущей версии. Если установка проходит нормально, и никаких дополнительных сообщений не появляется, то после завершения работы программы (после появления приглашения оболочки) вы можете пользоваться вновь установленным пакетом.

К сожалению, не всегда все так просто. Приведу конкретный пример. У меня был установлен RedHat Linux версии 5.2, причем программа Midnight Commander (mc) была версии 4.1.36. На ftp-сервере я увидел версию 4.5.30 этой программы (пакет mc-4.5.30-12.i386.rpm) и, естественно, решил ее поставить. Однако оказалось, что для этого необходимо установить еще 4 других пакета, о чем rpm мне и сообщила:

ошибка: неудовлетворенные зависимости:

redhat-logos нужен для mc-4.5.30-12

libglib-1.2.so.0 нужен для mc-4.5.30-12

libc.so.6(GLIBC_2.1) нужен для mc-4.5.30-12

libc.so.6(GLIBC_2.0) нужен для mc-4.5.30-12

Это не удивительно, если вы вспомните, что и при первоначальной установке Linux программа инсталляции тоже проверяла взаимозависимости пакетов и предлагала установить недостающие. Однако в случае инсталляции с CD-ROM все необходимые пакеты находятся на том же диске, а здесь мне пришлось вначале поискать нужные пакеты. Два пакета (redhat-logos-1.0.5-1.noarch.rpm и glibc-2.1.1-6.i386.rpm) я нашел без труда, после чего rpm перестала просить и GLIBC_2.0. А вот с libglib.so.1 вышло сложнее. Во-первых, я никак не мог найти пакета с таким названием. Как оказалось, такого пакета и не существует, файл libglib.so.1 входит в состав пакета glib-1.0.6-3.i386.rpm.

Программа rpm позволяет выяснить, какие файлы установит тот или иной пакет. Для этого надо дать следующую команду (только учтите, что текущим должен быть каталог, содержащий интересующий вас пакет):

[root]# rpm -qpl имя_rpm-архива

А для получения информации о том, для чего служит ПО, содержащееся в rpm-пакете, используйте команду

[root]# rpm -qpi имя_rpm-архива

Дело в том, что файлы RPM кроме собственно архива файлов содержат информацию о пакете, включая имя, версию и краткое описание. С помощью той же программы rpm вы можете просмотреть эту дополнительную информацию. Например, для пакета glib-1.0.6-3.i386.rpm вывод команды

[root]# rpm -qpi glib-1.0.6-3.i386.rpm

будет примерно таким:

Name: glib Relocations: (not relocateable)

Version: 1.0.6 Vendor: Red Hat Software

Release: 3 Build Date: Суб 10 Окт 1998 04:49:03

Install date: (not installed)

Build Host: porky.redhat.com

Group: Libraries Source RPM: glib-1.0.6-3.i386.rpm

Size: 55305

Packager: Red Hat Software ‹bug@redhat.com›

Summary: Handy library of utility functions

Description: Handy library of utility functions. Development libs and headers are in gtk+-devel.

Если дать команду:

[root]# rpm -qpl glib-1.0.6-3.i386.rpm

будет выдан список входящих в пакет файлов с указанием того, куда они будут установлены:

/usr/lib/libglib.so.1

/usr/lib/libglib.so.1.0.6

RPM также предоставляет мощную систему запросов по установленным в системе пакетам. По команде

  • Читать дальше
  • 1
  • ...
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: