John Richard Moser nigelenki at comcast.net
Sat Oct 22 14:35:56 CDT 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Well, it appears nobody wants to do an installation where you have /
/home and swap.  In leiu of this, how about the (slightly less durable)
"wipe unprotected" idea?

In the interest of preserving /home, debian-installer could be
pre-programmed to be able to 'rm -rf `echo /* | grep -v "^/home$" |
xargs`' if the user selects an existing Linux/Unix partition as /.  This
would replace formatting, and probably take longer, and not fix file
system corruption on / (unless a full fsck was done); but would
otherwise be identical to having a separate /home, i.e. it would
preserve user data.

Another interesting idea would be to profile things such as MySQL,
Apache, Squid, etc.  Data could be stored in / or packaged with the d-i
to dictate where these things are.  Thus the user would be presented
with this screen during installation:

  Ubuntu has detected a pre-existing installation.

  Ubuntu can preserve some of your old data, such as your personal files
  and settings; database and Web server information; proxy server
  settings; and firewall configurations.  Please select which you would
  like to preserve:

  [X] Personal files and settings (/home)
  [X] Users and groups
  [X]   Clear passwords (for users with a /home)
  [ ] Firewall settings
  [ ] Extra installed packages
  [ ] Squid proxy settings
  [ ] Apache /var/www and configuration
  [ ] MySQL databases


This is a basic start.  In the future it should become possible to have
/home copied or moved to /home if a /home partition is defined but the
selected / partition already has a /home directory:

/ - hda1
  /home/*
/home - hda2
  /  <- (copy) (hda1)/home/*

Integrating parted and a simplified interface to it (gparted-like but
still ncurses, unless we see a graphical installation system on a
LiveCD) may also become an interesting venue for this, allowing the
following complex progressions in the distant future:

(hda):
  [hda1 (/).............../home............................]

Adjust (hda):
  'rm -rf `echo /* | grep -v "^/home$" | xargs`'
  Shrink (hda3):
    [hda3 (/)../home.......][empty ..........................]
  Move (hda1):
    [empty ..........................][hda3 (/)../home.......]
  Create (/home):
    [empty .......][hda2 (/home).....][hda3 (/)../home.......]
  Create new (/):
    [hda1 (/) ....][hda2 (/home).....][hda3 (/)../home.......]
  Evacuate /home on (hda3) to (hda2)
  Shrink (hda3) because we're out of room on (hda2),
   Move (hda3),
   and Grow (hda2):
    [hda1 (/) ....][hda2 (/home)....................][hda3 ..]
  Finish evacuating (hda3) to (hda2)
  Destroy (hda3),
   and Grow (hda2):
    [hda1 (/) ....][hda2 (/home).............................]

New (hda):
  [hda1 (/)........][hda2 (/home)..........................]

The above shows someone with a / that has /home, and a lot of data in
/home.  He wants a partition scheme with a big, separate /home and
smaller /, but there's nai the room to put /home right where it belongs.
 To fix this the user has to copy files from / to /home, shrink /, move
it upwards, and repeat, until /home has all of /home, then he destroys /
and expands /home, placing the new / just at the beginning of the drive,
before /home.  This is of course projected here to be an automated process.

. . . yes that's overcomplicated.  It's the idea of doing whatever the
user wants.  "Reorganize my partitioning scheme" happens :)

- --
All content of all messages exchanged herein are left in the
Public Domain, unless otherwise explicitly stated.

    Creative brains are a valuable, limited resource. They shouldn't be
    wasted on re-inventing the wheel when there are so many fascinating
    new problems waiting out there.
                                                 -- Eric Steven Raymond
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFDWpSZhDd4aOud5P8RAn5/AJ4hd0iIA6zOPxzKznUokyxGuPL/VQCeKvvX
H5Pe/0owYNPHM8k/3d/OR2E=
=by8T
-----END PGP SIGNATURE-----



More information about the ubuntu-devel mailing list