1223764Smarcel#!/bin/sh
2223764Smarcel#
3223764Smarcel# This script generates a "memstick image" (image that can be copied to a
4223764Smarcel# USB memory stick) from a directory tree.  Note that the script does not
5223764Smarcel# clean up after itself very well for error conditions on purpose so the
6223764Smarcel# problem can be diagnosed (full filesystem most likely but ...).
7223764Smarcel#
8223764Smarcel# Usage: make-memstick.sh <directory tree> <image filename>
9223764Smarcel#
10223764Smarcel# $FreeBSD$
11223764Smarcel#
12223764Smarcel
13223764SmarcelPATH=/bin:/usr/bin:/sbin:/usr/sbin
14223764Smarcelexport PATH
15223764Smarcel
16223764SmarcelBLOCKSIZE=10240
17223764Smarcel
18223764Smarcelif [ $# -ne 2 ]; then
19223764Smarcel  echo "make-memstick.sh /path/to/directory /path/to/image/file"
20223764Smarcel  exit 1
21223764Smarcelfi
22223764Smarcel
23223764Smarcelif [ ! -d ${1} ]; then
24223764Smarcel  echo "${1} must be a directory"
25223764Smarcel  exit 1
26223764Smarcelfi
27223764Smarcel
28223764Smarcelif [ -e ${2} ]; then
29223764Smarcel  echo "won't overwrite ${2}"
30223764Smarcel  exit 1
31223764Smarcelfi
32223764Smarcel
33223764Smarcelmakefs -B little ${2} ${1}
34223764Smarcelif [ $? -ne 0 ]; then
35223764Smarcel  echo "makefs failed"
36223764Smarcel  exit 1
37223764Smarcelfi
38223764Smarcel
39