Информационные технологииStfw.Ru 🔍

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

🕛 12.09.2006, 12:04
Есть задача: поставить Linux на флэшку. Зачем? Да просто так. Чтобы он там был. А если серьезно, то это очень полезная вещь. Всегда под рукой полноценная ОС с очень неплохим набором софта, с максимальными привилегиями (это если вас ущемляют в правах амины). А это значит где угодно можно посмотреть кино, послушать музыку, выйти в интернет.

Средства

Для того, чтобы поставить Linux на флэшку вам понадобится :
Собственно комп с возможностью запуска с USB носителя (будь то USB-HDD, USB-ZIP, USB-и т.д). Так же желательно узнать, умеет ли ваш BIOS грузиться с флэшки, если там не установлена файловая система FAT.
Подключение к интернету.
Флэшка, размерностью не менее 64 метра (такие сейчас даже трудно купить).
Linux (мой выбор пал на DSL - Damn Small Linux, кстати на сайте можно купить и flash'ку с предустановленным на нее линуксом).
Эмулятор 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.

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

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

http://distro.ibiblio.org/pub/linux/distributions/damnsmall/archive/frugal_usb.tar.gz

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

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

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

Unix   Теги:

Читать IT-новости в Telegram
Информационные технологии
Мы в соцсетях ✉