User Tools

Site Tools


linux:mintstick

Editable Mintstick

Following are instructions to partition, format and prepare a USB stick to be able to boot and contain adjustments like additional drivers/packages or configuration files.

Partition USB Device

Gparted GUI method:

gparted
  • delete partitions
  • create msdos partition table
  • add fat32 partition
  • add boot flag

Parted command line method:

umount /dev/sdX1

parted /dev/sdb print

#delete existing partitions
parted /dev/sdb rm 1
parted /dev/sdb rm 2
parted /dev/sdb rm 3

#create new partition
parted /dev/sdb mklabel msdos
parted /dev/sdb mkpart primary fat32 0% 100%
parted /dev/sdb align-check opt 1

parted /dev/sdb set 1 boot on
parted /dev/sdb set 1 lba on

#Format as fat32
mkfs.vfat -F 32 -n 'MINTSTICK' /dev/sdX1

alt:

apt-get install parted
parted --script /dev/sdX mklabel gpt
parted --script --align=optimal /dev/sdX mkpart ESP fat32 1MiB 100%
parted --script /dev/sdX set 1 boot on
mkfs.vfat -n MINTSTICK /dev/sdX1
mount -t vfat /dev/sdX1 /mnt
cd /mnt
uniso < /path/to/isofile.iso
cd ~
umount /mnt

Bootloader (MBR)

Both syslinux and grub are disk-based boot loaders, and perform similar functions. They are the first software loaded from disk to run. syslinux has pretty much taken a more minimalist approach, whereas GRUB was much more extensive. GRUB also supports different filesystems through the use of a secondary loader.

Ubuntu and its derivatives use both grub and syslinux. GRUB is shown when the ISO image is booted on EFI-capable machine. SYSLINUX is shown when the ISO image is booted on BIOS-only machine.

Plymouth handles the progress dot animation, regardless of GRUB or SYSLINUX is shown.

Syslinux

Syslinux is FAT filesystem based.

initialise using:

syslinux --install /dev/sdX1

This will alter the boot sector on the disk and copy a file named ldlinux.sys into its root directory.
On boot time, by default, the kernel will be loaded from the image named LINUX in the root of the boot media. This default can be changed, see the section on the syslinux configuration file.

#Manual MBR installation and re-enabling partition boot flag

dd conv=notrunc bs=440 count=1 if=/usr/lib/syslinux/mbr.bin of=/dev/sdX
parted /dev/sdX set 1 boot on

This will write the Syslinux mbr code (mbr.bin) into the master boot record of the drive,
and mark first partition as active (bootable).

Copy a Linux kernel image (like vmlinuz) to the root (/dev/sdX1) of your media.

Lastly, create a 'syslinux.cfg' file in the root of your media (/dev/sdX1) and
enter any configuration options you need/want.

Additional information: https://wiki.archlinux.org/index.php/Syslinux

Grub

sudo mkdir -p /mnt/usb
sudo mount /dev/sdX1 /mnt/usb
sudo grub-install --target=i386-pc --boot-directory="/mnt/usb/boot" /dev/sdX

EFI installation. Does not install in MBR:

sudo mkdir -p /mnt/usb
sudo mount /dev/sdX1 /mnt/usb
grub-install --target=x86_64-efi --efi-directory=/mnt/usb --bootloader-id=GRUB

Copy data

sudo mkdir -p /mnt/usb
sudo mount /dev/sdX1 /mnt/usb

sudo mkdir -p /mnt/iso
sudo mount -o loop /tmp/LinuxMint.iso /mnt/iso

sudo cp -av /mnt/iso/* /mnt/usb/
linux/mintstick.txt · Last modified: 2024/12/27 23:36 by Wulf Rajek