Как создать файл * .run ./*. Bin в дистрибутивах на основе Debian

AMD распространяет драйверы Catalyst как файл * .run, который при запуске извлекает сам, строит, а затем устанавливает драйвер . Вещь – драйвер нуждается в патче для его успешного построения. Я хочу применить патч и закрепить или заново создать файл запуска, чтобы мне не пришлось делать это в следующий раз.

Btw, файл запуска не является чисто командами сценариев оболочки, он имеет раздел с двоичным кодом, который, возможно, воссоздает файлы и папки при извлечении.

AMD распространяет исполняемый файл, который вы должны выполнять от имени root для выполнения установки. Его имя и то, что заканчивается это имя, в значительной степени не имеет значения.

Этот файл, являющийся исполняемым файлом, может работать любым способом, который AMD решит заставить его работать. Это может быть сценарий оболочки (я понимаю, что это так) или бинарный исполняемый файл или теоретически что-либо еще исполняемое. Таким образом, на самом деле не существует обобщенного способа редактирования такой вещи при сохранении ее структуры.

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

Да, такие сценарии, поставляемые поставщиками, которые намереваются устанавливать программное обеспечение, выгружая систему, обычно включают средство извлечения двоичного архива (например, tar ), который закодирован и встроен в сценарий оболочки. Это то, что вы подразумеваете под словом «у него есть раздел с двоичным кодом».

Опять же, способ, которым поставщик решил кодировать и вставлять этот архив, абсолютно произволен. Это может быть tar-файл с кодировкой base64 или что-то еще.

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

Итог: этот тип специального способа установки программного обеспечения плохо структурирован, как пакет Debian или RPM, и не может управляться с одинаковой регулярностью и стандартизацией.

Программное обеспечение для использования iself.sh, распространяемое megastep, которое загружается как makeelf.run. Вот URL-адрес для загрузки пакета: http://stephanepeter.com/makeself/ , где объясняются варианты создания архива. Я использовал его для исправления файлов драйверов nvidia и воссоздания файла .run. Он выполнит существующую программу установки в архиве.