Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 292310 - delayed installation (emerge buildworld/installworld)
Summary: delayed installation (emerge buildworld/installworld)
Status: CONFIRMED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Unclassified (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-11-07 21:41 UTC by Łukasz Stelmach
Modified: 2009-11-08 01:55 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Łukasz Stelmach 2009-11-07 21:41:30 UTC
Several years back I used FreeBSD which I compiled myself few times. There was a nice feature of partitioning upgrade process into buildworld and installworld. You could build a new system on a server that at the same time remained 100% operational because all new binaries were installed in a temporary directory.

As opposed to that on Gentoo it is not that nice. You may reach a moment when you upgrade only few of many packages your mission-critical-server-software relies upon and everything stops working.

However, I haven't studied neither the problem nor the solution I would like to propose, but it seems that there is one.

It would require an overlay filesystem (like UnionFS or aufs) mounted somewhere and configured so it presents current system states although all write operations happen somewhere else (would it help to use LVM snapshots?). Then, when everything is ready, much less downtime is required to merge the update into the system.

However useful this feature occurs to me I am sure it should be optional to use.

Reproducible: Always

Steps to Reproduce:
Comment 1 Zac Medico gentoo-dev 2009-11-07 23:18:12 UTC
Personally, I do all my updates in a chroot and then use the resulting binaries to update my live system. It's practically equivalent to the feature that you're requesting, and you can already do it easily, without the needing any explicit portage support.
Comment 2 Łukasz Stelmach 2009-11-08 01:55:38 UTC
Yes, but chroot takes a little (?) more space. You have to keep a copy of your system for chrooting *and* keep it in two-way sync. Evert time you change anything in your /etc you have to put it back into chroot. I do it on my desktop for my Eee PC.

IMHO a chroot into an overlay fs is the most efficient solution. You can do etc-update in that chroot and rsyncing the writable branch of the chroot would take only few minutes of *downtime*. 

The other option seems to be using lvm-snapshots.