BBS水木清华站∶精华区

发信人: liugang (L.G.), 信区: Linux        
标  题: SGI Linux 1.1 FAQ 
发信站: BBS 水木清华站 (Wed Dec 22 22:07:25 1999) 
 
SGI Linux 1.1 FAQ  
 
What is SGI Linux 1.1? 
How do I build a system ala SGI Linux 1.1? 
Why doesn't SGI provide an iso-image/rpms for their entire  
distribution? 
How do I install the SGI Linux 1.1 kernel patch? 
How do I build kernel rpms? 
How do I install a kernel rpm? 
Why is the kernel based off 2.2.10? 
What if I have 2.2.10-ac12? 
How do I get SGI Linux 1.1 working on a Visual Workstation? 
 
 
What is SGI Linux 1.1? 
 
SGI Linux 1.1 is SGI's distribution of Linux. It is based off RedHat 6.0 
 and is 
fully binary compatible with programs written for RedHat 6.0. It  
contains 
changes (mostly additions) to the kernel. It also fixes a few bugs in  
the 
packages RedHat ships. There are also a few user programs that utilize 
some of the kernel enhancements.  
 
How do I build a system ala SGI Linux 1.1? 
 
Currently, the only supported platform for SGI Linux 1.1 is the 1400L  
server 
system that SGI sells. However, since we are using an x86 kernel and 
compiling the packages for x86, SGI Linux 1.1 will run on almost any  
x86 
system. Here at SGI, we have tested the distribution on many systems 
including Dell's, Compaq's, HP's, Gateway's, etc. SGI Linux should  
work on 
anything RedHat 6.0 runs on as well as SGI's hardware. (see the RedHat  
and 
Linux compatibility lists for details).  
 
WARNING: THIS IS NOT SUPPORTED NOR DOES IT CARRY ANY KIND OF 
WARRANTY. SGI ASSUMES NO RESPONSIBILITY FOR THE 
CONSEQUENCES OF DOING THIS.  
 
     Since SGI Linux 1.1 is based off RedHat 6.0, you need to first have 
 a 
     working version of that on your machine.  
     Download all the errata from the RedHat 6.0 updates page and  
install 
     them with "rpm -F". (this will only upgrade the ones you  
currently have 
     installed)  
     Download all the SGI rpms and install them using "rpm -U"  
     Download the SGI kernel patch with a copy of linux-2.2.10 and  
install 
     that. (see below).  
     Compile a kernel for your machine with this new source tree (see  
the 
     Kernel-HOWTO if you have not done this before).  
          Do a "make menuconfig" (or get a .config file from here)  
          Select the components you want/need  
          Do a "make dep"  
          Do a "make bzImage"  
          Copy arch/i386/boot/bzImage to /boot/mynewkernel  
          Do a "make modules" (if you configured any modules)  
          Do a "make modules_install" (if configured)  
          cd into /boot and do a  
 
          mkinitrd --ifneeded initrd.img 2.2.10 
 
          (if modules are needed to boot)  
     Make an entry in your lilo.conf file for your newly compiled  
kernel 
     (remembering to add an initrd line if you have a component  
compiled 
     as a module necessary to boot). If you have not played with lilo 
     before, read the LILO mini HOWTO. The one thing I cannot stress 
     more is: "DON'T DELETE A WORKING KERNEL FROM YOUR lilo.conf 
     UNTIL YOU HAVE TESTED THE NEW ONE."  
     Run "lilo" which should install the boot loader in the master  
boot 
     record.  
     Reboot.  
 
Why doesn't SGI provide an iso-image/rpms for their entire 
distribution? 
 
Due to United States exportation laws forbidding the export of  
cryptography 
source code, we are not allowed to provide an entire Linux  
distribution on 
the Internet. However, we can and do provide all the changes we make  
to 
the base code. These deltas do not contain crypto source code and 
therefore are not regulated by the US Government.  
 
How do I install the SGI Linux 1.1 kernel patch? 
 
     You must first get a clean copy of linux-2.2.10. This can be  
obtained 
     from http://www.kernel.org.  
     Then, download the SGI kernel patch from here.  
     Unpack both the patch and the kernel tree.  
     From inside the "linux" directory (at the base of the kernel  
source 
     tree), run:  
 
     patch -p1 --dry-run < kernelpatch.patch 
 
     where kernelpatch.patch is the fully qualified path to the patch  
you 
     downloaded.  
     If there are no errors, then run:  
 
     patch -p1 < kernelpatch.patch 
 
     You may want to edit the top level Makefile and put "-1SGI_17" in  
the 
     EXTRAVERSION field, but this is not necessary. Do this if you  
want to 
     match the kernel to the version we shipped with 1.1.  
 
     (NOTE: We added a "-1SGI_17smp" when we configured SMP and 
     "-1SGI_17smp-bigmem" when we configured in BIGMEM and SMP.)  
     You should now be good to go. Compile at will.  
 
How do I build kernel rpms? 
 
Because we cannot export source code for the entire kernel, you may  
need 
to build the rpms directly from the patch and source. This is how you  
should 
do this:  
 
  1.Make sure you have RedHat 6.0 installed. Also, make sure you have 
     installed the bzip2 package (this does not get installed by  
defualt).  
  2.You will need to be root for this process to work properly, so "su  
root" 
  3.Change directory into "/usr/src/redhat/SOURCES"  
  4.Download all the files from 
     http://oss.sgi.com/projects/sgilinux1.1/download/SOURCES/ and put 
     them here.  
  5.Download linux-2.2.10.tar.bz2 (note the bz2 extension) and put  
that 
     here.  
  6.Download the SGI linux 1.1 patch here. (NOTE: some versions of 
     netscape will remove the ".gz" extension. You need to make sure  
to 
     change the name back to sgi-linux1.1-2.2.10.patch.gz)  
  7.gunzip sgi-linux1.1-2.2.10.patch.gz  
  8.Change directory to "/usr/src/redhat/SPECS"  
  9.Grab the kernel-2.2.spec file and put it here.  
 10.Execute rpm -ba kernel-2.2.spec  
 11.Resultant rpms should be in "/usr/src/redhat/RPMS"  
 
This will take a while depending on how fast your computer is. It  
takes 3 
hours on a PIII 500Mhz.  
 
How do I install a kernel rpm? 
 
Be warned, that by doing this, you may make your machine non-bootable,  
so 
do so with EXTREME CAUTION.  
 
     You will need to build a kernel rpm (see above).  
     su root, execute rpm -i kernel-xxx.rpm (please DO NOT run rpm -U  
for this 
     will remove your old kernel and if all does not go well, render  
your 
     machine useless)  
     cd /boot  
     ls and look for the vmlinuz with an SGI string appended. It  
should be of 
     the form 2.2.x-xSGI_x. Remember this as "sgi-string" and substitute 
 in 
     the following instructions.  
     mkinitrd --ifneeded initrd-sgi-string.img sgi-string  
     ls again and see if a file "initrd-sgi-string.img" exists. If it  
does, then we 
     will need to add it into the lilo.conf file (below).  
     vi /etc/lilo.conf (You know how to use vi, right?)  
     go down to the line before the first "image =" line  
     look at the tabbed lines under the first image and find the line  
with 
     "root=/dev/xxxx". remember this  
     insert  
 
     image = /boot/vmlinuz-sgi-string 
             label=sgi-linux  
 
     use the "root=/dev/xxx" from above to put:  
 
             root=/dex/xxx 
 
     if an initrd file was created above, add  
 
             initrd=/boot/initrd-sgi-string.img  
 
     finally, put:  
 
             read-only 
 
     Save the file and quit vi (type "ZZ" when in command mode)  
     run lilo  
 
Now you should be able to reboot to the new kernel. Since we put the  
new 
image as the first image in lilo.conf, the new kernel should come up 
automagically when you reboot. If a failure occurs, you can always  
reboot 
and type "linux" at the boot prompt to bring up the old kernel.  
 
Why is the kernel based off 2.2.10? 
 
At the time we froze the tree, 2.2.11 and 2.2.12 contained a memory  
leak. 
We wanted to provide the most stable version of the 2.2.x series at  
the time. 
We are in the process of moving our codebase up to 2.2.13 now and will 
release that patch as soon as we verify its stability.  
 
What if I have 2.2.10-ac12? 
 
We provide a patch against a bare 2.2.10 tree as well as a patch  
against 
2.2.10-ac12. You can find that here.  
 
How do I get SGI Linux 1.1 working on a Visual Workstation? 
 
SGI Linux 1.1 will work on 320 or 540 with some special configuration.  
Please 
realize that this is NOT SUPPORTED at all. For more detailed  
instructions, 
please visit the Linux Visual Workstation project page. You do not  
need to 
download the kernel patch from this page because all the VW changes  
are in 
the 1.1 kernel patch already. Here, you will find kernel config files  
for the 
Visual Workstation in both SMP and UP modes.  
 
-- 
※ 来源:·BBS 水木清华站 smth.org·[FROM: 210.39.3.50] 

BBS水木清华站∶精华区