New Users suggestions/clarifications.

Here is a place for your projects which are not officially supported by the Porteus Team. For example: your own kernel patched with extra features; desktops not included in the standard ISO like Gnome; base modules that are different than the standard ISO, etc...
User avatar
Ed_P
Contributor
Contributor
Posts: 8341
Joined: 06 Feb 2013, 22:12
Distribution: Cinnamon 5.01 ISO
Location: Western NY, USA

New Users suggestions/clarifications.

Post#1 by Ed_P » 25 Apr 2014, 05:26

In reviewing the FAQS, yes I really do read them on occasion, I came across this webpage:

http://www.porteus.org/component/conten ... tcode.html

and it got me to thinking how difficult this would be for a new user to Linux systems. For a seasoned Linux user, someone who has used other versions for a period of time this is probably clear and useful but for a Windows user coming to Porteus it is Greek and a turn off.

A Windows user looking to try Linux and in particular Porteus needs to do a couple of simple, nonthreatening steps to add the ability to boot to a different OS.

1. They need to download a bootloader like Grub4DOS. http://code.google.com/p/grub4dos-chena ... z&can=2&q=

2. They extract for the download the file named grldr and add it to their c:\ root folder.

3. If they are running Windows XP, and hopefully at this point they are looking to replace it they then look for their c:\boot.ini file. If they are running Windows 7 or 8 they can skip to step 6.

4. Once found they make a copy of the boot.ini file. boot.ini.bak or something similar.

5. To the original boot.ini file they make the following changes:

Under [boot loader] they add
timeout=30
Under [Operating Systems] they add
C:\grldr="Grub4Dos"

And, if they are smart they will comment out the existing default parameter and replace it with
default=C:\grldr

And thus end up with a boot.ini that looks like:

Code: Select all

[boot loader]       
timeout=30          
default= C:\grldr
::default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS   
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect 
C:\grldr="Grub4Dos"
6. And to complete the process they add a file to c:\ named menu.lst that looks something like this:

Code: Select all

# http://code.google.com/p/grub4dos-chenall/downloads/list
# Grub4DOS 0.4.5c 2013-03-03

# splashimage=/splashimages/mback.xpm.gz 
#splashimage=(hd0,2)/Porteus/porteus3.bmp

# color <foreground/background> [hilite-fg/hilite-bg] [helptxt-fg/helptxt-bg] [hdg-fg/hdr-bg]
# colors:                black       blue       green       cyan       red       magenta   brown    light-gray
#   foreground only: dark-gray light-blue light-green light-cyan light-red light-magenta   yellow   white

# color white/blue yellow/blue
color white/blue black/light-gray yellow/blue blue/yellow

# ****ground rrggbb   000000=black  ffffff=white  8-f = bright
# blue text with gray txt on blue background hilite
# <<<< Be sure there are NO SPACES/BLANKS following the hex codes. >>>>>

foreground ffffff
background 0000cc
                        
timeout 600                   
default 0                    
fallback 1  

map --unhook 
            
title Porteus 2.1 - changes=    \n 195MB\n Porteus-RazorQT-v2.1-i486.iso
find --set-root                     /Porteus/Porteus-RazorQT-v2.1-i486.iso
map --heads=0 --sectors-per-track=0 /Porteus/Porteus-RazorQT-v2.1-i486.iso (0xff) 
map --hook
root (0xff)
kernel /boot/syslinux/vmlinuz  from=/Porteus/Porteus-RazorQT-v2.1-i486.iso  changes=EXIT:/Porteus/porteussave.dat extramod=/mnt/sda3/Porteus/modules
initrd /boot/syslinux/initrd.xz

title Porteus 2.1 - extramod=   \n 195MB\n Porteus-RazorQT-v2.1-i486.iso
find --set-root                     /Porteus/Porteus-RazorQT-v2.1-i486.iso
map --heads=0 --sectors-per-track=0 /Porteus/Porteus-RazorQT-v2.1-i486.iso (0xff) 
map --hook
root (0xff)
kernel /boot/syslinux/vmlinuz  from=/Porteus/Porteus-RazorQT-v2.1-i486.iso    extramod=/mnt/sda3/Porteus/modules;/mnt/sda3/Porteus/modsavedat 
initrd /boot/syslinux/initrd.xz

title Porteus 2.1 - Always Fresh\n 195MB\n Porteus-RazorQT-v2.1-i486.iso \n Use to check space usage of porteus.dat file.
find --set-root                     /Porteus/Porteus-RazorQT-v2.1-i486.iso
map --heads=0 --sectors-per-track=0 /Porteus/Porteus-RazorQT-v2.1-i486.iso (0xff) 
map --hook
root (0xff)
kernel /boot/syslinux/vmlinuz  from=/Porteus/Porteus-RazorQT-v2.1-i486.iso   
initrd /boot/syslinux/initrd.xz

title   \n
root ()
                          
# Steve6375 http://www.911cd.net/forums//index.php?s=&showtopic=24951&view=findpost&p=171785
# Very clever approach

iftitle [if exist (hd0,1)/ntldr || if exist (hd0,0)/ntldr] Windows XP\n\n Boot from hd0,1 or hd0,0 ntldr
if exist (hd0,0)/ntldr root (hd0,0)
if exist (hd0,1)/ntldr root (hd0,1)
chainloader /ntldr

iftitle [if exist (hd0,1)/bootmgr || if exist (hd0,0)/bootmgr] Windows 7\n\n Boot from hd0,1 or hd0,0 bootmgr
if exist (hd0,0)/bootmgr root (hd0,0)
if exist (hd0,1)/bootmgr root (hd0,1)
chainloader /bootmgr

title Reboot
reboot  
Or for the more standard Porteus style menu use this menu.lst.

Code: Select all

splashimage=/Porteus/porteus3.bmp
color white/blue black/light-gray yellow/blue blue/yellow
# ****ground rrggbb   000000=black  ffffff=white  8-f = bright
foreground ffffff
background 000077
        
# Grub4DOS kernel parms - translated from Porteus RazorQT 3.0 iso V:\boot\syslinux\porteus.cfg file.

default 0

title  |   Porteus-v3.0 64bit       |\n Porteus main menu 
root ()

title  |                            |\n 
root ()

title  | Graphics mode (Razor)      |\n\n Run Porteus the best way we can.\n Try to autoconfigure graphics card and use the maximum allowed resolution
map --heads=0 --sectors-per-track=0 /Porteus/Porteus-RazorQT-v3.0-x86_64.iso (0xff) 
map --hook
root (0xff)
kernel /boot/syslinux/vmlinuz  from=/Porteus/Porteus-RazorQT-v3.0-x86_64.iso changes=/Porteus/changes/porteussave.dat extramod=/mnt/sda3/Porteus/modules 
initrd /boot/syslinux/initrd.xz

title  | Always Fresh               |\n\n Normally Porteus saves all changes to the /porteus/changes/ directory on the\n boot media (if writable) and restores them next boot.  Use this option to\n start a fresh system, changes are not read from or written to any device
map --heads=0 --sectors-per-track=0 /Porteus/Porteus-RazorQT-v3.0-x86_64.iso (0xff)
map --hook
root (0xff)
kernel /boot/syslinux/vmlinuz  from=/Porteus/Porteus-RazorQT-v3.0-x86_64.iso nomagic base_only norootcopy
initrd /boot/syslinux/initrd.xz

title  | Copy To RAM                |\n\n Run Porteus the same as above, but first copy all data to RAM\n to get a huge speed increase (needs >512MB)
map --heads=0 --sectors-per-track=0 /Porteus/Porteus-RazorQT-v3.0-x86_64.iso (0xff) 
map --hook
root (0xff)
kernel /boot/syslinux/vmlinuz  from=/Porteus/Porteus-RazorQT-v3.0-x86_64.iso copy2ram
initrd /boot/syslinux/initrd.xz

title  | Text mode                  |\n\n Run Porteus in text mode and start the command prompt only
map --heads=0 --sectors-per-track=0 /Porteus/Porteus-RazorQT-v3.0-x86_64.iso (0xff) 
map --hook
root (0xff)
kernel /boot/syslinux/vmlinuz  from=/Porteus/Porteus-RazorQT-v3.0-x86_64.iso 3
initrd /boot/syslinux/initrd.xz

title  | Porteus as PXE server      |\n\n Run Porteus as usual, but also initialize a PXE server.\n This will allow you to boot Porteus on other computers over a network
map --heads=0 --sectors-per-track=0 /Porteus/Porteus-RazorQT-v3.0-x86_64.iso (0xff) 
map --hook
root (0xff)
kernel /boot/syslinux/vmlinuz  from=/Porteus/Porteus-RazorQT-v3.0-x86_64.iso pxe
initrd /boot/syslinux/initrd.xz


title  |                            |\n 
root ()

title  | ..return                   |\n\n Exit Porteus menu
configfile (bd)/menu.lst 

title  |----------------------------|\n 
root ()
7. Now when they boot their machine they will see a menu that allows them to select the existing/expired Windows system or Grub4DOS. If they select Windows XP everything is as it was before. If they select Grub4DOS they will see a menu of Porteus options that they can boot into.

8. Almost done. To complete the process they must download the Porteus ISO file that they want to run. I recommend creating a folder on the C:\ drive name Porteus and save the downloaded ISO in it. Then they must edit the menu.lst file to match the name of the ISO the menu to the name of the ISO they downloaded.

9. Now the Windows XP users are ready to boot and experience Porteus.

10. For Windows 7 users they do something similar but rather than change a boot.ini file they change the BCD file.

11. Before changing the BCD they make a backup of it using a command similar to this one and entered in a Command Prompt windows opened with Run as Administrator privileges:

Code: Select all

bcdedit /export "\BKUPS\BCDbackup.dat"
The location and name of the backup is up to the user but it should be something easy to remember and find.

12. The next thing to do is list the current BCD file. This is done with a simple:

Code: Select all

bcdedit
Note in the output the device assigned to the {bootmgr}.

13. They then add grldr to their BCD with the following commands:

Code: Select all

bcdedit /store *STORE* /create /d "Grub4DOS" /application bootsector
where *STORE* is equal to the device assigned to the {bootmgr} found above.
This will return a unique guid number for the new entry in the format:
{756e2a35-5933-11e1-90b5-dc5398ce8a10}
This *guid* string is then used in the following commands together with the *STORE* string found above.

Code: Select all

bcdedit /store *STORE* /set *guid* device C:
bcdedit /store *STORE* /set *guid* path \grldr
bcdedit /store *STORE* /displayorder *guid* /addlast 
bcdedit

On my system that results in:

Code: Select all

Real-mode Boot Sector
---------------------
identifier              {756e2a35-5933-11e1-90b5-dc5398ce8a10}
device                  partition=C:
path                    \grldr
description             Grldr - Porteus, Windows 7 System Repair, etc.
14. For Windows 8 users and the new UEFI booting process an alternate approach is using brokenman's script (http://forum.porteus.org/viewtopic.php? ... =45#p18256) to add a Porteus ISO to a UEFI booting USB drive and modifying the machine's BIOS to boot from a USB device before the machine's harddrive.

hth

- update -

The suggested file/folder structure for Porteus on a Windows machine that these steps reference is:

c:\Porteus
c:\Porteus\changes
c:\Porteus\modules
c:\Porteus\modsavedat

The Porteus ISO is saved in c:\Porteus, the porteussave.dat file is saved in c:\Porteus\changes, modules/extentions/additions are saved in c:\modules, and if a current but nonchangeable environment is desired a porteussave.dat.xzm file is stored in c:\Porteus\modsavedat.
Last edited by Ed_P on 25 Apr 2014, 16:59, edited 3 times in total.
Ed

User avatar
francois
Contributor
Contributor
Posts: 6434
Joined: 28 Dec 2010, 14:25
Distribution: xfce plank porteus nemesis
Location: Le printemps, le printemps, le printemps... ... l'hiver s'essoufle.

Re: New Users suggestions/clarifications.

Post#2 by francois » 25 Apr 2014, 11:25

What other procedure do you propose instead? How would you rewrite the text?

Edit:
It seems that I read too fast, I did not go to the first link you proposed. Sorry for the confusion. If you remove your last post, I will remove this post of mine. :wink:
Last edited by francois on 25 Apr 2014, 15:42, edited 4 times in total.
Prendre son temps, profiter de celui qui passe.

Post Reply