bf249c5a0a
Some BIOSes have trouble booting from GPT in non-UEFI mode. This is commonly reported with Lenovo laptops, including my x220. As we do not currently support booting FreeBSD/i386 via UEFI there's no reason to prefer GPT. The "vestigial swap partition" was added in r265017 to work around an issue with loader's GPT support, so we should not need it when using MBR. We may want to make the same change to amd64, although the issue there is mitigated by such systems booting via UEFI in the common case. PR: 227422 Reviewed by: gjb MFC after: 3 weeks Relnotes: Yes Sponsored by: The FreeBSD Foundation
45 lines
1.0 KiB
Bash
Executable File
45 lines
1.0 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# This script generates a "memstick image" (image that can be copied to a
|
|
# USB memory stick) from a directory tree. Note that the script does not
|
|
# clean up after itself very well for error conditions on purpose so the
|
|
# problem can be diagnosed (full filesystem most likely but ...).
|
|
#
|
|
# Usage: make-memstick.sh <directory tree> <image filename>
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
set -e
|
|
|
|
PATH=/bin:/usr/bin:/sbin:/usr/sbin
|
|
export PATH
|
|
|
|
if [ $# -ne 2 ]; then
|
|
echo "make-memstick.sh /path/to/directory /path/to/image/file"
|
|
exit 1
|
|
fi
|
|
|
|
if [ ! -d ${1} ]; then
|
|
echo "${1} must be a directory"
|
|
exit 1
|
|
fi
|
|
|
|
if [ -e ${2} ]; then
|
|
echo "won't overwrite ${2}"
|
|
exit 1
|
|
fi
|
|
|
|
echo '/dev/ufs/FreeBSD_Install / ufs ro,noatime 1 1' > ${1}/etc/fstab
|
|
echo 'root_rw_mount="NO"' > ${1}/etc/rc.conf.local
|
|
makefs -B little -o label=FreeBSD_Install -o version=2 ${2}.part ${1}
|
|
rm ${1}/etc/fstab
|
|
rm ${1}/etc/rc.conf.local
|
|
|
|
mkimg -s mbr \
|
|
-b ${1}/boot/mbr \
|
|
-p freebsd:-"mkimg -s bsd -b ${1}/boot/boot -p freebsd-ufs:=${2}.part" \
|
|
-o ${2}
|
|
rm ${2}.part
|
|
|