crypt of decay - для матюгов [entries|archive|friends|userinfo]
ketmar

[ userinfo | ljr userinfo ]
[ archive | journal archive ]

для матюгов [May. 5th, 2024|09:23 am]
Previous Entry Add to Memories Tell A Friend Next Entry
Linkmeow!

Comments:
[User Picture]
From:[info]hex_laden
Date:January 15th, 2015 - 05:40 am
(Link)
первое, что заметил сразу — хихикс — ну почему, почему никто не ставит exit прямо в печаталку параметров?
А мысль такая у меня была... Только почему я так не сделал, сам не ведаю. Наверное потому, что сначала решил, что буду выводить справку только по запуску без параметров, потом подумал, что стоит добавить красоты, а перенести exit забыл.
сделай или нормальный getopt, или нормальную обработку параметров через while и shift. а то nekulturna.
Да, надо бы переделать...
проверка аргументов через grep — это ты круто загнул!
Я где-то подсмотрел, причем основательно так нажравшись. В mkinitrd, если склероз не изменяет.
[User Picture]
From:[info]ketmar
Date:January 15th, 2015 - 05:49 am
(Link)
>Я где-то подсмотрел, причем основательно так нажравшись.
ну так они рассчитывают на самый минимальный sh. а тебе-то какой смысл, если bash в системе уж точно есть? а если нет — то как этот идиот до консоли добрался вообще? все ставят bash, хоть никто добровольно его и не использует.
[User Picture]
From:[info]hex_laden
Date:January 15th, 2015 - 01:57 pm
(Link)
ну так они рассчитывают на самый минимальный sh
Вот оно в чем дело-то... Ну собственно я уже прочел про getopts и shift, вроде все понятно, так что при случае доведу до ума. Спасибо.

Еще один маленький вопрос. Есть ли какой-нибудь более-менее стандартный способ узнать, какие so требуются тому или иному ELF-файлу? Кроме чтения исходников, метода тыка и скармливания программы IDA (которая интерактивный дизассемблер им. Ильфака)?
[User Picture]
From:[info]ketmar
Date:January 15th, 2015 - 02:07 pm
(Link)
ldd filename
стандартная утилита из binutils.
[User Picture]
From:[info]ketmar
Date:January 15th, 2015 - 02:10 pm
(Link)
одна из тех команд, название которых кажется очевидным после дого, как про неё узнал. ну логично же: list dynamic dependencies. %-)
[User Picture]
From:[info]hex_laden
Date:January 15th, 2015 - 02:25 pm
(Link)
Попробовал. Теперь в ахуе. Хера как все просто и логично. Я тут одну фигню захотел ради эксперимента перетащить в Live-дистрибьютив, фигни нет в нем изначально, в его пакетах она тоже не нашлась, каждый раз, когда библиотеку не нашла таскать so-хи с рабочей системы еще более впадлу, уже скопировал фигню на флешку и подумал, что надо в офис идти, где великое творение Ильфака есть. Уж и формат ELF'ов нагуглил, думая на досуге набыдлокодить что-нибудь для. А оно вот как оказывается! Сижу теперь как смайлик %) с перекошенным ебалом и медленно батарею хренею.
[User Picture]
From:[info]ketmar
Date:January 15th, 2015 - 02:30 pm
(Link)
ну так система-то девелоперов любит. если тебе нужна какая-нибудь подобная мелочь — скорее всего, её уже кто-то написал и она где-то есть. осталось сущая фигня: чтобы кто-нибудь написал телепатор, преобразующий нечётко оформленные хотелки в названия команд.

ну и да, для анализа бинарей у нас есть radare. оно, конечно, не такое всё с кнопочками и окошечками, как ида, но тоже умеет много гитик.
[User Picture]
From:[info]hex_laden
Date:January 15th, 2015 - 02:46 pm
(Link)
телепатор
Штатный телепатор им. Брина меня с этим вопросом-то и подвел :(

А мне тоже фигня осталась, специально в комменте тебе расскажу и сам потом не забуду. Написать скрипт, который из предварительно сохраненного выхлопа ldd в live-дистрибьютиве или там initrd выдает информацию: та-та so'ха на месте, лежит там-то, той-то нет, будьте добры покласть вот сюды :)

radare
Надо на ус намотать. Вдруг опять попрет на эксперименты с низкоуровневым ковырянием в программах.
[User Picture]
From:[info]ketmar
Date:January 15th, 2015 - 03:06 pm
(Link)
ой, ну grep же, да awk.

впрочем, я тебе гарантирую ещё массу веселья с разными версиями библиотек.

зачем не взять и не собрать просто-напросто в ливе всё, что надо, оформив как тарбол?
[User Picture]
From:[info]hex_laden
Date:January 15th, 2015 - 03:23 pm
(Link)
зачем не взять и не собрать просто-напросто в ливе всё, что надо, оформив как тарбол?

Бля! *autofacepalm.jpg*.
Как я умудряюсь вечно все усложнять и пропускать простые решения!
Пора свою секту основывать - hemorroy dao, или там Свидетели Геморроя.
[User Picture]
From:[info]ketmar
Date:January 15th, 2015 - 03:34 pm
(Link)
тяжёлое наследие винды потому что. в никсах первая мысль завсегда: «щаз мы на целевой машине пересоберём — и телемаркет!» а в виндах — «бляблябля, щаз библиотек накидаем — авось взлетит…» %-)
[User Picture]
From:[info]hex_laden
Date:January 15th, 2015 - 03:38 pm
(Link)
Ага. Виндов и puppy rus (в ней компиляторов искаропки не было, подключались через жопу, но зато с графической оболочкой шла даже на вторых пнях).
[User Picture]
From:[info]ketmar
Date:January 15th, 2015 - 03:37 pm
(Link)
кстати, для автоматического сбора всей срани, которую make install пытается рассовать по разным каталогам, есть чудная утилита checkinstall. она бережно проследит за всем насраным и аккуратно соберёт это в один архив. таким образом для простых вещей можно тупо собрать всё нужное, делая по пути checkinstall каждой части, а потом из этого скомбинировать большой тарбол или вообще пакет для целевой системы.
[User Picture]
From:[info]hex_laden
Date:January 15th, 2015 - 03:45 pm
(Link)
про checkinstall знаю. И вообще, насколько понял, даже в Слаквари make install лучше не пользоваться, чтоб потом руками лишние программы не выковыривать из системы и ее не загадить. Потому стараюсь src2pkg пользовать, а после нее installpkg и sbopkg отдельно. Обычно сначала в последнем ищу что-то готовое, потом гуглеж исходника, src2pkg и installpkg
делая по пути checkinstall каждой части
А вот по кускам еще не собирал. Но постараюсь не забыть, что можно и так.
[User Picture]
From:[info]ketmar
Date:January 15th, 2015 - 03:50 pm
(Link)
что значит «даже в слаквари»?! слака как раз наименее помоечная из систем, потому что никто в здравом уме не делает «make install», если можно «DESTDIR=/tmp/pkg make install», после чего сделать простой тарбол содержимого /tmp/pkg — и ЧПОК! — у нас готовый для установки штатным пакетным менеджером пакет.

нигде больше так просто пакеты не делаются, везде надо устраивать хоть мелкий, но цирк с конями. в слаке — не надо.
[User Picture]
From:[info]hex_laden
Date:January 15th, 2015 - 04:11 pm
(Link)
что значит «даже в слаквари»?!
Я уже сам не помню, что был за источник, помню суть. Когда я решил перейти с маленького и очень мне нравившегося до определенного момента puppy, который мне для начального изучения рекомендовал Панкарь на большой полновесный linux, то стал выбирать дистрибьютив. Ты мне что-то советовал сто лет назад типа "слаку с человеческим лицом", но я на тот момент уже это забыл, и стал выбирать по-новой. Вспомнил, что саму Слакварь ты мне отсоветовывал, решил сначала попробовать debian, но мне не понравилось, что он пытается на мой недобук при установке выкачать ну явно все интернеты. Пошел к тогдашнему консультанту Панкаря, который электрик и линуксоид-любитель. Он насоветовал мне Absolute. На нем я до сей поры и сижу. С дистром Абсолюта мне была вручен диск с книгой (где-то в рашке оставил). Так в ней и была фраза, о которой я вспомнил. Что-то типа: "Ранее (когда-то давно) в Slackware не было пакетных менеджеров в том понимании, в котором о них имеют представление пользователи ubuntu, debian и т.д., а еще ранее программы устанавливались с помощью известного всем набора команд ./configure
make
make install
Но такой способ плох [объяснялось почему], а в Slackware пакетный менеджер есть [и объяснялись основы работы]". Потом я уже нашел и src2pkg и sbopkg.
[User Picture]
From:[info]ketmar
Date:January 15th, 2015 - 04:17 pm
(Link)
>анее (когда-то давно) в Slackware не было пакетных менеджеров в том понимании, в
>котором о них имеют представление пользователи ubuntu, debian и т.д.

у нас их и сейчас нет «в этом понимании». потому что эта срань нам нахуй не упёрлась ваще.

периодически кто-нибудь делает какой-нибудь swaret, или slapt-get… все хлопают по плечу и хвалят: «молодца, чувак, отлично поработал, иди пирожок возьми, что ли». и продолжают пользоваться обычными installpkg/upgradepkg/removepkg.
[User Picture]
From:[info]hex_laden
Date:January 15th, 2015 - 05:01 pm
(Link)
Вот посему я и подумал когда-то, что пакетных менеджеров нет совсем. Как оказалось, это было довольно дурное заблуждение.