Сделать bin файл заданного размера?
dd if=/dev/zero of=1 bs=1 count=12345
Что это 

это у чела клаву заело...
хрен поймет, пишет всякую фигню, причем уже не первый раз....
PS Надо наверно для нениксовых пользователей пояснять действия и применимость их для данной платформы...
хрен поймет, пишет всякую фигню, причем уже не первый раз....
PS Надо наверно для нениксовых пользователей пояснять действия и применимость их для данной платформы...
делает файлик "1" с 12345 нулевых байтов 
а тебе что надо?
о!
надо так
read -p "size>" size && dd if=/dev/zero of=bin bs=1 count=${size}

а тебе что надо?
о!
надо так
read -p "size>" size && dd if=/dev/zero of=bin bs=1 count=${size}
самому написать?
Есть файл iso 300 мегов, нужно из него сделать bin заданного размера >300.
Вопрос как?
Вопрос как?
Даже не знаю с какого края начать прогать 

Под винды.
так тебе не случайный файл, а образ перелить из одного формата в другой?
маунтишь и делаешь копию...разве не так?
а зачем >300 ?
ну кинуть на него ченить непонятное типа .dll с произвольным контентом
маунтишь и делаешь копию...разве не так?
а зачем >300 ?
ну кинуть на него ченить непонятное типа .dll с произвольным контентом
Да ты что, а можешь показать в каком там месте можно задать размер получаемого файла?
вначале напихай в исошник какой-нибудь ерунды, затем конвертируй
Это и ежу понятно только проблемма в том что я не знаю как корелирует величина файла добавленного в исошник или бинник и окончательный размер файла.
метод научного тыка?
Попробывал, уж больно это натряжное занятие так как подгонять надо до байтно.
подсказка: тренироваться на файлах размером ~1Kb, а не ~300Mb
Ну как бы тоже достаточно тупо.
Может тогда кто знает где про этот самый bin почитать можно, а то несовсем ясно почему допустим файл iso весит 300 мегов а переконвертированый в bin 600.
Может тогда кто знает где про этот самый bin почитать можно, а то несовсем ясно почему допустим файл iso весит 300 мегов а переконвертированый в bin 600.
дай свой исо я тоже хочу попробовать =)
Не может этот bin 600 весить. Максимум - 300 * (2352 + 96) / 2048.
ЗЫ: это при условии, что iso был не в сжатом состоянии. Вроде как мне однажды утверждали возможность такого - в таком случае, однозначно предсказать по размеру iso размер bin невозможно.
ЗЫ: это при условии, что iso был не в сжатом состоянии. Вроде как мне однажды утверждали возможность такого - в таком случае, однозначно предсказать по размеру iso размер bin невозможно.
Проблемма еще заключается в том что у меня ее нет, поэтому нужет четкий метод как добитцо желаемого. Могу разве что размеры сказать
616 494 480 байт
616 165 200 байт
616 494 480 байт
616 165 200 байт
хм, и как тогда проверить предложенный способ если неначем?
Ну дик если будет способ сделать из одного файла bin другой с разнецей в 329280 байт то этот метод скорее всего будет пригодет
Точно наврал, всетаки 500 и 600 но тоже разница не маленькая, а где ты эти цифирки взял?
Пример такой.
есть iso
чтобы ее перевести использовалась прога winiso
при конвертировании iso в bin последний был в 1.14(примерно) раз больше.
следовательно чтобы получить из iso bin задаонного размера X надо:
добавить в исошку столько говна, чтобы ее размер стал равен Х/1.14
после этого эту исошку перевести в bin.
цифры вообще могут отличаться....
есть iso
чтобы ее перевести использовалась прога winiso
при конвертировании iso в bin последний был в 1.14(примерно) раз больше.
следовательно чтобы получить из iso bin задаонного размера X надо:
добавить в исошку столько говна, чтобы ее размер стал равен Х/1.14
после этого эту исошку перевести в bin.
цифры вообще могут отличаться....
цыфири я взял из man cdrecord, очевидно, это сандарт cd9660.
Стандартный размер блока - 2048 байт, но это в iso, в чистом виде на болванку дописывается ещё 400 байт всяких контрольных сумм на каждый блок - отсюда и 20% разницы в размерах образов.
Стандартный размер блока - 2048 байт, но это в iso, в чистом виде на болванку дописывается ещё 400 байт всяких контрольных сумм на каждый блок - отсюда и 20% разницы в размерах образов.
Откуда вообще возникла такая странная задача - получить образ диска строго фиксированного размера ?
И не подойдет ли вариант дописать его нулями до требуемого размера ?
И не подойдет ли вариант дописать его нулями до требуемого размера ?

у меня такое чуство что если вконце дописать что угодно то всё будет работать как надо.
опередил
что-то я ещё не проснулся.
опередил
что-то я ещё не проснулся.
Откуда вообще возникла такая странная задача - получить образ диска строго фиксированного размера ?Есть прога для которой нужно точное совпадение размеров двух файлов.
И не подойдет ли вариант дописать его нулями до требуемого размера ?Как это сделать, может и подойдет?
Кстати если сделать bin сразу с помощью UltraIso то получается
616,141,680 Если же сначало Isoшник а потом переконвертировать в bin с Помощью WinIso то получается
616,494,480 интересно это глюк, или всетаки странность формата?
616,141,680 Если же сначало Isoшник а потом переконвертировать в bin с Помощью WinIso то получается
616,494,480 интересно это глюк, или всетаки странность формата?
Ну так кто, нибуть знает как попсать нулями файл?
можно сделать файл любого размера вплоть до 4Гб.
Работает максимально быстро - Ничего сама не пишет, все средствами ОС.
Под семейством 9х просто переписывается FAT (в конце файла данные, как они были на диске,т.е. мусор, инфа из удаленных файлов и т.д. под семейством NT ОС еще заполняет новое пространство нулями.
Использует фичу (?) винды:
условный код:
Все
После такого кода файл становится нужного размера.
Работает максимально быстро - Ничего сама не пишет, все средствами ОС.
Под семейством 9х просто переписывается FAT (в конце файла данные, как они были на диске,т.е. мусор, инфа из удаленных файлов и т.д. под семейством NT ОС еще заполняет новое пространство нулями.
Использует фичу (?) винды:
условный код:
handle = fopen(filename, "w");
fseek(handle, newSize);
if (oldSize >= newSize) then
ftruncate(handle);
else
fwrite(handle, "\0");
fclose(handle);
Все

После такого кода файл становится нужного размера.
Супер, просто нет слов. 

Работает очень быстро на NTFS (оно в принципе не может так быстро писать на диск) и очень медленно на FAT16/32 (видимо нули прописывает).
А вот про поведение Win9x впервые узнал - надо поэкспериментировать, только где её сейчас ставить, кроме как на VMWare...
А вот про поведение Win9x впервые узнал - надо поэкспериментировать, только где её сейчас ставить, кроме как на VMWare...
Оставить комментарий
timefim
Какой прогой можно?