Страница 1 из 1
Зависимости библиотек в RHEL
Добавлено: 13 авг 2015, 16:37
helgisbox
Есть в RHEL 5.5 пакет «gawk-3.1.5-14.el5.x86_64». Устанавливал на 4 машины одну и ту же ОС с одним и тем же набором компонент. Сам gawk-3.1.5-14.el5.x86_64 установился на все 4. Сейчас, спустя годы понадобилось прикладному софту юзать gawk. На одной из 4 машины - он постоянно не регулярно (одни и те же скрипты) вываливаются в ошибку. Сам пакет принудительно на «больной» машине переустановил. Не помогло. По идее надо дальше копать в направлении: "а что же этот gawk использует". Вот в винде есть программа „dependency walker“, которая выдает список библиотек с номерами версий и имена импортируемых функций из них. Можно найти нужную библиотеку и установить ее.
Есть ли некий аналог в Linux с поиском таких зависимостей, чтобы переустановить/проверить те компоненты, от которых зависит gawk?!
Re: Зависимости библиотек в RHEL
Добавлено: 13 авг 2015, 17:00
Olej
helgisbox писал(а):Есть в RHEL 5.5 пакет «gawk-3.1.5-14.el5.x86_64». Устанавливал на 4 машины одну и ту же ОС с одним и тем же набором компонент. Сам gawk-3.1.5-14.el5.x86_64 установился на все 4. Сейчас, спустя годы понадобилось прикладному софту юзать gawk. На одной из 4 машины - он постоянно не регулярно (одни и те же скрипты) вываливаются в ошибку. Сам пакет принудительно на «больной» машине переустановил. Не помогло. По идее надо дальше копать в направлении: "а что же этот gawk использует". Вот в винде есть программа „dependency walker“, которая выдает список библиотек с номерами версий и имена импортируемых функций из них. Можно найти нужную библиотеку и установить ее.
Есть ли некий аналог в Linux с поиском таких зависимостей, чтобы переустановить/проверить те компоненты, от которых зависит gawk?!
Код: Выделить всё
olej@nvidia ~ $ ldd `which gawk`
linux-gate.so.1 => (0xb7757000)
libsigsegv.so.2 => /usr/lib/i386-linux-gnu/libsigsegv.so.2 (0xb76c3000)
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xb76be000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb7677000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb74c9000)
/lib/ld-linux.so.2 (0xb7758000)
Не то?
Можно, в конце концов, принудительно переустановить (reinstall) yum-ом.
Re: Зависимости библиотек в RHEL
Добавлено: 14 авг 2015, 08:31
helgisbox
Olej писал(а):helgisbox писал(а):Есть в RHEL 5.5 пакет «gawk-3.1.5-14.el5.x86_64». Устанавливал на 4 машины одну и ту же ОС с одним и тем же набором компонент. Сам gawk-3.1.5-14.el5.x86_64 установился на все 4. Сейчас, спустя годы понадобилось прикладному софту юзать gawk. На одной из 4 машины - он постоянно не регулярно (одни и те же скрипты) вываливаются в ошибку. Сам пакет принудительно на «больной» машине переустановил. Не помогло. По идее надо дальше копать в направлении: "а что же этот gawk использует". Вот в винде есть программа „dependency walker“, которая выдает список библиотек с номерами версий и имена импортируемых функций из них. Можно найти нужную библиотеку и установить ее.
Есть ли некий аналог в Linux с поиском таких зависимостей, чтобы переустановить/проверить те компоненты, от которых зависит gawk?!
Код: Выделить всё
olej@nvidia ~ $ ldd `which gawk`
linux-gate.so.1 => (0xb7757000)
libsigsegv.so.2 => /usr/lib/i386-linux-gnu/libsigsegv.so.2 (0xb76c3000)
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xb76be000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb7677000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb74c9000)
/lib/ld-linux.so.2 (0xb7758000)
Не то?
Можно, в конце концов, принудительно переустановить (reinstall) yum-ом.
Да - оно, спасибо!. Вот rpm-ом переставил:
"rpm -ivh --replacepkgs gawk-3.1.5-14.el5.x86_64.rpm"
так правильно? yum-у нжен репозиторий, во внутренней сетке его нет, а во внешний мир доступ закрыт правилами безопасности местной.
Re: Зависимости библиотек в RHEL
Добавлено: 14 авг 2015, 09:43
Olej
helgisbox писал(а):yum-у нжен репозиторий, во внутренней сетке его нет, а во внешний мир доступ закрыт правилами безопасности местной.
У yum тоже есть команда localinstall, когда указывается локальные *.rpm файл.
Re: Зависимости библиотек в RHEL
Добавлено: 14 авг 2015, 11:08
helgisbox
Olej писал(а):helgisbox писал(а):yum-у нжен репозиторий, во внутренней сетке его нет, а во внешний мир доступ закрыт правилами безопасности местной.
У yum тоже есть команда localinstall, когда указывается локальные *.rpm файл.
Спасибо! А по сравнению с использованием rpm напрямую установка yum-ом будет отличаться тем, что он все зависимае пакеты тоже подтянет?!
Re: Зависимости библиотек в RHEL
Добавлено: 14 авг 2015, 12:44
Olej
helgisbox писал(а):Спасибо! А по сравнению с использованием rpm напрямую установка yum-ом будет отличаться тем, что он все зависимае пакеты тоже подтянет?!
Да, подтянет недостающие зависимости.
Но главное преимущество установки RPM-пакетов (локальных) с помощью именно yum, а не rpm, как мне кажется, в том, что yum тогда заносит пакет в свою общую базу данных установленных пакетов. Это сильно важно при последующих удалениях или обновлениях пакетов. Как в деталях это делает yum я не разбирался, не знаю, но это работает так.
Re: Зависимости библиотек в RHEL
Добавлено: 14 авг 2015, 14:41
helgisbox
Настроил, но ведь вот незадача - он не нашел зависимостей. А как же gcc ные библиотеки, которые ldd нашел?
[root@host1]/distrib/RHEL5.5/Server#>yum reinstall gawk-3.1.5-14.el5.x86_64.rpm
Loaded plugins: rhnplugin, security
This system is not registered with RHN.
RHN support will be disabled.
Setting up Reinstall Process
Examining gawk-3.1.5-14.el5.x86_64.rpm: gawk-3.1.5-14.el5.x86_64
Resolving Dependencies
--> Running transaction check
---> Package gawk.x86_64 0:3.1.5-14.el5 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
============================================================================================================
Package Arch Version Repository Size
============================================================================================================
Reinstalling:
gawk x86_64 3.1.5-14.el5 /gawk-3.1.5-14.el5.x86_64 4.2 M
Transaction Summary
============================================================================================================
Remove 0 Package(s)
Reinstall 1 Package(s)
Downgrade 0 Package(s)
Total size: 4.2 M
Is this ok [y/N]: y
Downloading Packages:
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID 37017186
Public key for gawk-3.1.5-14.el5.x86_64.rpm is not installed
Re: Зависимости библиотек в RHEL
Добавлено: 14 авг 2015, 17:55
Olej
helgisbox писал(а):Настроил, но ведь вот незадача - он не нашел зависимостей. А как же gcc ные библиотеки, которые ldd нашел?
Никакой незадачи нет
Вы ему что заказали?
helgisbox писал(а):
Код: Выделить всё
[root@host1]/distrib/RHEL5.5/Server#>yum reinstall gawk-3.1.5-14.el5.x86_64.rpm
Это означает реинсталировать gawk-3.1.5-14.el5.x86_64.rpm.
Он и реинсталлировал.
А зависимости никакие не подтягивал, потому что они уже удовлетворены, они уже присутствуют в системе - раньше были установлены.
Ну gcc - это компилятор, он вам вообще к приложению никаким боком не нужен, а библиотеки, если на них грешите, можете переустановить.
Re: Зависимости библиотек в RHEL
Добавлено: 14 авг 2015, 18:02
Olej
Меня в вашем логе смущает вот эта строчка:
helgisbox писал(а):
Код: Выделить всё
Public key for gawk-3.1.5-14.el5.x86_64.rpm is not installed
Чтоб такого не было, запускайте yum с ключом --nogpg (или как-то так, по yum --help посмотрите).
Проверьте, завершил ли от переустановку gawk:
И по дате посмотрите.
Re: Зависимости библиотек в RHEL
Добавлено: 17 авг 2015, 08:47
helgisbox
Спасибо, переустановил пакет. И спасибо за наводку с ldd. Поскольку проблема вытекала отсюда, создал тему отдельную:
Ошибки при парсинге в AWK.