Ok, as stated by r083rt, the menu.lst is the grub.cfg (in grub2). ANY modification directly BY HAND to this file might result in a failure boot or boot problems, so it is not recommended.
This file (/boot/grub/grub.cfg) is CREATED by update-grub2 command.
There are 2 files (templates if you want to see them that way) that uses the update-grub2 and you can modify to add entries or OS and modify the order of OS to boot from, names, etc.
1. /etc/grub.d/ is a folder which contains some files, all of those files are read by update-grub command and update the grub.cfg. If you want to add an entry, let's say Windows 7, then edit file 40_custom
nano /etc/grub.b/40_custom and add this entry:
menuentry "Windows 7" {
insmod ntfs
set root=(hd0,1) ----- > hd0 is your first drive sda. 1 is the partition number.
chainloader +1
}
save and close. Here you can create a new file instead of using 40_custom, like 45_Win7, 43_custom_XP, etc.
Now, if you want to alter some parameters for example, timeout to show the list of OS when booting, or change the order to boot the OS, etc, use the file: /etc/default/grub. Edit it and change parameters as needed:
nano /etc/default/grub
save and close it..
Once done, execute the command update-grub2. When it finishes, all changes made will be available at boot....
Now reboot...If you do no see some OS, run os-prober and then again update-grub2...
os-prober searches HDD for partitions and show them in the terminal...
Luck....



