Хорошая программа с открытым исходным кодом / бесплатная программа для преобразования файла bz2 в ISO?

5041
Kryten

У меня есть очень большой файл bz2, который я хочу преобразовать в образ ISO. Есть ли хорошие программы с открытым исходным кодом / бесплатные программы, которые могут сделать это БЕЗ необходимости извлекать его в первую очередь?

РЕДАКТИРОВАТЬ: Когда я имею в виду «без необходимости сначала извлечь его», я имею в виду не нужно извлекать весь архив на мой жесткий диск, а затем преобразовать его в ISO.

1
Вы хотите поместить файл bz2 на компакт-диск или DVD в сжатом или разархивированном виде? Pekka 웃 14 лет назад 0
Нет, я хочу создать ISO, содержащий разархивированный архив bz2 (т.е. содержимое в ISO), а затем смонтировать ISO в виртуальную машину. Kryten 14 лет назад 0
Ах. Что ж, если вы работаете в Linux, вы можете собрать что-то вместе с bzip, передавая свои выходные данные в инструмент, который может создать ISO из пользовательского ввода. Вы можете попробовать и проверить инструменты генератора ISO, какие входные данные они принимают. Pekka 웃 14 лет назад 0
Что-нибудь подобное для Windows? Kryten 14 лет назад 0
@Alistair: Cygwin предоставляет среду Unix для Windows. http://www.cygwin.com/ ... инструменты, такие как bzip2 и tar и mkisofs / genisofs, доступны в менеджере пакетов. quack quixote 14 лет назад 0

3 ответа на вопрос

5
John T

Когда я имею в виду «без необходимости сначала извлекать его», я имею в виду не нужно извлекать весь архив на мой жесткий диск, а затем преобразовывать его в ISO.

Плохая новость: вам придется извлечь ее.

Хорошая новость: вам не нужно извлекать его на жесткий диск, вы можете сделать все это, отправив по каналу stdin, так что все это происходит в памяти (что, в основном, и делает конвертация).

Вам понадобится mkisofsи bzcat(или bzip2 -dc) оба могут быть установлены с Cygwin . Тогда это просто вопрос:

bzcat file.bz2 | mkisofs -o image.iso -stream-media-size #

где file.bz2находится ваш архив и #размер носителя в секторах.

Если ваш архив на самом деле является архивом TAR с расширением bzip, то что-то вроде этого было бы более подходящим:

tar --to-stdout xjf file.tar.bz2 | mkisofs -o image.iso -stream-media-size #
+1 спасибо за то, что выкинули хороший пример `mkisofs`. Я был немного хлопнул раньше и не мог добраться до этого. quack quixote 14 лет назад 1
2
William Hilsum

Нет!

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

Когда я имею в виду «без необходимости сначала извлекать его», я имею в виду не нужно извлекать весь архив на мой жесткий диск, а затем преобразовывать его в ISO. Kryten 14 лет назад 0
технически они упакованы в файл TAR (или другой формат архива), который затем BZipped. bzip2 не архивирует файлы, это просто формат сжатия потока. quack quixote 14 лет назад 0
0
quack quixote

Вы используете неправильный глагол. Вы конвертируете между форматами с похожими целями. Вы можете конвертировать BZ2 в GZip; Вы можете конвертировать TAR.BZ2 в ZIP или RAR или 7Z. ISO - это образ файловой системы, поэтому вам нужен инструмент, который создаст его для вас.

В этом случае у вас есть файл BZ2, и вы хотите ISO, содержащий этот файл BZ2. (Или же вы хотите, чтобы ISO содержал файл, который содержит образ BZ2; все зависит от того, что вы хотите.)

Образы ISO оказываются той же файловой системой, которая записана на CD и DVD, так что почти любое программное обеспечение для создания CD может создать ISO. (Ищите опцию «Сохранить образ на диске», когда вы будете готовы записать файлы. Не позволяйте Nero создавать для вас файл NRG; это не одно и то же.)

В частности, я рекомендую:

  • mkisofsили genisofsUnix инструменты для использования командной строки или сценариев;

  • ImgBurn, MagicISO или любой из нескольких других популярных создателей ISO-образов