Ru-Board.club
← Вернуться в раздел «UNIX»

» Помогите с выбором "решения" запуска ELF-файла и (

Автор: inelit
Дата сообщения: 04.10.2012 19:54
Задачка: есть ELF-файл (полный аналог его, но в DOS, запускается батником без участия пользователя (т.е. не надо жать кнопки и т.п.), с дискеты или флэшки) и есть набор .sf скриптов запуска ELF-файла(файлов), так вот необходимо создать аналогичное, но с учётом unix-овости материала. Искомое решение представляется в виде операционки на загрузочном диске (флэшка к примеру, или небольшой ЖД) но без красивых WIN-подобных-графических консолей и т.п., идеальным было-бы решение как в "голом" DOS или даже с помощью аналога NC или VC.
Автор: Alukardd
Дата сообщения: 04.10.2012 20:39
inelit
Ух... А теперь давайте без отсылок к DOS'у, по русски — что вы хотите получить и какие исходные данные имеете.
Автор: inelit
Дата сообщения: 05.10.2012 08:20
Ищу решение загрузочного диска (или даже установка системы на ЖД) Linux (версия ядра от 2.6), как в DOS (т.е. что-бы была возможность запуска из командной строки конкретного(ых) ELF-файла(ов), и(или) .sf-батников - автоматическая или "ручной ввод команд" - в слепую), а графический и оконной интерфейс не нужен вообще, если графика будет типа NC или VC, хорошо, но не знаю есть-ли такое вообще. Как это сделать, из чего?
"Подёргал" поисковик, но не нашёл (или не увидел) подходящего решения - ведь в основном предлагаются Live-версии (оконные и многофункциональные системы), а оно мне точно не надо.
Автор: Davydt
Дата сообщения: 05.10.2012 08:31
На мой взгляд самое простое и дружелюбное - Ubuntu Server или Debian. При установке не выбирать никаких сервисов. На выходе получится голая командная строка.
По Live CD - ну например Gentoo, после загрузки тоже получите командную строку


Цитата:
если графика будет типа NC или VC, хорошо, но не знаю есть-ли такое вообще

В Debian/Ubuntu - apt-get install mc
Автор: Alukardd
Дата сообщения: 05.10.2012 09:33
inelit
Всё зависит от того на сколько от должно быть минималистично по размерам. Если неважно, то ставьте Debian с диска NetInst и выбирайте то, что нужно.
Если есть ограничения по месту, то смотреть в сторону tinycore linux.
NC и VC это просто файловые менеджеры — поставьте себе если так надо Midnight Commander, хотя я и без менеджеров прекрасно живу.
Что такое sf-батник я понятия не имею. Вам shell скрипты нужны? Так они как бы везде — без них система собственно и не система.
Автор: inelit
Дата сообщения: 05.10.2012 11:18
Davydt и Alukardd

Спасибо вам за наводку, я конечно новичёк в этом; пока остановился на SLAX-флэшке (помню пробовал её лет пять тому назад), из текстового режима - mc (похож на NC) - и далее найдя скрипт .sh - всё стартует, но сами программы ELF (на которые есть ссылки из этих скриптов) не запускаются ("не возможно открыть бинарный файл и т.д." -дословный перевод), я так понимаю что-то ещё должно быть что-бы этот SLAX понимал что это (ELF) исполняемые файлы, так?

Скачал .iso Debian, но что-то он с флэшки не стартанул (Boot Error); наверное что-то не так сделал, потом попробую ещё раз, с самого начала.

И вот вопрос, я так и не понял, что-бы файлы ELF обрабатывались как исполняемые файлы в Linux (вообще) необходимы какие-то команды или надстройки(модули)?
Автор: Alukardd
Дата сообщения: 05.10.2012 11:24
inelit
ELF — стандартный формат исполняемых файлов для UNIX-like ОСей.
Не нужно дословных переводов, нужно сюда выкладывать копи-пастом реальный вывод терминала, а не отсебятину.
Возможно ему не хватает каких-то библиотек, ворзможно скомпилен под другую архитектуру, собственно надо смотреть на вывод или анализировать запуск программы такими инструментами как strace и gdb. Список желаемых библиотек можно посмотреть командой ldd /path/to/your/ELF/file

Добавлено:
inelit
Цитата:
Скачал .iso Debian, но что-то он с флэшки не стартанул (Boot Error); наверное что-то не так сделал
не знаю что именно Вы там делаете, то у Debian'а нету, на сколько я помню, Live образов, т.о. iso'шник можно только использовать как установочный образ и ни как иначе.
Автор: inelit
Дата сообщения: 05.10.2012 12:01
Alukardd

флэшку с Debian я конечно делал для установки. потом ещё раз попробую сделать.

Вообщем mc (просмотр по F3) вот что показал на счёт файла ELF:
"ELF 64-bit LSB executable, x86-64, version 1, staticablle, linked striped"
т.е. для его запуска необходим всё-таки 64-битный Linux?
Автор: Alukardd
Дата сообщения: 05.10.2012 12:38
inelit
Ну вы доудмались открывать бинарник в текстовом редакторе...
Посмотреть что это за формат можно командой file /path/to/your/ELF/file
Ну, да, похоже что Вам нужна Debian_amd64.
Автор: Davydt
Дата сообщения: 05.10.2012 18:20

Цитата:
Скачал .iso Debian, но что-то он с флэшки не стартанул (Boot Error); наверное что-то не так сделал,

Для бута с флешки у дебиана другие образы
http://cdimage.debian.org/debian-cd/current-live/amd64/usb-hdd/
Автор: inelit
Дата сообщения: 06.10.2012 09:21
Davydt

Спасибо, всё-таки загрузился (с флэшки) с Debian (командная строка), но увы не знаю куда именно (в .ISO) заранее интегрировать MC (файл-менеджер) или лучше куда вставить свои ELF-файл и скрипты (в .ISO), что-бы загрузившись с флэшки можно было-бы из командной строки их (ELF-файл и .sf скрипт(ы)) запустить.
Подскажите, а?
Автор: Alukardd
Дата сообщения: 06.10.2012 14:42
inelit
mc — это лишь файловый менеджер и личное предпочтение каждого, а не средство запуска программ и работы за компьютером.
Что бы запустить бинарник просто в командной строке укажите путь в нему и всё, например /home/inelit/mysuperbin

И собственно меня немного мучает вопрос: а что это за бинарник у вас такой? Какая-то самописная прога, мб есть что-то готовое что Вам надо? Почему проводится аналогия с DOS?

Тема изменения ISO под себя изъезжена вдоль и поперёк, однако при Вашем уровне знакомства с GNU/Linux я не советую вам в это лезть.
Автор: ASE_DAG
Дата сообщения: 06.10.2012 16:24
inelit
Да при чем тут вообще .iso? ИСО 9660 — это read-only файловая система для компакт-дисков. Файл *.iso, соответственно, образ ФС для компакт-диска. У вас не компакт-диск, а флэшка — перезаписываемый носитель, чтобы установить ОС на нее, не требуется никаких особых приемов — просто берете и устанавливаете, в результате получая систему, с которой делаете что хотите: устанавливаете нужное ПО, удаляете лишнее, правите любые конфиги и т. д.
Автор: inelit
Дата сообщения: 06.10.2012 17:34
ASE_DAG

да и не в .iso дело, устанавливать Linux на ЖД нет большого желания, потому-что с флэшки, в режиме командной строки оно грузится и этого для меня уже достаточно, необходимо только добавить на флэшку с этим Linux либо автостарт необходимого, что предпочтительно, либо что-бы запускалось простым вводом с клавиатуры, в той-же командной строке Linux, вот и всё.

проблема в том, что имеем файл с ELF заголовком и к нему пару скриптов .sh, возможно неоходимо наличие в Linux соответствующего модуля для ELF, но куда именно всё это положить на готовой флэшке или в .iso (для этой флэшки) я не знаю.

Alukardd

да, у меня предпочтение к mc
Автор: Alukardd
Дата сообщения: 06.10.2012 19:48
inelit
Ни чего вам сейчас класть ни куда не надо. Бинарник запускается его прямым вызовом. ELF родной формат для Linux.
По поводу предпочтений позже поговорим, сначала работоспособность. а потом всё остальное.
Автор: Davydt
Дата сообщения: 06.10.2012 21:11
inelit
Судя по вашим вопросам, вам проще будет действительно взять и установить тот же дебиан на флешку (именно установить, загрузившись с загрузочного носителя и запустив установку, там выбрать USB). Затем уже в него запихать ваши скрипты и mc стандартными средствами.

Ну или кто-нибудь тут вам четко по шагам напишет, как распаковать, какие файлы править и куда закидывать в конкретном live-hdd образе. Я к сожалению на это не готов, ибо не имею опыта изготовления таковых образов.

Страницы: 1

Предыдущая тема: Команды linux


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.