Есть два способа установки при загрузке с карты памяти USB. Первый предназначен для установки полностью из сети. Во втором образ CD также копируется на карту памяти USB и затем используется как источник пакетов, возможно совместно с сервером-зеркалом. Второй способ используется чаще.
Для использования первого метода установки вам нужно скачать образ программы установки из каталога netboot (о том, где этот каталог см. Раздел 4.2.1, «Где искать установочные образы») и воспользоваться «гибким способом», описанном ниже, для копирования файлов на карту памяти USB.
Установочные образы для второго способа установки можно найти в каталоге hd-media, а для копирования образа использовать, или «простой способ» или «гибкий способ». Для этого способа установки также потребуется скачать CD-образ. Установочный образ и CD-образ должны быть одного выпуска debian-installer. Если разных выпусков, то, вероятно, вы получите ошибки [4] при установке.
Для подготовки карты памяти USB вам нужна работающая система GNU/Linux с поддержкой USB. В этой системе карта памяти USB должна автоматически распознаваться при вставке. Если нет, то убедитесь, что загружен модуль ядра usb-storage. Когда USB-карта вставлена, то она доступна в системе как устройство с именем /dev/sdX, где «X» — это буква из диапазона a-z. Вы можете определить, какое устройство появилось после вставке карты USB запустив команду dmesg. Также выключите защиту от записи на карту.
Процедура, описанная в этом разделе, уничтожит все данные на устройстве! Не ошибитесь в названии устройства карты памяти USB. Если вы укажите не то устройство, это может привести к полной потере информации где-то ещё, например, на жёстком диске.
Заметим, что карта памяти USB должна быть как минимум 256 МБ (установка на меньший размер возможна после прочтения Раздел 4.3.2, «Копирование файлов — гибкий путь»).
Существует файл "всё-в-одном" — hd-media/boot.img.gz, который содержит все файлы установки (включая ядро) , а также syslinux и его файл настройки.
Заметим, что хотя этот метод удобен, он имеет большой недостаток: логический размер устройства ограничен 256 МБ, даже если ёмкость карты памяти USB гораздо больше. Вам нужно переразметить карту USB и создать новые файловые системы, чтобы снова получить всё пространство, если вы хотите использовать его для другой цели. Вторым недостатком является то, что вы не можете скопировать полный CD-образ на карту памяти USB,а только CD-образы меньшего размера, например businesscard или netinst.
Чтобы использовать образ, просто распакуйте его прямо на карту памяти USB:
# zcat boot.img.gz > /dev/sdX
После этого, смонтируйте карту памяти USB (mount /dev/), которая теперь имеет файловую систему FAT и скопируйте на неё ISO-образ Debian netinst или businesscard. Размонтируйте устройство (sdX /mntumount /mnt) и всё готово.
Если вам хочется большей гибкости или вы просто хотите знать, что на самом деле происходит, то можете воспользоваться следующим методом записи файлов на карту памяти. Преимущество использования этого метода в том, что если ёмкость карты USB достаточно велика, то вы можете скопировать на неё полный образ CD ISO.
Мы покажем как использовать на карте памяти только первый раздел, а не всё устройство.
Since most USB sticks come pre-configured with a single FAT16 partition, you probably won't have to repartition or reformat the stick. If you have to do that anyway, use cfdisk or any other partitioning tool to create a FAT16 partition[5], and then create the filesystem using:
# mkdosfs /dev/sdX1
Take care that you use the correct device name for your USB stick. The mkdosfs command is contained in the dosfstools Debian package.
Для запуска ядра после загрузки с карты памяти USB, мы поместим на неё системный загрузчик. Хотя должен работать любой системный загрузчик (например, lilo), удобнее использовать syslinux, так как он использует раздел FAT16 и настраивается простым редактированием текстового файла. Для настройки системного загрузчика можно использовать любую операционную систему, которая поддерживает файловую систему FAT.
Чтобы поместить syslinux на раздел FAT16 карты памяти USB, установите в систему пакеты syslinux и mtools и введите
# syslinux /dev/sdX1
Ещё раз отметим: не ошибитесь в имени устройства. Раздел не должен быть смонтирован при запуске syslinux. Эта процедура записывает загрузочный сектор раздела и создаёт файл ldlinux.sys, который содержит код системного загрузчика.
Mount the partition (mount /dev/) and copy the following installer image files to the stick: sdX1 /mnt
vmlinuz or linux (kernel binary)
initrd.gz (initial ramdisk image)
You can choose between either the regular version or the graphical version of the installer. The latter can be found in the gtk subdirectory. If you want to rename the files, please note that syslinux can only process DOS (8.3) file names.
Next you should create a syslinux.cfg configuration file, which at a bare minimum should contain the following two lines (change the name of the kernel binary to «linux» if you used a netboot image):
default vmlinuz append initrd=initrd.gz
For the graphical installer you should add video=vesa:ywrap,mtrr vga=788 to the second line.
If you used an hd-media image, you should now copy a Debian ISO image[6] onto the stick. When you are done, unmount the USB memory stick (umount /mnt).
Если машина не хочет загружаться с карты памяти USB, то одной из причин может быть неправильная главная загрузочная запись (MBR). Чтобы исправить её, используйте команду install-mbr из пакета mbr:
# install-mbr /dev/sdX
[4] Сообщение об ошибке будет, скорее всего, говорить о ненайденных модулях ядра. Это означает, что версия модулей ядра udeb с образа CD отличается от версии запущенного ядра.
[5] Don't forget to set the «bootable» bootable flag.
[6] You can use either a businesscard, a netinst or a full CD image (see Раздел 4.1, «Официальный набор компакт-дисков Debian GNU/Linux»). Be sure to select one that fits. Note that the «netboot mini.iso» image is not usable for this purpose.