не знал куда отнести, отнес сюда. Проблема следующая, хочу поставить coreutils, grep, tar и др., но apt-get хочет снести мне кучу покетов...
# apt-get install coreutils
Reading package lists... Done
Building dependency tree... Done
The following packages will be REMOVED:
bluez-utils busybox dnsmasq hal ke-recv libconbtui0 lsb-base netbase osso-af osso-applet-device osso-applet-languageregional osso-applet-location
osso-applet-memory osso-bluez-compat osso-connectivity osso-connectivity-ui osso-connectivity-ui-btsettings osso-connectivity-ui-conndlgs
osso-connectivity-ui-connmgr osso-connectivity-ui-gwsettings osso-connectivity-ui-gwwizard osso-connectivity-ui-iapsettings
osso-connectivity-ui-statusbar osso-core osso-core-busybox osso-dsm osso-filemanager osso-ic osso-startup-wizard ppp
The following NEW packages will be installed:
coreutils
WARNING: The following essential packages will be removed.
This should NOT be done unless you know exactly what you are doing!
busybox
0 upgraded, 1 newly installed, 30 to remove and 23 not upgraded.
Need to get 2609kB of archives.
After unpacking 1745kB disk space will be freed.
You are about to do something potentially harmful.
To continue type in the phrase 'Yes, do as I say!'
?]
Неактивен
Wall говорит:
А в чем собственно вопрос? Хотите, чтобы вам объяснили почему или хотите знать как это ставить?
Отдельный вопрос: Какой функционал вы хотите получить поставив это?
хочет из-за зависемостей снести подозреваю... хочу узнать как поставить, чтобы не удались те покеты...
1. Хочу все возможности coreutils (в busybox не все флаги реализованны)
2. Хочу nmap скомпилить по таблетом, в текущей стадии коомпилирования споткнулся на том, что у grep нету нужных флагов (при ./configure)
Отредактированно Longer (10-05-2008 03:37:56)
Неактивен
Зависимости - фигня, они вторичны. Конфликты в busybox на coreutils стоят не просто так, а по делу. Вы можете на них наплевать и поставить пакет с dpkg --force-depends, тем самым перезапишите симлинки на busybox в /usr/bin/ на бинари из coreutils.
Результат вас не сильно порадует - скорее всего придется перефлешивать таблетку. Не думаю, что вы хотите этого достичь ![]()
Если бы у меня стояла задача сделать coreutils для таблетки - я бы просто перепаковал бы их переложив бинари в /usr/local/bin например. И пускал бы ваш configure поставив /usr/local/bin в PATH перед /usr/bin. Тоже нужно делать осторожно, но шансов получить нужное в разы больше, чем при подходе 'в лоб'.
Тот пакет, который вы ставите - скорее всего часть SDK, то есть он предназначен для установки в scratchbox, а не на таблетке. Именно поэтому и рекомендуется собирать под scratchbox, а не на железке. Я уже молчу про очевидную проблему с производительностью такого подхода.
Но!
Если нельзя, но очень хочется, то можно ![]()
Итого я предлагаю 2 варианта решения вашей проблемы:
- переделать coreutils, о котором я уже упоминал
- собрать вам nmap
выбирайте.
Неактивен
Wall говорит:
Могу помочь, если хотите. Если вы гентушник, то у вас под рукой нет нужных инструментов. А scratchbox вы не хотите ставить видимо из принципа
dpkg есть портадже gentoo. инструкцию по редактированию пакетов нашел. но можно обменяться жабами на всяк случай...
Неактивен
я начал с grep отдельного... как меньшего "зла"
переименовал покет, но dpkg ругается и просит удалить busybox... подозреваю что так и должно быть... но хочу уточнить... впринципе у меня система на флешке... и откатиться руками не составит труда... но хотелось бы знать на будущее как правльно всеже
Неактивен
Немного поясню пожалуй - если вы положили ваш grep в /usr/local/bin, то поставив его с помощью dpkg --force-depends вы категорически ничего не сломаете, конечно. Но в целом это порочная практика, типа как забивать шурупы молотком - по виду вроде нормально, но когда-нибудь отвалится и покалечит ![]()
Еще одно - в зависимости от того, от какого юзера вы работате и, если вы работаете от рута, то еще и в зависимости от того как вы получали рута в вашем PATH /usr/local/bin может уже стоять раньше /usr/bin. В таком случае можно ненароком все сломать, поставив что-нибудь в /usr/local/bin. Так что осторожнее с этим - прежде чем ставить - проверяйте. А лучше отдельного юзера вообще завести и от него работать.
Неактивен
Кстати, таким образом можно и bash и любой другой шелл поставить. Много раз встречал посты ноющих линуксоидов, что дескать бизибокс - фуфло, хотим баш, но ни разу не видел, чтобы кто-нибудь просто положил его и все, что ему нужно в отдельное место.
Неактивен
Wall говорит:
Кстати, таким образом можно и bash и любой другой шелл поставить. Много раз встречал посты ноющих линуксоидов, что дескать бизибокс - фуфло, хотим баш, но не разу не видел, чтобы кто-нибудь просто положил его и все, что ему нужно в отдельное место.
как рас думаю свой любимый zsh скомпилить также, как nmap)) хотя посмотрим... может на сем я свои извращения закончу - nmap...
счс у меня такая задача встала, мне для сборки nmap нужен autoconf, он свою очередь требует debianutils(которая состоит из coreutils + mktemp) счс как я подозреваю(как подозреваю, так и делаю), мне предстоит coreutils, mktemp пересобрать эти покеты, затем и autoconf, у всех название сменить...
но что меня настораживает сильно... что если так дело пойдет я сильно могу захламить систему...
можно по подробнее о глюках при уничтожении симлинков(замена на coreutils и пр) у busybox... софт проверяет busybox ли это?
Неактивен
Пересобирать не обязательно, можно взять готовый пакет и перепаковать. Тулза для упаковки в пакет по-моему зовется dpkg-deb. Распаковка - dpkg -e, dpkg --control. названия могут быть неправильными, но принцип такой - разворачиваете пакет, переносите бинари из /usr/bin в /usr/local/bin, запаковываете обратно. Вуаля. Подробности опускаю, вы достаточно грамотны, чтобы разобраться, а мне лень клаву жать ![]()
Насчет симлинков - я имел в виду следующее:
В оригинале ситуация у нас такая:
# ls -l /bin/cat
lrwxrwxrwx 1 root root 7 Dec 11 15:41 /bin/cat -> busybox
И это сделано для всего, что предоставляет busybox.
Теперь предположим, что вы насильно (--force) поставили coreutils, которое положило свой бинарь в /bin/cat, перезаписав вышеупомянутый симлинк на бизибокс. И сделало оно это со всеми своими бинарями, коих не два и не три. Теперь предположим, что поведение и опции этих бинарей отличаются от поведения бинарей из busybox. И еще предположим, что опции, либо дефолтное поведение бизибоксовых бинарий используются в инитскриптах при загрузке. Не такие уж и далекие от жизни предположения, согласитесь
Дальше продолжать?
Неактивен
>Пересобирать
да конечно перепаковать)) привык просто что в генту все пересобирается
) вот и здесь не в тему туже терменалогию использую...
про сим линки понял... да давольно таки логично... т.е. пол системы нужно перелопатить и все проверить и изменить, отладить... таким не тянет меня, пока, этим занятся... хотя чтото в сем есть ![]()
Неактивен
В этом ничего нет. Вся эта работа или большая ее часть пойдет коту под хвост при выходе новой прошивки. К тому же для нормальной работы на таком уровне нужна консоль, которой нет. Без консоли (я имею в виду serial или любую, которая покажет процесс загрузки хотя бы с момента старта initскриптов) не видно где обломалось, что затрудняет такую работу в несколько раз.
Неактивен
где-то на форуме видел тему, как менять лого нокии при старте девайса... думал раз можно сменить его, то и тот вывод информации при загрузке возможен... как раз следующей целью было такое порыть, ибо красевее даже выглядеть загрузка бы стала (на мой вкус
)
ЗЫ если уж совсем заморочится, можно и свой форк системы сделать c coreutils и прочим...(это конечно через чур), но может разработчики сами одумаются, и похерят busybox... можно им это предложить впринципе...
Отредактированно Longer (10-05-2008 07:51:37)
Неактивен