1146402Sphk#!/bin/sh 2146402Sphk# 3150412Sphk# Copyright (c) 2004-2005 Poul-Henning Kamp. 4150412Sphk# All rights reserved. 5146402Sphk# 6150412Sphk# Redistribution and use in source and binary forms, with or without 7150412Sphk# modification, are permitted provided that the following conditions 8150412Sphk# are met: 9150412Sphk# 1. Redistributions of source code must retain the above copyright 10150412Sphk# notice, this list of conditions and the following disclaimer. 11150412Sphk# 2. Redistributions in binary form must reproduce the above copyright 12150412Sphk# notice, this list of conditions and the following disclaimer in the 13150412Sphk# documentation and/or other materials provided with the distribution. 14146402Sphk# 15150412Sphk# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 16150412Sphk# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17150412Sphk# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18150412Sphk# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 19150412Sphk# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20150412Sphk# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21150412Sphk# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22150412Sphk# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23150412Sphk# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24150412Sphk# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25150412Sphk# SUCH DAMAGE. 26150412Sphk# 27146402Sphk# $FreeBSD$ 28146402Sphk# 29146402Sphk# Script to update partition 1 on a NanoBSD system. 30146402Sphk# 31146402Sphk# usage: 32146402Sphk# ssh somewhere cat image.s1 | sh updatep1 33146402Sphk# 34146402Sphk 35146402Sphkset -e 36146402Sphk 37150412Sphk. /etc/nanobsd.conf 38150412Sphk 39150412Sphkif mount | grep ${NANO_DRIVE}s1 > /dev/null ; then 40146402Sphk echo "You are running partition 1 already" 41146402Sphk echo "you probably want to use 'updatep2' instead" 42146402Sphk exit 1 43146402Sphkfi 44146402Sphk 45150412Sphk# Blow away old system. 46150412Sphkdd if=/dev/zero of=/dev/${NANO_DRIVE}s1 bs=1m count=1 > /dev/null 2>&1 47150412Sphk 48150412Sphk# Copy in new system 49150412Sphkdd of=/dev/${NANO_DRIVE}s1 obs=64k 50150412Sphk 51150412Sphk# Check that it worked 52150412Sphkfsck_ffs -n /dev/${NANO_DRIVE}s1a 53150412Sphk 54205584Sphkgpart set -a active -i 1 ${NANO_DRIVE} 55