Click to See Complete Forum and Search --> : Need Advice in disk partitioning


crossbone
08-06-2007, 08:17 AM
I'm getting a new HD and like to dual boot WinXP and some linux distro which I haven't decided yet. As I'll be installing XP first, I like to make sure I have my HD partitioned properly without having to use Partition Magic or softwares of that nature to fix things later. Anyway, my main question is, if I want to create a boot partition for linux, what size should I allocate? as I said, I'm still undecided on which distribution, but may try a few.
thanks!

Pafnoutios
08-06-2007, 08:42 AM
When I set up a machine for dual booting, I like to partition my drives in Linux (liveCD) before I install anything. I like to make the first partition my /boot with about 100MB. Second I like to put my swap partition, then my third partition I allocate for Windows (usually NTFS). I make the fourth an extended partition for all the different Linux partitions I might want.

saikee
08-06-2007, 09:41 AM
My choice is always one partition per Linux and everyone has a /boot being a subdirectory to its root /. That way all the subdirectories share the same empty space inside the distro and the hard disk is used more efficiently.

One swap is enough for any number of Linux.

In the past I allocated 5Gb per distro. Now that hard disks are affordable I give 10Gb per Linux. A coupe of frequently used distros get 20Gb each.

There is no need to have a separate /boot because a user can use any /boot inside any Linux to control multi-boot.

The real reason of having /boot can be traced back to

(1) The distro likes to sell you a LVM which cannot be read by any boot loader. To boot such distro you put /boot in a separate partition. Red Hat family distros goes this route.

(2) Some time in the past of at least 5 years ago boot loaders could not cross the 1024 cylinder barrier. To assit the boot loader people put a /boot at the front end of the hard disk so that the information is within the 1024 cylinder limit.

(3) There has been a lot of written work on how to install Linux in a server. This type of application can have different partitions in different hard disks and a /boot in a admin-only area is a smart security move.

Some disadvatages of having a common /boot partition

(a) You may have a job to tell which kernel belongs to which distro and ending up using one for all, as some distros use the same kernel name like vmlinuz.

(b) You lose the original installed boot loader setting because you may overwrite it every time a new distro is added.

(c) Not all distros can be configured to go into a separate /boot

(d) You need expert knowledge to manage one /boot when communicating with different distro installers.

(e) The separate /boot does not work for BSD or Solaris system as they have their own /boot and in partitions of different types.

(f) If a user keeps /boot for each distro he/she can learn how each distro boots itself. That knowledge is valuable to a user wanting the original setting to go back to.

(g) Kernel changes in an update may work for some distro and not all. Thus an upadte by one distro can cause some distros fail to boot because their internal parts are not corresponding updated

(h) There are small-footprint several distros that have special ways in booting themselves to minimize size and gain speed. They will not be good candidates to be booted from a common /boot directory.

(i) Live distro that has not been written to install into a hard disk can be installed if a user allocates a partition for it in a hard disk. Such distro may be permanently installed like a normal Linux or just works off as though it is a Live CD. A common /boot does not work with these distros.

(j) In booting any Linux the boot loader needs to know where is the partition the kernels are kept and the location of the root filing system. For a separate /boot appalication these two locations are different. In a single partition installation there is only one location common for both purposes.

(k) By having a separete /boot a user gives up the possibility of "indirect" booting using the chainloading technique. That is about 50% of what every boot loader is capable of.

I am not against putting /boot separately in a partition. Just to suggest a user should be aware of the merits and demerits of it. Sorry for coming up with too many negative views and not enough of the positive encouragements. May be others have more to offer on the advantage side of it.

I shall round this off by saying something useful

Welcome to JustLinux crossbone.

crossbone
08-06-2007, 04:54 PM
I admit I've never set a multi-boot system before so curious to know how can I get the screen that prompts me to select which OS to load at startup? say I decide not to create a separate /boot partition.

saikee
08-06-2007, 05:21 PM
The booting screen is provided by the boot loader. It is controlled by a text file.

For Lilo it is /etc/lilo.conf

For Grub it is /boot/grub/ment.lst (which may be symbolic linked to grub.conf for certain distros)

You can have a maximum of 27 entries for Lilo but Grub does not have a limit. If it has it would be more than 150 systems as I did not investigate beyond that limit.

A sample of /boot/grub/menu.lst that boots 145 systems is here (http://www.justlinux.com/forum/showthread.php?t=147959)

Under the normal circumstance of installing a MS Wondows first and Linux second the Linux installer will automatically generate the dual booting configuration for you.

crossbone
08-06-2007, 05:30 PM
cool! thanks a lot, guys!