Как установить Ubuntu Linux и другие deb-дистрибутивы на флешку
Всегда хотел иметь возможность воткнуть в любой пригодный девайс флешку и запустить свою операционку со всеми данными, не оставляя следов на выбранном устройстве. Обычные мануалы рассказывают как создать bootable stick, который просто позволяет запустить систему как пробник и для решения временных задач, однако есть способ установить Ubuntu/Kubuntu/etc. на флешку и избежать анальных утех с запуском и BIOS'ом. Прошу любить и жаловать мануальчик.
Флешка на 256 гигов с разъёмом Type-С для самой системы:
Старая морально униженная флешка на 4 гига для Bootable Stick:
1. Создаём Bootable Stick
2. Запускаем Ubuntu со стика и вставляем пустую флешку для системы
3. Устанавливаем Ubuntu как обычно, но выбираем для этого большую флешку: можно одним большим разделом ext4. После окончания установки перезапускаем машину и снова загружаемся со стика.
4. Запускаем терминал, находим нашу большую флешку и запоминаем её номер (/dev/sdX):
sudo fdisk -l
5. Запускаем GParted для работы с партишнами:
sudo gparted /dev/sdX
6. Создаём в конце основного ext4-партишна небольшой кусочек fat32 на 200 мегабайт. Запоминаем идентификатор: /dev/sdXZ.
7. Маунтим основной раздел с установленной системой.
– /01234567-89ab-cdef-0123-4567890abcde – UUID раздела из GParted
– sdXY – идентификатор этого раздела
sudo umount /media/ubuntu/01234567-89ab-cdef-0123-4567890abcde
sudo mount /dev/sdXY /mnt
8. Далее следует набор действий для создания правильного EFI-загрузчика. Открываем файл с указанием раздела загрузки:
sudo nano /mnt/etc/fstab
9. В файл добавляется следующая строка вместо существующей с EFI:
UUID=0123-ABCD /boot/efi vfat defaults 0 1
10. Устанавливается загрузчик в ранее размеченный fat32-раздел:
mount /dev/sdXZ /mnt/boot/efi
for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt/$i; done
cp /etc/resolv.conf /mnt/etc/
modprobe efivars
sudo chroot /mnt11. PROFIT!
grub-install -d /usr/lib/grub/x86_64-efi --efi-directory=/boot/efi/ --removable /dev/sdX
Флешка распознаётся и предлагает опцию загрузки системы на любых x86_64-устройствах (проверил на ноутбуках MSI, Irbis и старом HP; на новых Macbook M1 работать не будет из-за разницы в архитектуре). Ubuntu загружается как родная и предоставляет вам возможность иметь при себе собственную операционную систему в кармане. Всем удачи!