[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Install debian 9.1 live usb



Hi,

A Abbes wrote:
> > I cannot modify the grub.cfg file to allow persistence. 

Meanwhile we had the proposal to remaster the ISO and the proposal
to install a normal Debian to a separate USB stick.
(For the latter Debian 9 Live ISOs have earned a bad reputation on
 debian-user mailing list. So they could well need more practicing.)

There is also the method of creating a new partition on the USB stick
after the ISO end. It would get a read-write filesystem (e.g. ext2)
and would possibly be mapped over the ISO as overlay filesystem.
Knoppix does it that way.

I skip the fourth opportunity: Patching of existing data files while
maintaining their sizes. That's binary hacking.

Number five is ISO 9660 Multi-session.


Andreas Heinlein wrote:
> There are tools which would allow you to modify the ISO file, but it's
> rather complicated.

Not too complicated but not necessarily what one wants. :))

By ISO 9660 multi-session the ISO gets appended a new superblock, a new
directory tree, and the content blocks of the changed data files.
Depending on the medium type, the superblock at the start of the medium
(or image file) needs to be overwritten. On write-once multi-session media
Linux will mount the superblock of the youngest hardware session.

One will in any case want to do all intended changes in one sweep,
although one can add more than one session.

The main difficulty is to keep all the boot starting points working.
Because it is so nicely small, i practice with a netinst ISO image:

  cp debian-9.1.0-amd64-netinst.iso test.iso
  iso=test.iso

or with USB stick /dev/sdc which already holds that ISO:

  dd if=debian-9.1.0-amd64-netinst.iso bs=1M of=/dev/sdc
  iso=stdio:/dev/sdc
  # chmod yourself write permission to /dev/sdc or become superuser

A session gets appended by:

  xorriso -dev "$iso" \
          -map my_new_grub.cfg /boot/grub/grub.cfg \
          -boot_image any replay

Between the -map command and the -boot_image command there may be more
manipulation commands to put files into the ISO, or rename, or delete them.

With xorriso versions older than 1.4.2 one would use
          -boot_image any keep
which is broken since 1.4.4, as i now learned. A simple intitialization bug.
"replay" is smarter, anyways.
The version number is told by:
  xorriso -version


Have a nice day :)

Thomas


Reply to: