LINUX.ORG.RU
ФорумAdmin

Вопрос по установке программ на голую систему

 ,


0

1

Уважаемое сообщество! Помогите пожалуйста. Не являюсь спецом по Linux, но есть задача установки программ на обрезанную версию Debian( cat debian_version 2.2, но ядро там 2.6, архитектура i586) Проблема в том, что в системе нет ни одного компилятора(но почему то есть make) и нет ни одного менеджера пакетов(есть только dpkg-reconfigure, dpkg-preconfigure и dpkg-divert) .... Собственно вопрос, как в это систему поставить менеджер пакетов, чтобы с его помощью установить потребный софт? Спасибо.


Соберите весь необходимый софт или пакетный менеджер на другой машине и скопируйте в систему, возможно придётся дополнительно собрать зависимости.

imb ★★ ()

есть только dpkg-reconfigure

Это скрипт из пакета dpkg. Раз есть этот скрипт, то теоретически есть и dpkg, значит установить можно так:

#dpkg -i имя_пакета.deb

Или вам намеренно урезали возможности, а вы пытаетесь что-то своё установить?

shrub ★★★★★ ()
Ответ на: комментарий от imb

Спасибо за ответ, а как можно выдернуть из системы например программу dmidecode со всем что она использует ? Я расковырял deb пакет этой программы и достал оттуда бинарники, - распихал их по путям где они должны лежать и получил при запуске:

Bug in Dynamic lincer ld.so

shuum ()
Ответ на: комментарий от shrub

В том то и дело, что dpkg нет физически, это линукс установленный на одноплатном компе заточенном под спец нужды, к нему есть и физический доступ и root логин, там намеренно выпилили все «лишнее» чтобы меньше весил, а вот сейчас нужно поставить dmidecode и непонятно как это сделать, т.к. там стоят сильно специфические дрова и софт который второй раз на чистую систему не поставить ...

shuum ()
Ответ на: комментарий от shuum

сильно специфические дрова и софт который второй раз на чистую систему не поставить

this

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

а уж вместо того чтобы парится с dmidecode так вскрыли бы железяку и просто прочитали надписи на чипах

anonymous ()
Ответ на: комментарий от anonymous

Спасибо за ваше замечание! У нас есть образ готовой системы. dmidecode нужен в тестовых целях(к сожалению описание того, для чего он нужен конкретно выходит за рамки темы топика, да и ни к чему, уж поверьте ни маркировка чипов ни их даташиты не помогут в моей ситуации). Вы меня простите, но я не спрашивал «а как лучше нам организовать производственный процесс», а задал на тематическом форуме вполне конкретный вопрос и очень благодарен людям которые пытаются ответить конструктивно, если Вам есть что сказать по существу, - милости просим.

shuum ()

поискать dmidecode static какой-нибудь

anonymous ()
Ответ на: комментарий от shuum

Странно как-то порезали. dpkg нет, а зависящие от него утилиты остались.

Можно попробовать на другой машине скомпилировать пакеты под эту железку. Раз архитектура стандартная по сути, проблем сильных не должно быть. Точнее, даже не пакеты, а непосредственно нужные программы, потому как терзают меня смутные сомнения, что там пакетным менеджером сильно не поковыряешь. Если только самому всё перепиливать, но для разовой установки - это накладно.

shell-script ★★★★★ ()
Ответ на: комментарий от anonymous

Пробовал найти, но гугл о такой версии dmidecode не знает, может кто сможет скомпилять статическую версию под дебиан с ядром 2.6 ?

shuum ()
Ответ на: комментарий от shell-script

Спасбо за проявленный интерес, да порезали видимо как умели иначе как объяснить, что make есть, а ни одного компилятора нет. Я пробовал собирать на такойже железке с нормальным дебианом, получил бинарник на выходе, перетащил туда и получил: Bug in Dynamic lincer ld.so Есть подозрение, что нужны какие-то либы которых на целевой машине нет, а как собрать статику я не знаю :(

shuum ()
Ответ на: комментарий от anonymous

Спасибо. не понял а это куда писать ? ни у кого под рукой нет дебиана попробовать ?

shuum ()
Ответ на: комментарий от shuum

Я пробовал собирать на такойже железке с нормальным дебианоv

Так может проще снять образ с работающей железяки и накатить на эту проблемную? Конфиги само собой заранее забекапить и потом развернуть уже на новой системе. Тогда все проблемы сразу отпадут.

shell-script ★★★★★ ()
Ответ на: комментарий от shuum

Соберите сами dmidecode, для уменьшения зависимостей лучше статически.

imb ★★ ()
Ответ на: комментарий от imb

вот что видно:

ldd /usr/sbin/dmidecode linux-gate.so.1 => (0xb77b3000) libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7664000) /lib/ld-linux.so.2 (0xb77b4000)

на целевой системе все библиотеки кроме linux-gate.so.1 есть, но они другой версии.

shuum ()
Ответ на: комментарий от shuum

Возможно Вам повезёт и программа запуститься, думаю эксперимент провести не сложно?

imb ★★ ()
Ответ на: комментарий от sidor

Спасибо огромное! Теперь при запуске dmidecode не ругается на библиотеки но всеравно не работает с формулировкой: modprobe: modprobe: Can't locate module binfmt_464c

Наверно не хватает какогото модуля который она хочет загрузить ... как быть дальше ? Спасибо

shuum ()
Ответ на: комментарий от shuum

а может просто Ваши статически скомпиленные библиотеки не под ту архитектуру? там Debian i586 (наверно подойдут и под i386) но это все только предположения

shuum ()
Ответ на: комментарий от sidor

Класс, спасибо вам огромное!!!!!!!, а можно обнаглеть и попросить под ядро 2.4.17 ?

shuum ()
Ответ на: комментарий от shuum

а то текущие переданные вами файлы ругаются, что ядро too old когда их на debian 2.4.17 запускаешь. Спасибо.

shuum ()
Ответ на: комментарий от shuum

Дыкть скомпилируй сам :)

Качаешь отсюда http://download.savannah.gnu.org/releases/dmidecode/ нужную версию (например, последнюю 2.11). Распаковываешь. Внутри появившейся директории в файле Makefile находишь строчку LDFLAGS= и делаешь, чтоб было:

LDFLAGS = -static

Сохраняешь файл и в этой директории делаешь make (ессно и gcc тоже должен стоять)

Вуаля! В директории появляются бинари! :)

sidor ★★ ()
Ответ на: комментарий от shuum

ежели не получится по описанной выше инструкции - выложу

sidor ★★ ()
Ответ на: комментарий от sidor

Спасибо еще раз, а где сейчас можно найти какой-нибудь дебиан с ядром 2.4.17 i386 ?

shuum ()
Ответ на: комментарий от shuum

Так а запускать где пытаешься? Это не оно ли? :)

sidor ★★ ()
Ответ на: комментарий от sidor

Запускать ваши статические пакеты пытаюсь на 2.4.17 а они говорят Kernel too old (наверно Вы их собрали под 2.6 или типа того)А на этой системе я же ничего скомпилять не могу(с чего и начался весь сыр-бор, там же нет ничего) соответственно, надо гдето взять debian с ядром как на целевой системе(2.4.17) только не обрезанный и под i386 или i586, и собрать dmidecode из исходников с ключиком LDFLAGS = -static как Вы писали ранее ... а вот где взять такой debian я не знаю ... Или я что не так понимаю ?

shuum ()
Ответ на: комментарий от shuum

Просто ты писал в самом начале

но ядро там 2.6

а теперь 2.4 вылезло. ща выложу

sidor ★★ ()
Ответ на: комментарий от sidor

Большое человеческое спасибо! Совершенно искренне! Вы очень выручили, все работает, dmidecode запускается и работает как надо! Чуть позже выложу архив с этими бинарниками на файлообменник, вдруг кому еще пригодятся, Вы не против ?

P.S. остается открытым вопрос как туда поставить всё-таки менеджер пакетов ...

shuum ()

ar, tar и gzip есть? Берёте deb-пакет и выполняете на нём: ar x file.deb && tar -C / -xvzf data.tar.gz

Пакет установлен. Соблюдать зависимости придётся вручную. Попробуйте поставить таким образом dpkg.

AITap ★★★★★ ()
Последнее исправление: AITap (всего исправлений: 1)
Ответ на: комментарий от shuum

А чего вдруг я буду против? Копирайт на компеление чтоль? :) Чай не аппле, слава богу, работаю :)

А про менеджер пакетов - вариант AITap-а попробуй. Вполне может работать.

sidor ★★ ()
Ответ на: комментарий от sidor

Спасибо! Если есть возможность, можете так же скомпилять lsdev под ядро 2.4 (Так же как Вы компилили dmidecode, за что отдельное КУ!) ?

shuum ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.