Извлечение файлов SFX в Linux

18

Я пытаюсь извлечь файл SFX под Linux Mint 15 (64 бит), но он не работает. Я сделал chmod + x для файла и попытался запустить его как скрипт без удачи (это выдает ошибку, что такого файла или каталога нет. Что интересно, это работало для меня, когда я работал под управлением Linux Mint 14 (64 бит). Я нашел статью, в которой упоминается поддержка glibc и как более новые дистрибутивы удалили 32-битные двоичные файлы glibc, но я не совсем уверен, что это точно в моем случае, так как я не использую RHEL.

РЕДАКТИРОВАТЬ: я забыл упомянуть, что я попробовал решение, опубликованное в этой статье, но это не решило мою проблему.

Я также попытался использовать 7z, 7za, unzip и unzipsfx, но безуспешно. unzipsfx выдает мне ошибку «unzipsfx: я не могу найти себя! [unzipsfx]», которую я нахожу довольно странной.

Небольшое примечание: sfx использует шесть других архивов в формате rar. Я не имею дело с zip, 7z или любым другим подобным форматом.

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

Аарон
источник
2
так как вы говорите rar sfx, вы пробовали unrar? также проверьте формат версии вашего архива. если это новый RAR5 - это будет причиной, по которой ваши старые трюки не сработали.
Алекс П.
Спасибо, Алекс. Ваше предложение попробовать unrar сработало. Цифры, один двоичный файл, который я не пытался извлечь, заканчивает тем, что работал :)
Кстати, как мне проверить форматную версию архива? Я хочу посмотреть, имеют ли файлы новый формат, о котором вы говорили ...
перечислите содержимое архива с помощью unrar l archive.rarи формат версии будет в самом правом столбце. 2.9= RAR4, 5.0= RAR5
Алекс П.
Хорошо, спасибо. Это на самом деле 2.9, так что это не новый формат.
Аарон

Ответы:

18

Используется unrarдля извлечения файлов из архивов RAR SFX.

Как это: unrar x filename.sfx

Алекс П.
источник
Спасибо тебе и Алексу. Это работало нормально. Я не знаю, почему я не попробовал это первым. Я думаю, я был смущен тем, почему мой старый способ больше не работает.
Аарон
unrar -x {filename.sfx}
Федир РИХТИК
3
unrar x filename.sfx(без черты до х)
объятия
Просто для справки, это также работало для меня, используя версию unrar 4.20, установленную через macports на OSX, Mavericks 10.9.5,
drodbar
6

Для Linux Ubuntu 12.04 работает следующее:

$ chmod +x some_file.part1.sfx

$ ./some_file.part1.sfx
Артур Барсегян
источник
Это странно. Я использовал это в прошлом и только пару минут назад. Ubuntu 12.04 LTS modern.ie/en-us/virtualization-tools#downloads Здесь я получил файлы sfx (выберите Linux и архивы).
Артур Барсегян
Это должно быть возможно, если заголовок файла правильный (т.е. какой-то шебанг или двоичный файл). Ваш ответ подошел для обзора, я не слышал об этом, Google и нашел эту ссылку в Википедии.
Anthon
Я скачал один из файлов, могу, unrar -lи это исполняемый файл в соответствии с «файлом», но он не может быть запущен под Windows. Так что кажется, что есть несколько форматов, и я не думаю, что вы можете использовать свое решение, если у вас есть файл SFX, созданный для Windows. Кстати, это распаковывает что-то на 1% больше, чем файл SFX ...
Anthon
Ну, из заголовка этой темы «Извлечение файлов SFX в Linux» я понял, что речь идет об извлечении файлов SFX в Linux. Если я не ошибаюсь, в Windows RAR разбивает файлы на части, имеющие первый исполняемый файл (exe). Я не пытался создавать SFX-файлы в Windows, а затем распаковывать их в Linux. Но, по крайней мере, для некоторых SFX-архивов, упомянутый выше метод работает в Linux (по крайней мере, в Debian).
Артур Барсегян
Я предполагаю, что файл, если он будет выполнен исполняемым, извлечет содержимое. Я просто не хотел рисковать запуском такого неизвестного исполняемого файла, для которого я не видел источник в моей системе.
Anthon
4

В Nautilus (Обозреватель файлов) переименуйте часть .sfx в .rar, затем щелкните правой кнопкой мыши и извлеките. Или дважды щелкните для большего количества вариантов.

Валк
источник
4

Я сталкивался с подобной проблемой, и так как она не упоминалась, я решил поделиться ею здесь.

На Ubuntu 17.10 у меня есть следующий файл:

file file.rar 
file.rar: RAR archive data, v5

Попытка распаковать его, unrar x file.rarсказала мне, что это файл SFX:

unrar 0.0.1  Copyright (C) 2004  Ben Asselstine, Jeroen Dekkers
unknown archive type, only plain RAR 2.0 supported(normal and solid archives), SFX and Volumes are NOT supported!

Однако использование (отдельно от unrar) команды rar ( apt-get install rar) помогло мне:

rar x file.rar
Себастьян Мюллер
источник