• Michael Shigorin's avatar
    tar2vm: rewrote as tar2fs · d7689f30
    Michael Shigorin authored
    Overview of the changes:
    - ARM support: separate ext2 /boot, no LILO
    - avoid race condition with devmapper
    - trap ERR so that -e in shebang doesn't result in extra cleanup hassle
    - configurable root filesystem type (ext4 by default)
    - jumps through parted hoops
    
    Details:
    
    1. LILO is x86-specific while the rest of the script can be used
       to prepare e.g. Marvell ArmadaXP or CuBox images; we can generally
       count on uboot supporting ext2 for relatively sane platforms but
       not ext4 that would be a better root filesystem performance-wise.
    
    2. Apparently /dev/mapper/loopXpY can be still missing at the time
       when kpartx returns and pop up a bit later... sit there, wait
       and check for it.
    
    3. If something went wrong with any command of the script it would bail out
       due to -e in shebang; it is now better to clean up the loopback device
       and its mappings in this situation either.
    
    4. One size doesn't fit all, really.
    
    5. The parted sizing was sloppy as in broken, now it's just half insane.
       Someone's decision to stick units and auto-alignment knobs into
       a single one was apparently hilarious...
    
       http://www.gnu.org/software/parted/manual/parted.html#unit
    
    Manual loop/dm cleanup is described in documentation just in case.
    
    /boot size meter is suboptimal in terms of additional I/O incurred,
    will be most likely rewritten to make use of advance "du -s".
    d7689f30
Name
Last commit
Last update
..
00example Loading commit data...
armh Loading commit data...
armh-nexus7 Loading commit data...
armh-tegra3 Loading commit data...
bootloader Loading commit data...
branding Loading commit data...
build-distro Loading commit data...
build-ve Loading commit data...
build-vm Loading commit data...
cleanup Loading commit data...
deflogin Loading commit data...
dev Loading commit data...
dos Loading commit data...
efi Loading commit data...
firmware Loading commit data...
fonts Loading commit data...
hdt Loading commit data...
homeros Loading commit data...
init Loading commit data...
install2 Loading commit data...
isohybrid Loading commit data...
isomd5sum Loading commit data...
kernel Loading commit data...
live Loading commit data...
lowmem Loading commit data...
ltsp Loading commit data...
luks Loading commit data...
memtest Loading commit data...
metadata Loading commit data...
pack Loading commit data...
plymouth Loading commit data...
power Loading commit data...
relname Loading commit data...
repo Loading commit data...
rescue Loading commit data...
server Loading commit data...
services Loading commit data...
slinux Loading commit data...
stage2 Loading commit data...
syslinux Loading commit data...
systemd Loading commit data...
vm-net Loading commit data...
vm-ssh Loading commit data...
vmguest Loading commit data...
wireless Loading commit data...
x11 Loading commit data...
x11-autologin Loading commit data...
x11-autostart Loading commit data...
Makefile Loading commit data...
README Loading commit data...