Linux скопировать загрузочную флешку

создать копию загрузочной флешки

Есть загрузочная USB флешка, сделанная в Linux родными утилитами — mkfs.ext2, grub и т.д., которая выполняет определённые действия при загрузке с неё. На флешке только один раздел, созданный через fdisk (/dev/sdc1).

необходимо создать её копию (тоже загрузочную, конечно).

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

500Mb, а образ получается

1Gb), поэтому хотелось бы сделать поменьше.

Как можно создать копию этой флешки, не делая её полный образ через dd? Очевидно надо как-то скопировать загрузочные области, и файлы, но не соображу как?

Re: создать копию загрузочной флешки

>Очевидно надо как-то скопировать загрузочные области, и файлы, но не соображу как?

Не знаю, что тут соображать, делайте ещё одну флешку через fdisk, mkfs.ext2, grub, а файлы копируйте через «сp -a».

Re: создать копию загрузочной флешки

флешка была создана на другой системе, там grub-install был специфический, я не могу использовать свой grub-install для создания загрузочной области. Поэтому и вопрос — как правильно скопировать загрузочные области с флешки через dd.

Re: создать копию загрузочной флешки

Выходной поток dd сжимать в конвеере в файл.tar.gz, а на целевой флэшке декомпрессировать.

Re: создать копию загрузочной флешки

всё равно это довольно плохо сожмёт образ, до

60% от начального объёма в лучшем случае

Re: создать копию загрузочной флешки

Re: создать копию загрузочной флешки

спасибо за наводку, но установка новых программ крайне нежелательна. Эти образы мне надо будет отослать, и на той стороне никто ничего ставить не будет 100%, поэтому хотелось бы обойтись стандартным cp и dd.

Re: создать копию загрузочной флешки

при помощи dd сохраняем загрузчик (512байт), затем при помощи cp копируем содержимое флешки. Далее можно еще и сжать (лучше всего сжимает 7z, правда, медленно).

Re: создать копию загрузочной флешки

1. Монтируем флешку
2. При помощи dd создаем на ней файл, забитый нулями (пока место не кончится).
3. Удаляем его командой rm
4. Снимаем образ флешки при помощи dd + bzip2
5. .
6. PROFIT.

Re: создать копию загрузочной флешки

>лучше всего сжимает 7z, правда, медленно
Да ну?

Источник

USB flash installation medium (Русский)

На этой странице описаны различные способы создания загрузочной флешки с Arch Linux как для загрузки в системах с BIOS, так и с UEFI. Результатом будет система LiveUSB (подобная LiveCD), которую можно будет использовать для установки Arch Linux, обслуживания системы или в целях восстановления. Обратите внимание, что после выключения все изменения на носителе будут отмены из-за особенностей SquashFS.

Читайте также:  Как удалить лицензию windows 10 с ноутбука

Если вам нужно запускать Arch Linux с USB-накопителя с сохранением изменений, посмотрите статью Installing Arch Linux on a USB key. Если вы хотите использовать загрузочный USB-носитель Arch Linux в целях восстановления, посмотрите статью Cмена суперпользователя.

Contents

Создание загрузочного USB для BIOS и UEFI

Используя автоматические инструменты

В GNU/Linux

Через dd

Выполните следующую команду, заменив /dev/sdx на ваше устройство, например, на /dev/sdb . (Не добавляйте номер раздела, т.е. не используйте что-то вроде /dev/sdb1 )

Для получения дополнительной информации о dd, а также о oflag=sync смотрите соответственно dd(1) и dd(1) § DESCRIPTION .

В Windows

Через Rufus

Rufus — универсальная утилита для записи ISO на USB-накопители. Просто выберите образ Arch Linux, USB-накопитель, который вы хотите сделать загрузочным, и нажмите СТАРТ.

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

Этот способ не требует каких-либо обходных решений и прост как dd в Linux. Вам нужно только скачать образ Arch Linux и использовать утилиту USBwriter с локальными правами администратора для записи USB флешки.

Через win32diskimager

win32diskimager — инструмент для записи iso на USB с GUI для Windows. Просто выберите ваш iso образ и букву USB-носителя (вам может потребоваться сначала отформатировать его для назначения буквы), потом нажмите Write.

Через Cygwin

Убедитесь, что установка Cygwin содержит пакет dd .

Положите образ в ваш домашний каталог:

Запустите cygwin от администратора (это необходимо cygwin’y для доступа к железу). Для записи на USB-носитель выполните следующую команду:

где образ.iso — путь до образа iso без директории cygwin , а \\.\x: — ваша флешка, где x это буква, присвоенная устройству windows, например, \\.\d: .

В Cygwin 6.0 узнайте имя устройства с помощью:

и запишите образ ISO, согласно выходной информации предыдущей команды. Например:

через dd для Windows

GPL версия утилиты dd для Windows доступна на сайте http://www.chrysocome.net/dd. Преимуществом над Cygwin является меньший размер. Используйте ее, как показано в инструкциях для Cygwin выше.

Для начала скачайте последнюю версию dd для Windows. После загрузки распакуйте содержимое архива в каталог Загрузки или в другое место.

Теперь запустите командную строку от администратора. Далее смените директорию с помощью ( cd ) на Загрузки.

Если ISO Arch Linux в другом месте, укажите полный путь до него. Для удобства вы можете поместить образ Arch Linux в ту же папку, что и исполняемый файл dd. Основной формат команды будет выглядеть следующим образом.

Замените все пустые места (обозначенные «x») правильной датой и правильной буквой диска. Вот полный пример.

The factual accuracy of this article or section is disputed.

Вы можете узнать физический номер вводом wmic diskdrive list brief в комадную строку или с dd —list .

Любые окна Проводника должны быть закрыты или dd сообщит об ошибке.

В macOS

Сначала, вам нужно идентифицировать USB-устройство. Откройте /Applications/Utilities/Terminal и перечислите все устройства хранения с помощью команды:

Ваше USB-устройство появится, как /dev/disk2 (external, physical) . Убедитесь, что это устройство, которое вы хотите использовать, проверив его имя и размер, а затем используйте его идентификатор для приведенных ниже команд вместо /dev/diskX.

Читайте также:  Бэкап удаленного сервера linux

USB-устройства обычно автомонтируются в macOS, и вам необходимо отключить его (не извлечь) перед записью через dd . В Терминале выполните:

Теперь скопируйте ISO образ на устройство. Команда dd похожа на версию dd в Linux, но заметьте, что ‘r’ перед ‘disk’ обозначает режим raw, который делает процесс намного быстрее:

Обратите внимание, что в diskX здесь не включается суффикс s1 , иначе USB-носитель будет загружаться только в режиме UEFI, а не в legacy. После завершения macOS может жаловаться, что «The disk you inserted was not readable by this computer» («Вставленный диск не читается этим компьютером»). Выберите ‘Игнорировать’. Устройство USB будет загрузочным.

Используя ручное форматирование

В GNU/Linux

Это способ сложнее, чем запись напрямую через dd . Но преимуществом этого способа — сохранение возможности хранение прочей информации на флешки (ISO образ устанавливается в определенный раздел уже размеченного устройства без изменения оставшихся).

  • Убедитесь, что пакет syslinux установлен.
  • Если вы еще не разметили накопитель, то создайте таблицу разделов и/или разделы прежде чем продолжить. Раздел /dev/sdXn должен быть отформатирован в FAT32.
  • Смонтируйте ISO-образ, файловую систему FAT32, расположенную на USB-носителе, а потом скопируйте содержимое ISO образа на накопитель. Затем отмонтируйте образ ISO. Раздел FAT32 должен остаться примонтированным (он будет использоваться в последующих шагах). Например:

Для загрузки требуется либо метка, либо UUID для выбора раздела для загрузки. По умолчанию используется метка ARCH_YYYYMM (с соответствующим годом и месяцем). Поэтому необходимо правильно установить метку раздела, например, используя gparted. Кроме того, вы можете изменить это поведение, отредактировав строки, заканчивающиеся на archisolabel=ARCH_YYYYMM в файле /mnt/usb/arch/boot/syslinux/archiso_sys.cfg (для загрузки с BIOS) и в /mnt/usb/loader/entries/archiso-x86_64.conf (для загрузки с UEFI). Для использования UUID замените эти части строк на archisodevice=/dev/disk/by-uuid/ВАШ-UUID . UUID можно узнать с помощью blkid -o value -s UUID /dev/sdXn .

Syslinux уже предустановлен в /mnt/usb/arch/boot/syslinux . Установите его полностью в эту папку, следуя инструкциям в Syslinux#Ручная установка.

В Windows

  • Разметку и форматирование USB-устройства выполните, используя Rufus. Выберите схему разделов MBR для BIOS и UEFI и файловую систему FAT32. Уберите галку с пунктов «Создать загрузочный диск используя ISO-образ» и «Создать расширенную метку и значок устройства».
  • Измените Метку устройства USB-носителя X: на МЕТКУ archisolabel= , находящейся в \loader\entries\archiso-x86_64.conf . Этот шаг необходим для официального ISO (Archiso). Этот шаг также можно было выполнить через Rufus, на предыдущем шаге «разбиение и форматирование».
  • Распакуйте ISO (похоже на распаковку архива ZIP) на флешку, используя 7-Zip.
  • Скачайте официальный бинарник Syslinux 6.xx (архив zip) с https://www.kernel.org/pub/linux/utils/boot/syslinux/ и извлеките его. Версия Syslinux желательно должна совпадать с версией в образе ISO.
  • Запустите следующие команды (в cmd Windows от администратора):
  • Установите Syslinux на USB (используйте win64\syslinux64.exe для x64 Windows):

Другие способы для систем с BIOS

В GNU/Linux

Через мультизагрузочную флешку

Этот способ позволяет запускать несколько ISO с одного USB-носителя, включая archiso. Обновление ISO образа на USB-накопителе здесь делается проще, чем в большинстве других методах. Для получения дополнительной информации смотрите Multiboot USB drive.

Через GNOME Disk Utility

В дистрибутивах Linux с GNOME легко можно сделать liveCD через nautilus и gnome-disk-utility . Просто нажмите правой кнопкой мыши на файл .iso и выберите Open With Disk Image Writer. Когда откроется GNOME Disk Utility, укажите флешку в Destination и нажмите Start Restoring.

Читайте также:  Kali linux rtl sdr scanner

Создание USB-ZIP накопителя

Некоторые старые системы с BIOS поддерживают загрузку только с USB-ZIP носителя. Этот способ позволяет вам все еще загружаться с накопителя USB-HDD.

  • Скачайте syslinux и mtools с официальных репозиториев.
  • Найдите вашу флешку с помощью lsblk .
  • Введите mkdiskimage -4 /dev/sdx 0 64 32 (заменив x на букву вашего устройства). Это займет некоторое время.

Теперь выполняйте инструкции из раздела ручного форматирования выше. Раздел будет /dev/sdx4 из-за особенностей работы ZIP-дисков.

Через UNetbootin

UNetbootin можно использовать на любом дистрибутиве Linux или Windows для копирования iso на USB. Но он перезаписывает syslinux.cfg , поэтому созданная загрузочная флешка не правильно загружается. Из-за этого Unetbootin не рекомендуется — пожалуйста используйте dd или один из других описанных здесь способов.

В строке /dev/sdx1 вы должны заменить x на первую свободную букву т.е. на букву, которая следует за последней использованой в системе, на которую устанавливаете Arch Linux (например, если у вас два жестких диска, используйте c .). Вы можете сделать это изменение во время первой фазы загрузки, нажав Tab , когда отображается меню.

В Windows

Через Flashnul

flashnul — утилита для проверки работоспособности и обслуживания Flash-памяти (USB-Flash, IDE-Flash, SecureDigital, MMC, MemoryStick, SmartMedia, XD, CompactFlash и т.д.).

В командной строке вызовите flashnul с параметром -p и определите, какой индекс устройства является вашим USB-накопителем, например:

Когда вы определили, какое вам нужно устройство, вы можете записать образ на него, вызвав flashnul с индексом устройства, -L и с путем к образу, например:

Если вы действительно уверены, что хотите записать данные, введите yes, а затем немного подождите, пока они будут записываться. Если вы получили ошибку «Отказано в доступе», закройте все открытые окна Проводника.

Если вы используете Vista или Win7, вы должны открыть консоль от имени администратора, иначе flashnul не сможет открыть флешку как блочное устройство и сможет писать только через дескриптор диска.

Загрузка установочного носителя из ОЗУ

This article or section is a candidate for merging with Multiboot USB drive#Using Syslinux and memdisk.

Этот способ использует Syslinux и Ramdisk (MEMDISK) для загрузки всего образа Arch Linux в ОЗУ. Поскольку он будет работать полностью из оперативной памяти, вам необходимо убедиться, что система, на которую вы будете его устанавливать, имеет достаточный объем. Минимальное количество ОЗУ — между 500 MB и 1 GB. Этого должно хватить для MEMDISK на основе Arch Linux.

Для получения дополнительной информации о системных требованиях Arch Linux, а также о требованиях для MEMDISK соответственно смотрите Руководство по установке и это. Для справки, вот тема форума об этом.

Подготовка флэш-накопителя USB

Отформатируйте USB-носитель в FAT32. Затем создайте следующие папки на нем.

Копирование нужных файлов на флешку

Далее скопируйте ISO, с которого вы хотите загружаться, в каталог Boot/ISOs . После этого извлеките следующие файлы из последней версии syslinux отсюда и скопируйте их в следующие каталоги.

  • ./win32/syslinux.exe на Рабочий стол или в Загрузки вашей системы.
  • ./memdisk/memdisk в каталог Settings на вашей флешки.
Создание файла настроек

После копирования необходимых файлов перейдите на USB-накопителе в /boot/Settings и создайте файл syslinux.cfg .

Для получения дополнительной информации о Syslinux смотрите статью Arch Wiki.

Источник

Оцените статью