Как загрузить образ Linux, разархивировать его и записать его на SD-карту в одной строке?

63
7

Я работаю с живым изображением Linux на маленьком флеш-накопителе USB и хотел бы с него сфотографировать SD-карту. Изображение зашифровано уже слишком большим для моего флеш-накопителя, поэтому я не могу записать его на диск. У меня достаточно ОЗУ для буферизации сжатого и несжатого изображения, поэтому мое решение было таким:

$ sudo mount -t tmpfs -o size=2.5G none /mnt 
$ cd /mnt && wget http://example.com/linux.zip
$ cd /mnt && unzip linux.zip
$ sudo dd if=/mnt/linux.img of=/dev/sdb bs=4M

Это кажется громоздким. Как написать изображение на SD-карту, распаковать из архива, загрузить из Интернета, не записывая ничего на диск в одной строке?

спросил(а) 2021-01-25T17:07:45+03:00 4 месяца, 4 недели назад
1
Решение
117

Попробуйте следующее: wget http://example.com/linux.zip -q -O -| funzip | dd of=/dev/sdb bs=4M wget http://example.com/linux.zip -q -O -| funzip | dd of=/dev/sdb bs=4M

ответил(а) 2021-01-25T17:07:45+03:00 4 месяца, 4 недели назад
-4

Если в вашем живом изображении есть curl, funzip и dd, то должно работать следующее:

$ curl -L http://example.com/linux.zip | funzip | dd of=/dev/sdb bs=4M

ответил(а) 2021-01-25T17:07:45+03:00 4 месяца, 4 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема