12efcf3285
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
31 lines
586 B
Bash
Executable File
31 lines
586 B
Bash
Executable File
#!/bin/sh -ex
|
|
|
|
mountpoint -q /
|
|
[ ! -e hdc.img.dir ]
|
|
|
|
cleanup()
|
|
{
|
|
trap - EXIT
|
|
if mountpoint -q hdc.img.dir; then
|
|
umount -d hdc.img.dir
|
|
fi
|
|
mountpoint -q hdc.img.dir ||
|
|
rm -rf hdc.img.dir
|
|
exit $@
|
|
}
|
|
|
|
trap 'cleanup $?' EXIT
|
|
trap 'cleanup 1' HUP PIPE INT QUIT TERM
|
|
|
|
size=$(du -ks hdc.dir | sed -rn 's/^([0-9]+).*/\1/p')
|
|
[ "$size" -gt 0 ]
|
|
|
|
rm -f hdc.img
|
|
dd if=/dev/zero of=hdc.img count=1 bs=1024 seek=$(($size*2))
|
|
mkfs.ext3 -q -F -b 1024 -i 4096 hdc.img
|
|
tune2fs -c 0 -i 0 hdc.img
|
|
mkdir hdc.img.dir
|
|
mount -o loop hdc.img hdc.img.dir
|
|
cp -a hdc.dir/* hdc.img.dir/
|
|
umount -d hdc.img.dir
|