Re: [gentoo-dev] i have an idea ! (erescue) ro-overlays

2005-05-25 Thread Chris Gianelloni
On Tue, 2005-05-24 at 14:11 -0700, Jim Northrup wrote:
 I'm very happy with new GUID-based volume mounting and more stable raid 
 tools, but a CF-based or initrd root available when /lib goes to hell is 
 an absolute must for supporting fault tolerance.

If you use genkernel to build your kernel, then you will have a usable
initrd with lvm2/evms/dmraid (via --lvm2, --evms, or --dmraid)
capabilities and tools for rescuing your system.

This is only good for filesystem rescue, though.  It won't help you if
you emerge a bad copy of binutils or gcc.

-- 
Chris Gianelloni
Release Engineering - Strategic Lead/QA Manager
Games - Developer
Gentoo Linux


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] i have an idea ! (erescue) ro-overlays

2005-05-25 Thread James Northrup
overall I'm quite pleased with genkernel and have relegated much  
tedium to its functions over time.  perhaps it's a worthy mule for  
more responsibility.


I have mirror volumes which have survived almost 8 years with 2nd and  
third generation drives, motherboard, and architecture (32-64 bit).


in those years, the newer revs which don't jump up and bite me in the  
ass probably go unnoticed..


abstractly speaking, the clearest working example of what breaks is  
oft-times a recent kernel on a recent install disk.  slopping an  
install disk on a modern hard-drive consumes but a gnat's real-estate.


using a symlink foundation does a pretty good job of allowing emerge  
to over-write the static known-good binaries with dynamics, but  
occasionally the gcc and/or libc is a repeatable failure and having  
the ro overlay handy allows wholesale excision of the broken  
installs, esp on young architectures.


for whatever reasons, I pack my cd-rom drive bays with hard drives,  
and install with a cd-rom hanging off the side of the case tethered  
by its cables... right about the time its a bootable system the cd- 
rom comes off and the box is tucked into some crawl-space or other  
behind desks, shelves, etc. and hopefully forgotten.




On May 25, 2005, at 6:32 AM, Chris Gianelloni wrote:


On Tue, 2005-05-24 at 14:11 -0700, Jim Northrup wrote:

I'm very happy with new GUID-based volume mounting and more stable  
raid
tools, but a CF-based or initrd root available when /lib goes to  
hell is

an absolute must for supporting fault tolerance.



If you use genkernel to build your kernel, then you will have a usable
initrd with lvm2/evms/dmraid (via --lvm2, --evms, or --dmraid)
capabilities and tools for rescuing your system.

This is only good for filesystem rescue, though.  It won't help you if
you emerge a bad copy of binutils or gcc.

--
Chris Gianelloni
Release Engineering - Strategic Lead/QA Manager
Games - Developer
Gentoo Linux



--
gentoo-dev@gentoo.org mailing list



Re: [gentoo-dev] i have an idea ! (erescue) ro-overlays

2005-05-24 Thread Jim Northrup

Mike Frysinger wrote:


On Tuesday 24 May 2005 05:11 pm, Jim Northrup wrote:
 


but a CF-based or initrd root available when /lib goes to hell is
an absolute must for supporting fault tolerance.
   



do you mean like the disk underneath /lib is blown to crap or a bad glibc is 
merged ?


if the latter, then the new busybox can help ... just boot with init=/bin/bb 
and you should have plenty of tools to recover with

-mike
 


great advice.

I've learned whenever md or devfs rework occurs, or the **/sbin tools 
get rev'd, its foolish to proceed without a rescue nearby.


of course bb is a space-saver, but i find myself turning the room upside 
down for full-static versions of tar, nc and fileutils


Jim
--
gentoo-dev@gentoo.org mailing list



Re: [gentoo-dev] i have an idea ! (erescue) ro-overlays

2005-05-24 Thread Mike Frysinger
On Tuesday 24 May 2005 06:34 pm, Jim Northrup wrote:
 of course bb is a space-saver, but i find myself turning the room upside
 down for full-static versions of tar, nc and fileutils

bb is static and it supports tar, nc, and many fileutils ;)
-mike
-- 
gentoo-dev@gentoo.org mailing list



Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-17 Thread Donnie Berkholz
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Chris Gianelloni wrote:
 A much better approach would be for there to be a rescue build,
 completely independent of the stages, since it doesn't need to mirror
 them in any way.  It should be extracted (self-extracted?) to something
 like /rescue and executed from there, being completely self-contained.
 This keeps it from stomping on system files and breaking
 collision-protect or doing anything else nasty like hosing configuration
 files (ever made the mistake of extracting a stage onto a live
 filesystem?) when unpacked.

This sounds a lot like saying, use an initrd, but when you pivot roots
to the live filesystem, leave it mounted somewhere.
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCiirqXVaO67S1rtsRAgHyAJ49adhPpYhwHqUeFNMw4I6h+GUyDwCfbwMB
rgA0GKbYsBjd8K9I7X2pyE8=
=tZSe
-END PGP SIGNATURE-
-- 
gentoo-dev@gentoo.org mailing list



Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-16 Thread Colin Kingsley
On 5/16/05, David Stanek [EMAIL PROTECTED] wrote:
 If erescue is a statically built binary that basically untars a
 backed up copy of a package, why would it depend on Python?

It won't. Thats the whole point.

Colin

-- 
gentoo-dev@gentoo.org mailing list



Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-16 Thread Chris Bainbridge
I've been in this position more than once, and had to go through the
bootcd+binaries (thanks to http://dev.gentoo.org/~avenj/bins/)
restore. Argh. I've often thought that atomic updates and rollback
within portage would be useful - maybe it could just be done as a
layer over subversion for Gentoo updated binary packages. Or maybe
rebuilding from source is preferable. Anyway, it would be very useful
to be able to revert to a known good state with a single command.

-- 
gentoo-dev@gentoo.org mailing list



Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-16 Thread Pete Ezzo
On 5/16/05, Chris Gianelloni [EMAIL PROTECTED] wrote:
 This would add quite a bit of space to the mirrors.  The average stage3
 tarball is about 100MB.  So you can assume that the packages would equal
 about the same.  Multiply this by the number of releasing arches, and
 possibly even subarches, and you have an additional 1GB just from
 x86/ppc.

i don't believe this was meant to be a full replace anything that
breaks kind of system here.  just a simple rescue program that would
get you very basic stuff, like portage, python, the toolchain.  for
any arch they could be optimized to the lowest common denominator,
like i386... and then once they are installed and the user's system
works again, they use the again working portage or compiler to rebuild
the exact version they want.  it isn't a huge substantial hit, and the
rescue packages don't have to be the latest version in question, they
can be updated once a release, or once a year, leaving a fairly small
footprint.

i also like the idea of it being wholly seperate from portage, which
neatly eliminates several points of failure, and keeps the portage
code a bit easier to control.

-- 
gentoo-dev@gentoo.org mailing list



Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-16 Thread Olivier CrĂȘte
On Mon, 2005-16-05 at 09:57 -0400, Chris Gianelloni wrote:
 This would add quite a bit of space to the mirrors.  The average stage3
 tarball is about 100MB.  So you can assume that the packages would equal
 about the same.  Multiply this by the number of releasing arches, and
 possibly even subarches, and you have an additional 1GB just from
 x86/ppc.

I would tend to believe that the content of a stage1 or stage2 would be
enough and just for the majors architectures (those that have a
stage1).. Anyways people will rebuild said packages once that's done,
right? That's not much for the mirrors.. Around 168 megs for the content
of a stage1 or 300 megs for the stage2.. 

[EMAIL PROTECTED] releases $ find . -name stage1-*-2005.0.tar.bz2 |xargs du -c
21084   ./amd64/2005.0/stages/stage1-amd64-2005.0.tar.bz2
17292   ./sparc/2005.0/sparc32/stages/stage1-sparc-2005.0.tar.bz2
20520   ./sparc/2005.0/sparc64/stages/stage1-sparc64-2005.0.tar.bz2
18012   ./x86/2005.0/stages/hardened/2.4/stage1-x86-hardened-2.4-2005.0.tar.bz2
18252   ./x86/2005.0/stages/hardened/2.6/stage1-x86-hardened-2.6-2005.0.tar.bz2
16424   ./x86/2005.0/stages/x86/stage1-x86-2005.0.tar.bz2
18720   ./ppc64/2005.0/stages/stage1-ppc64-2005.0.tar.bz2
18756   ./alpha/2005.0/stages/stage1-alpha-2005.0.tar.bz2
19468   ./ia64/2005.0/stages/stage1-ia64-2005.0.tar.bz2
168528  total

-- 
Olivier CrĂȘte
[EMAIL PROTECTED]
x86 Security Liaison


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-15 Thread Carlos Silva
On Sun, 2005-05-15 at 17:18 -0400, Mike Frysinger wrote:
 one advantage that other binary based package managers have over Gentoo is 
 ease of recovery from broken core packages ... break your gcc ?  no problem ! 
  
 simply do `apt-get install gcc` or `rpm -i gcc` or whatever
 
 my proposal is to implement a new utility (called 'erescue' for lack of a 
 better name) that is written in C and designed to be statically linked ... 
 then next time you break a core system package which cannot be recovered by 
 simply running `emerge` a few times, you run `erescue broken package`
 
 for example, when i broke binutils in unstable with a gcc4 patch, i noticed 
 that it's hard for users to *easily* recover from this ... we developers end 
 up scrambling to build a bunch of binary packages for a variety of compatible 
 compiler/libc combinations so the user can just wget the file and run `emerge 
 binutils.tbz2` and be on their way
 
 the packages that would be eligible for an 'erescue' package would be just 
 about everything when you do `USE=-* emerge system -ep` ... i'm sure we can 
 trim many of those out though :)  maybe even create a new USE flag for some 
 of these core packages so that we can trim out more files
 
 the idea would be to create very bare min packages so that the user can 
 simply 
 'rescue' themselves ... after that, they it's up to them to re-emerge the 
 package to apply all their fun ricer-optimizations as they see fit
 
 i dont think it'd be too hard to integrate this 'rescue set' into a catalyst 
 target so that it'll become part of our normal release schedule of stage 
 tarballs
 -mike

I like the ideia :)


signature.asc
Description: This is a digitally signed message part


Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-15 Thread Krzysiek Pawlik
Mike Frysinger wrote:
 [...]

Use `quickpkg` before dangerous updates/merges. If something brakes -
untar the package.

-- 
Krzysiek 'Nelchael' Pawlik RLU #322999[EMAIL PROTECTED]
gentoo base system - kernel 2.6.11-ck8   GPG:0x7E226904
http://fatcat.ftj.agh.edu.pl/~nelchael/
Never forget: 2 + 2 = 5 for extremely large values of 2.
-- 
gentoo-dev@gentoo.org mailing list



Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-15 Thread Donnie Berkholz
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Krzysiek Pawlik wrote:
 Use `quickpkg` before dangerous updates/merges. If something brakes -
 untar the package.

Doesn't work too well when tar's broken too. =)
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFCh84IXVaO67S1rtsRAibiAKD6i0twE/06iCEqe+uiHa8ht3tUVQCgoYTo
A+8VR9nD42r+NlH3M4tVFUE=
=+Fva
-END PGP SIGNATURE-
-- 
gentoo-dev@gentoo.org mailing list



Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-15 Thread Krzysiek Pawlik
Donnie Berkholz wrote:
 Use `quickpkg` before dangerous updates/merges. If something brakes -
 untar the package.
 
 Doesn't work too well when tar's broken too. =)

Use static tar na bzip2 ;) Seriously: I'm for erescue (or whatever name
will be chosen).

-- 
Krzysiek 'Nelchael' Pawlik RLU #322999[EMAIL PROTECTED]
gentoo base system - kernel 2.6.11-ck8   GPG:0x7E226904
http://fatcat.ftj.agh.edu.pl/~nelchael/
According to my calculations the problem doesn't exist.
-- 
gentoo-dev@gentoo.org mailing list



Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-15 Thread Sami Samhuri
* On Sun May-15-2005 at 04:48:04 PM -0600, Ryan said:
[...]
 something, then its your fault for not having a backup.  Of coarse this
 is just ONE way to backup. There are a bazillion ways to do it.  The
 choice is up to you.  Besides, if you are running the unstable branch

And if Gentoo provides yet another choice for one to use in recovery
then that sounds good to me. :)

-- 
Sami Samhuri


pgpuMMGhtbdVw.pgp
Description: PGP signature


Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-15 Thread david stanek
On Sun, May 15, 2005 at 03:32:40PM -0700, Donnie Berkholz wrote:

 Krzysiek Pawlik wrote:
  Use `quickpkg` before dangerous updates/merges. If something brakes -
  untar the package.
 
 Doesn't work too well when tar's broken too. =)

How about statically linking a version of tar with portage. This way
tar cannot be broken. Add an option to emerge, --backup or something
similar, that will automatically run quickpkg. Then make a erescue
executable that can parse the command line to figure out which
package the user wants to be rescued from, and execute the new tar
command.

-- 
David Stanek
www.roninds.net

GPG keyID #6272EDAF on http://pgp.mit.edu
Key fingerprint = 8BAA 7E11 8856 E148 6833  655A 92E2 3E00 6272 EDAF


pgpQUoBThCuhI.pgp
Description: PGP signature


Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-15 Thread John Myers
On Sunday 15 May 2005 16:41, david stanek wrote:
 Add an option to emerge, --backup or something
 similar, that will automatically run quickpkg.

If you set FEATURES=buildpkg, portage automatically makes binary packages 
for you. No need to add new support.


pgpqwMjzk44tL.pgp
Description: PGP signature


Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-15 Thread David Stanek
On Sun, May 15, 2005 at 06:12:13PM -0700, John Myers wrote:
 On Sunday 15 May 2005 16:41, david stanek wrote:
  Add an option to emerge, --backup or something
  similar, that will automatically run quickpkg.
 
 If you set FEATURES=buildpkg, portage automatically makes binary packages 
 for you. No need to add new support.

That would build a binary package for the potentially broken
package. What it would need to do is build a binary package of the
existing merged package. So a user can recover from a botched
upgrade.

-- 
David Stanek
www.roninds.net

GPG keyID #6272EDAF on http://pgp.mit.edu
Key fingerprint = 8BAA 7E11 8856 E148 6833  655A 92E2 3E00 6272 EDAF


pgpXNiuhdlWu3.pgp
Description: PGP signature


Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-15 Thread David Stanek
On Sun, May 15, 2005 at 09:56:54PM -0400, David Stanek wrote:
 On Sun, May 15, 2005 at 06:12:13PM -0700, John Myers wrote:
  On Sunday 15 May 2005 16:41, david stanek wrote:
   Add an option to emerge, --backup or something
   similar, that will automatically run quickpkg.
  
  If you set FEATURES=buildpkg, portage automatically makes binary packages 
  for you. No need to add new support.
 
 That would build a binary package for the potentially broken
 package. What it would need to do is build a binary package of the
 existing merged package. So a user can recover from a botched
 upgrade.

Actually a very simple safe-emerge script can be easily written. It
could first do an 'emerge --buildpkg' on the existing merged package,
if that package was already merged.

The other part would be to create a statically linked version of tar
that can be used in a recovery situation.

-- 
David Stanek
www.roninds.net

GPG keyID #6272EDAF on http://pgp.mit.edu
Key fingerprint = 8BAA 7E11 8856 E148 6833  655A 92E2 3E00 6272 EDAF


pgpvGsYgziGCW.pgp
Description: PGP signature


Re: [gentoo-dev] i have an idea ! (erescue)

2005-05-15 Thread David Stanek
On Sun, May 15, 2005 at 09:07:15PM -0700, Sami Samhuri wrote:
 * On Sun May-15-2005 at 05:18:06 PM -0400, Mike Frysinger said:
 [...]
  my proposal is to implement a new utility (called 'erescue' for lack of a 
  better name) that is written in C and designed to be statically linked ... 
  then next time you break a core system package which cannot be recovered by 
  simply running `emerge` a few times, you run `erescue broken package`
 
 Everyone who is saying that Portage can already sort of handle this
 seems to be missing one important point. If Python is broken then emerge
 won't work. The proposed erescue would still work in that case.

If erescue is a statically built binary that basically untars a
backed up copy of a package, why would it depend on Python?


-- 
David Stanek
www.roninds.net

GPG keyID #6272EDAF on http://pgp.mit.edu
Key fingerprint = 8BAA 7E11 8856 E148 6833  655A 92E2 3E00 6272 EDAF


pgpxBL8wrNK4r.pgp
Description: PGP signature