Ставим Linux на USB Flash Drive

Тема в разделе "Десктопный Linux", создана пользователем farafay, 13 сен 2009.

Статус темы:
Закрыта.
Модераторы: Цукер
  1. farafay

    farafay Создатель

    Регистр.:
    14 июл 2009
    Сообщения:
    13
    Симпатии:
    8
    Ставим Linux на USB Flash Drive
    Для того, чтобы поставить Linux на флэшку вам понадобится :

    1. Собственно комп с возможностью запуска с USB носителя (будь то USB-HDD, USB-ZIP, USB-и т.д). Так же желательно узнать, умеет ли ваш BIOS грузиться с флэшки, если там не установлена файловая система FAT.
    2. Подключение к интернету.
    3. Флэшка, размерностью не менее 64 метра (такие сейчас даже трудно купить).
    4. Linux (мой выбор пал на DSL - Damn Small Linux, кстати на сайте можно купить и flash'ку с предустановленным на нее линуксом).
    5. Эмулятор qemu (лучше все тестировать на нем).

    Для начала с официального сайта скачаем Damn Small Linux. Качать лучше самый последний стабильный релиз (ISO образ, запускаемый с CDROM).
    Затем скачаем эмулятор (мною использовалась версия 0.8.0 - тут есть поддержка usb устройств).
    Устанавливаем его. Данный эмулятор очень хорош тем, что не транслирует команды процессору, а эмулирует архитектуру целевой машины. Также он снабжен исчерпывающей документацией по установке и настройке.
    Вставляем флэшку в usb порт. Теперь нам надо узнать как она подключилась, чтобы в последствие сказать qemu о том, где искать usb-устройство.


    Код:
    ls /proc/bus/usb
    должны получить что то типа :
    Код:
    001/ 002/ devices
    Для того, чтобы получить полный доступ к usb-устройствам, необходимо быть root'ом. Нам понадобиться запустить qemu в режиме монитора для определения списка подключенных usb-устройств. Делается это так:


    Код:
    qemu -m 256 -cdrom /home/lamo/installs/system/distr/dsl-1.0.1.iso -boot d -monitor stdio
    Мы указали stdio в качестве монитора (по сути консоли общения) - используем стандартный ввод/вывод.

    /home/lamo/installs/system/distr/dsl-1.0.1.iso - путь к iso-образу устанавливаемого линукса.
    -m 256 говорим, что на виртуальной машине будет 256 МБ ОЗУ (все зависит от вашей системы).
    -boot -d опция говорит о том, что надо грузиться с cdrom.


    Код:
    (qemu) info usbhost
    Вы должны получить что - то вроде этого:
    Код:
    Device 2.1, speed 480 Mb/s
    Hub: USB device 0000:0000, EHCI Host Controller
    Device 2.3, speed 480 Mb/s
    Class 00: USB device 0ea0:2168, Flash Disk
    Device 1.1, speed 12 Mb/s
    Hub: USB device 0000:0000, OHCI Host Controller
    Затем мы добавляем эмулятору наше устройство. В гостевой системе должно появиться сообщение о том, что добавлено новое устройство. В главной же оно может отключиться. Запускаем эмулятор:

    Код:
    qemu -m 256 -cdrom /home/lamo/installs/system/distr/dsl-1.0.1.iso -boot d -usb -usbdevice host:0ea0:2168 -monitor stdio
    Опции:
    -usb говорит эмулятору о том, что нужно включить поддержку usb.
    -usbdevice host:0ea0:2168 говорит эмулятору, где находится флэшка.

    Первый этап выполнен. Вы получили запущенный с LiveCD damn small linux.

    Теперь о том, как устанавливать. Мой компьютер не поддерживает загрузку непосредственно с флэшки (в BIOS-е нет девайса для загрузки называемого usb-flash), поэтому нам необходимо изменить геометрию флэшки (если хотите, то можно с помощь циркуля и линейки) для того, чтобы наше устройство для компьютера было как usb-Zip или usb-Hdd.

    Есть два пути.

    1. В google.com можно найти много всякого софта.
    2. Средствами, которые предоставляет DSL.

    Затем нам необходимо скачать утилиту для установки:

    http://hacker-pro.net/forum/redirec...ributions/damnsmall/archive/frugal_usb.tar.gz

    Распаковываем архив, и запускаем скрипт для установки:

    tar -C / -zxf frugal_usb.tar.gz
    sudo ./frugal_usb.sh

    Отвечаем на некоторые вопросы, и форматируется флэшка, перезагружаем комп - готово.
     
    mailoff нравится это.
  2. mailoff

    mailoff Писатель

    Регистр.:
    6 окт 2009
    Сообщения:
    4
    Симпатии:
    0
    спасибо за мануал :)
     
Статус темы:
Закрыта.