Pull to refresh

Comments 31

<sarcasm>

Зашёл посмотреть сколькими словами можно описать команду:

dd if=file.iso of=/dev/sdc

Понял что красноречию мне еще долго учится.)

</sarcasm>

Я еще короче это пишу

cp file.iso /dev/sdc

Только обычно еще sync добавляю, что бы знать когда уже вынимать флешку можно.

Не, ну так-то да, но есть нюанс. Даже два.

• status=progress —раньше надо было извращаться с kill USR1 в отдельном терминале.

• oflag=sync — нету в статье, а оно полезно. Дабы кэш записи не вводил в заблуждение.

Это Хабр или Ответы mail.ru?

Рассказываете очевиднейшие вещи, известные каждому, кто пользовался GNU/Linux хотя бы неделю.

С другой стороны, не все это помнят и знают, поэтому стоит напомнить. Например, дети, которые начинают осваивать линукс, не всегда понимают что и куда писать.

Например, дети

РКН тоже сначала говорил что это все забота о детях.

Просто для статей для новичков есть другие сайты. На них таких вопросов и ответов достаточно.

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

Я вот, например, всю жизнь делал так:
sudo watch -n 10 pkill -USR1 dd
а тут вот как оно оказалось.

Параметр status есть не везде (и появился сравнительно не так давно), а ваш метод универсальный.

С другой стороны, не все это помнят и знают, поэтому стоит напомнить.

т.е. если я сейчас загуглю, то больше нигде не смогу найти информации по dd?

Например, дети

Ну если ребёнок не в состоянии загуглить такое, то как он её здесь прочитает, где-то принудительно заставляют читать хабр?

Вроде без bs всё печально медленно идёт.
sudo dd if="./ubuntu-20.04.2.0-desktop-amd64.iso" of="/dev/sdb" bs=1M oflag=dsync status=progress 

Не претендую на истину, но разве bs не нужно подбирать под размер физического кластера чтобы он шел быстрее?

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

На флешках размер сектора обычно 512байт.

$ sudo fdisk -l /dev/sdc|awk -F/ '/I\/O/{print $3}'|awk -F: '{print $2}'
 512 bytes

Так что и bs=512 тут будет правильным.

и r_noise
Так что и bs=512 тут будет правильным.
Как скажете.

sudo dd if=/dev/urandom of="/dev/sdb" bs=1M oflag=dsync status=progress
16,1 MB/s
sudo dd if=/dev/urandom of="/dev/sdb" bs=512 oflag=dsync status=progress
314 kB/s
sudo dd if=/dev/urandom of="/dev/sdb" oflag=dsync status=progress
294 kB/s

Да, признаю свою ошибку... Ниже уже объснили.

Флешка только рапортует о том, что у неё сектор 512 байт, а вот реальный размер страниц флеш-памяти может быть и 4K. А сами страницы объединяются в блоки размера порядка 2М. Перезаписать страницу в блоке можно только стерев весь блок.
Так что если будете писать по 512 байт с выставлением флагов, запрещающих кэширование, то получите дичайший write amplification и тормоза.

Интересно, а как-то можно определить реальный размер страниц ФП конкретной флешки?

Программно — никак, особенно если это USB-флешка, где контроллер вносит свои коррективы. Просто писать блоками максимально возможного размера.

```После завершения работы dd в вашем распоряжении окажется USB-диск, с которого можно загрузиться. ```

Далеко не факт.

1) бывает несколько размет USB

2) бывают определенные проблемы с загрузчиком, так как есть разные способы загрузки с usb

3) сам дист при старте ядра, дальше может не грузится, так как будет ожидать например LABEL или чего то еще, в итоге все выпадет в корку

итд.

... кроме Windows 10

С последней, кстати, проблем вообще нет. Достаточно форматнуть флешку, скопировать файлы и выполнить заклинание по созданию загрузочного сектора.

Далеко не универсальный способ. Потому что не все БИОСы (или что вы там вместо них сейчас используете) понимают CDFS или UDF на USB накопителе.
Ещё слышал, что её имя сасшифровывают как Disk Destroyer xD

Давно уже закрузочные флешки выпекаю при помощи Multisystem - она и визуальная, и прогресс есть, и несколько разных образов сразу можно закинуть, и плюс-минус корректно распознаётся разными платами.

Насчёт '.. как Disk Destroyer' : я был в отпуске, а коллеге срочно надо было записать загрузочную флэшку с какой то Linux системой. Под рукой только рабочий ноутбук с Windows, есть инструкция, как там пользоваться dd. Прочитав её по диагонали, лёгким движением руки коллега убивает системный раздел на ноуте. Но флэшка не записана, притаскивают другой ноутбук, тоже с виндой и.. результат тот же: [s]крики, вопли, слезы[/s] флэшка пустая, ноут не грузится. Мораль проста: пользуясь такими инструментами, надо понимать, как оно работает. Кстати, починить загрузку win10 оказалось проще, чем winxp на старом ноуте, благо образ был менее 8 Гб.

UFO just landed and posted this here
Ventoy — сила. Столько времени сэкономил.

Ну что, написать вам нормальную статью, про ventoy его плагины и это вот всё?

Специально для меня одного - слишком жирно ) Для всех - в самый раз. Пишите.

Зы. Кому надо iPXE - смотрите на fog project https://fogproject.org/download

Развертываю им по сети ОСи, гружу live-cd etc.

Умеет развертывать образ ОС большого размера на раздел диска меньшего размера.

Какая навороченная фигувина!

Sign up to leave a comment.