На флешку можна записати завантажувальний образ дистрибутива Linux. Це можна зробити руками, а можна за допомогою допоміжних утиліт, таких як unetbootin. Але зараз розмова трохи про інше - про те, як встановити лінукс на флеш накопичувач для подальшого використання в ролі повноцінної системи на переносному hdd.
Такий варіант краще live-системи хоча б тому, що таку систему можна, як зазвичай, налаштовувати і змінювати, ставити нові пакети і т.д. Live-систему теж можна змінювати, але там складніше.
Перше питання - як встановити GRUB на флешку. Адже щоб завантажитися з флешки, треба, щоб вона була завантажувальної. Відповідь проста: так само, як і на звичайний жорсткий диск! Правда, у мене на цьому моменті виникла одна проблема. Зараз розповім докладніше.
У моєму домашньому комп'ютері два жорсткі диски (/ dev / sda, / dev / sdb). Флешка, відповідно, - / dev / sdc. Однак, GRUB не захотів встановлюватися на неї:
Оскільки граб бачить диски не як sda1 або sdb3, а як (hd0,0) і (hd1,2), то флешка в даному випадку повинна бути (hd2,0). Однак, GRUB її не побачив, хоча якщо при включенні комп'ютера, при появі GRUB-а перейти в консоль по "С", то він нормально бачить флешку як (hd2,0). Чим це обумовлено, не знаю.
Рішення я знайшов таке:
Створюємо файлову систему (краще reiserfs. Докладніше - нижче) на флешці, монтуємо її куди-небудь, наприклад в / mnt / flash і створюємо файл /mnt/flash/boot/grub/device.map з таким вмістом:
Замість / dev / sdc впишіть пристрій флешки, як воно бачиться у вашій системі.
Чому саме reiserfs? Тому-що якщо у вас флешка не великого розміру і ви отформатіруете її в ext2, то вам може не вистачити иноді і збільшити їх кількість не вийде. У reiserfs такої проблеми не буде.
Після цього встановлюємо завантажувач на флешку:
Щоб переконатися, що граб дійсно встановився, подивіться в каталог / mnt / flash / boot / grub.
Усе! Найважливіший етап пройдено - ваша флешка ВЖЕ завантажувальна, тобто якщо ви перезавантажте комп'ютер, виберіть завантаження з USB-HDD, то побачите консоль граба. Залишилася суцільна банальщина (за невеликим винятком) - встановити Linux на флешку.
Що тепер потрібно: встановити на флешку сам лінукс (я буду пояснювати на прикладі Gentoo Linux), не забути встановити ядро, пароль для рута, чуйна підправити / etc / fstab і створити конфіг для GRUB.
Все, ви в новій Gentoo. Можете її налаштовувати і встановлювати пакети. Хоча, краще звичайно, спершу задати пас руту командою passwd і встановити ядро:
Ах так, не забудьте перед цим прописати DNS сервер, щоб не було проблем з дозволом імен. Я використовую паблік 8.8.8.8, тому що ДНС мого смугастого провайдера постійно дохне:
Після установки ядра, його вихідні коди будуть лежати десь в / usr / src / linux *. Залишилося його конфігурувати і зібрати:
Як конфігурація ядро, я розповідати не буду, тому що це тема зовсім іншої статті і до флешка не відноситься. Скажу лише, що ніяких особливих моментів немає, я навіть initram не використовую, конфиг у мене практично стандартний, хіба що файлову систему reiserfs (адже флешка відформатована в ній) треба вкомпіліть в ядро ( "<*>", але не "<М>". Це треба, якщо ви теж не використовуєте initram). Однак, якщо ви плануєте підключати флешку до різних комп'ютерів, подбайте про підтримку великої кількості обладнання в ядрі.
Після складання копіюємо свіже ядро в / boot
Тепер створимо menu.lst для GRUB. У мене він виглядає так:
Одна важлива деталь - rootdelay. Без rootdelay = 10 ви можете отримати при завантаженні Кернел паник з помилкою про root device і будете думати, що ядро просто не бачить вашу флешку, спробуєте знайти для неї дрова, але все буде марно. Параметр root = / dev / sdc1 теж бажано не опускати, / dev / sdc1 - кореневий розділ, не «/ boot", а "/". Хоча, на флешці створювати окремий розділ під / boot або що-небудь ще, просто смішно :)
Тепер, начебто, нічого не забув. Хоча, я і не ставив за мету докладний опис процесу установки Лінукс в chroot-е. У будь-якому випадку, тепер ви встановили Linux на флешку і можете перезавантажити комп'ютер і завантажитися з флешки =) Якщо у вас Gentoo, після приведення системи до потрібного вигляду, не забудьте видалити каталог / usr / src / linux (він займає близько 600МБ) і / usr / portage (портежей важать приблизно стільки ж) для економії місця.