From owner-freebsd-cloud@freebsd.org Wed Apr 12 06:04:55 2017 Return-Path: Delivered-To: freebsd-cloud@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A59CFD3AC46; Wed, 12 Apr 2017 06:04:55 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from vps1.elischer.org (vps1.elischer.org [204.109.63.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "vps1.elischer.org", Issuer "CA Cert Signing Authority" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 750962B2; Wed, 12 Apr 2017 06:04:55 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from Julian-MBP3.local (106-68-194-141.dyn.iinet.net.au [106.68.194.141]) (authenticated bits=0) by vps1.elischer.org (8.15.2/8.15.2) with ESMTPSA id v3C64neX059826 (version=TLSv1.2 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Tue, 11 Apr 2017 23:04:52 -0700 (PDT) (envelope-from julian@freebsd.org) Subject: Re: amazon/xen... any way at all to pass a message/signal/semaphoere/morse-code to the boot loader? To: freebsd-cloud@freebsd.org, FreeBSD Lists , Toomas Soome References: <0100015b6070d24d-a23d7d90-11c0-4065-9bd0-0fc71b5874d6-000000@email.amazonses.com> From: Julian Elischer Message-ID: <6f1c694d-1bb7-cdcc-daed-fd2e25dc2a28@freebsd.org> Date: Wed, 12 Apr 2017 14:04:42 +0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <0100015b6070d24d-a23d7d90-11c0-4065-9bd0-0fc71b5874d6-000000@email.amazonses.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-cloud@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "FreeBSD on cloud platforms \(EC2, GCE, Azure, etc.\)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Apr 2017 06:04:55 -0000 On 12/4/17 12:34 pm, Colin Percival wrote: > [CCing freebsd-cloud, which is the right place for discussions of FreeBSD/EC2] > > On 04/11/17 21:03, Julian Elischer wrote: >> In Amazon ec2 they have no console access (though I heard rumors that it was >> available I have not seen any sign of it) so I'd like to put a "recovery >> partition" into an AMI. >> The trick is how to convince it to boot to that instead of the regular action. > Can you get what you want via gptboot's support for selecting the partition > to boot via "bootonce" and "bootme" flags? not if you can't get onto to the machine. When I talk about a recovery partition I mean it in the same way that apple means it.. "system won't boot? press the power button and hold down the 'option' key. it will give you the option to boot to a recovery mode" (* actually I can't remember the keys but you get the idea..) in our case we would like to be able to recover a customer's AMI by giving a simple set of instructions over the phone. We can assume they know how to get into the amazon menus, but we would like to not have to assume much more. > >> The ideal thing would be if there was way to 'influence' one of the smbios >> values in some way, and have the boot code see it, but I'm open to any >> suggestions. >> I really need only 1 bit of information to get through. >> >> Possibilties include "changing the VM to have only 2G of ram" (we'd never do >> that in a real machine). >> or maybe temporarily removing all the disks other than the root drive? Almost >> anything I could do to signal the boot code to behave differently. > I don't think adding/removing disks will be useful, since the extra disks will > be Xen blkfront devices; AFAIK the boot loader doesn't know anything about > these. (The boot device is also a blkfront device but gets ATA emulation for > the benefit of boot loaders.) > > Maybe you can repurpose some of the logic used for booting over NFS? I've > never heard of people booting over NFS when the initial bootstrap comes from > disk rather than PXE, but I assume it's possible...? Oh I've done it, in the past but you still have the same issue.. how do you signal the boot code to do this? (does an AMI have a bios capable of doing network operations?) I was thinking about whether we could add a really simple xn driver into the bootcode to allow us to have an console of sorts (accessible from an adjacent machine only??)