Installing LinuxPPC-2000 Q4 on the IBM RS/6000 43P model 7248 HOWTO Ingvar Hagelund   ingvar@linpro.no Revision History Revision 1.50 2001-02-06 Revised by: ih Now supports LinuxPPC-2000 Q4 Revision 1.40 2000-12-14 Revised by: ih Translated to SGML. This is the initial release for LDP This document describes the installation of LinuxPPC-2000 Q4 on the IBM RS/ 6000 43P model 7248 series. ----------------------------------------------------------------------------- Table of Contents 1. Introducion 1.1. Copyright Information and Legal stuff 1.2. Disclaimer and scope 1.3. New versions 1.4. Credits 1.5. Feedback 1.6. Translations 2. Overview 2.1. The IBM RS6000 43P 7248-133 2.2. What's the matter, why not use the original installation procedure? 2.3. An overview on what to do 3. Setting up the hardware with SMS 3.1. Where is the BIOS? 3.2. How to use the SMS 3.3. What settings to use 3.4. More info about the hardware 4. Get the installation files 4.1. Buying a CD 4.2. Download CD images over FTP 4.3. Network installation 5. Make boot floppies 5.1. What floppies to make 5.2. How to make the bootfloppies 6. Boot the machine and start the installation program 6.1. Boot the machine 6.2. Make some hacks 7. Install the system 7.1. The LinuxPPC-2000 Q4 installer 7.2. Partition the harddisk(s) 7.3. Mount the partitions 7.4. Select and install packages 7.5. Make a root password and exit 8. Boot the machine 9. Set up networking 9.1. Support for the integrated ethernet adapter 9.2. Configuration files 9.3. Set IP address and netmask 9.4. Set hostname and gateway 9.5. Nameserver specification 9.6. The hosts file 9.7. Restart the network 10. Update the kernel and tune the X Window system 10.1. Why update the kernel 10.2. What files to download 10.3. Unpacking and patching the source 10.4. Configuring the kernel 10.5. Compiling and installing the kernel 10.6. Set up X 11. Set up sound 11.1. Support for the integrated sound adapter 11.2. Configure and compile the kernel 11.3. Configuring the modules 11.4. Reboot and pray 12. Resources 12.1. Other resources on Linux/PPC and 43P boxes 12.2. Installing other flavours of Linux on the 7248 13. Todo 14. Frequently Asked Questions 14.1. XF68 or XF86 14.2. There is "snow" on my X desktop 14.3. I can't get my hardware to work 14.4. Me wants another distro! 14.5. Boot floppies on other distributions 14.6. The PReP boot partition? 14.7. It won't boot at all. Could it be bad RAM? 15. Appendix: Using cfdisk to partition your harddisk 15.1. Hardisk names 15.2. Harddisk partitions 15.3. Starting cfdisk 15.4. Using cfdisk 15.4.1. The user interface 15.4.2. Deleting a partition 15.4.3. Making a new partition 15.4.4. Set the type of a partition 15.4.5. Make a partition bootable 15.4.6. Write the result to disk and quit 16. Appendix: More on partitioning Index 1. Introducion This document describes how to install LinuxPPC on the IBM RS/6000 43P 7248 series, that is, the 43P-100, 43P-120 and 43P-133. It describes quite in detail anything to get one of these boxes from a non working stage to a networked X workstation. This relase covers LinuxPPC-2000 Q4. For older versions of LinuxPPC, please have a look at my homepage at [http:// users.linpro.no/ingvar/43p] http://users.linpro.no/ingvar/43p. Some years ago I got a couple of old 7248s for free and I did not have any OS to run on them. So I gathered some bits and pieces from the net, and got it to install LinuxPPC-1999. Later, I found that a lot of other people may have the same problems that I had, so I wrote this document to help. It has been availble for some time in HTML form only. Now, it's moved to SGML and a part of the LDP. ----------------------------------------------------------------------------- 1.1. Copyright Information and Legal stuff This document is copyrighted (c) 2001 Ingvar Hagelund and is distributed under the terms of the Linux Documentation Project (LDP) licence, stated below. Unless otherwise stated, Linux HOWTO documents are copyrighted by their respective authors. Linux HOWTO documents may be reproduced and distributed in whole or in part, in any medium physical or electronic, as long as this copyright notice is retained on all copies. Commercial redistribution is allowed and encouraged; however, the author would like to be notified of any such distributions. All translations, derivative works, or aggregate works incorporating any Linux HOWTO documents must be covered under this copyright notice. That is, you may not produce a derivative work from a HOWTO and impose additional restrictions on its distribution. Exceptions to these rules may be granted under certain conditions; please contact the Linux HOWTO coordinator at the address given below. In short, we wish to promote dissemination of this information through as many channels as possible. However, we do wish to retain copyright on the HOWTO documents, and would like to be notified of any plans to redistribute the HOWTOs. If you have any questions, please contact "Linux" is a registrated trademark owned by Linus Torvalds. "IBM" and "RS/ 6000" are trademarks owned by IBM Corporation. "MS-DOS" is a trademark owned by Microsoft Corporation. Updated: June 02, 2001. ----------------------------------------------------------------------------- 1.2. Disclaimer and scope This document is made after own experiences on a 43P 7248-132. The things I did might or might not work for you. You are on your own. I take no responsibility whatsoever for any damage, loss or expenses because of something you might have done because this document said so. If you want to give me feedback on errors, typos, or anything that can make this document better, please feel free to contact me by sending an e-mail to < ingvar@linpro.no> No liability for the contents of this documents can be accepted. Use the concepts, examples and other content at your own risk. As this is a new edition of this document, there may be errors and inaccuracies, that may of course be damaging to your system. Proceed with caution, and although this is highly unlikely, I do not take any responsibility for that. This document is about installing LinuxPPC-2000 Q4 on the IBM RS/6000 43P, model 7248. The methods described in this document may or may not work on other machines or models. They may or may not work on other Linux distributions. Don't ask me about this, as I have not tested others. Look in the Section 12 for other resources on this. If you find that these instructions work on other models or distributions, please let me know, and I'll add that info here. All copyrights are held by their by their respective owners, unless specifically noted otherwise. Use of a term in this document should not be regarded as affecting the validity of any trademark or service mark. Naming of particular products or brands should not be seen as endorsements. You are strongly recommended to take a backup of your system before major installation and backups at regular intervals. Note that the 7248-132 and 43P-132 is two terms for the same model, and the same goes for 7248-133 and 43P-133. These four terms describes almost the exactly same model, with modifications so small, I have not been able to find them. You can safly assume that they are all the same machine. If you feel that this document makes your life better, makes you glad and happy, or if you just are in a good mood, and have nothing to do, feel free to donate hardware, money, pizzas, e-mailed thankyous, postcards or anything to me. I can be reached at:           e-mail:            snail-mail: Ingvar Hagelund, Asperudlia 15, NO-1258 OSLO, NORWAY.          ----------------------------------------------------------------------------- 1.3. New versions Version 1.50   * Updated to cover LinuxPPC-2000 Q4 Version 1.41:   * Made some small changes to the kernel chapter. Version 1.40:   * Added a FAQ section.   * Reformatted howto to SGML.   * New copyright notices.   * Ready for bundling with the LPD. If you are reading an offline version of this document, please note that an up to date HTML version can be found at [http://users.linpro.no/ingvar/43p] http://users.linpro.no/ingvar/43p. ----------------------------------------------------------------------------- 1.4. Credits A lot of people have given me suggestions and help on these pages. I might have forgotten some of them, and if so, I apologize. Please send me a note to me at , and I'll list you here. Thanks to all of you, I could not have done this without you. Ingvar Here is list of people that have been helpful, in a completely unordered fashion :-) Ingvar Hagelund James Rooker Mike McCammant Alberto Varesio Rolf Brudeseth Ian Dale Hollis R Blanchard Linar Yusupov Cort Dougan Roger Bonussen Rolf Zimmerli Philippe Senot John Roebuck Jacopo Silva Martin Espenschied Dan Burcaw www.linuxppc.com Tor Arne Rein Chien-Yu Chen Wadamori Naoki Arne Chr. Jørgensen Doc Shipley Thomas M. Nymand Alberto Varesio Pat Berge Kazunori Aoshima David Monro Matt Porter Olaf Hering Xavier Piednoir Steve Cornett Greg Ferguson ----------------------------------------------------------------------------- 1.5. Feedback Feedback is most certainly welcome for this document. Without your submissions and input, this document wouldn't exist. Please send your additions, comments and criticisms to the following e-mail address : < ingvar@linpro.no>. ----------------------------------------------------------------------------- 1.6. Translations This document exists in English only. If you want to translate this document into an other language, please do so, just give me a note, and read the copyright notices above. ----------------------------------------------------------------------------- 2. Overview ----------------------------------------------------------------------------- 2.1. The IBM RS6000 43P 7248-133 This chapter contains a short overview over the 7248-133 and Linux for PowerPC. The data for the other 7248 models should not be too different from this. The IBM RS/6000 43P model 7248-133 is a not extremely new PReP based PowerPC workstation which was produced from 1995 through 1997. The 43P series includes a lot of machines, both CHRP and PReP based. Our model has among other things this to offer:   * PReP architecture   * 132MHz PowerPC model 604 processor   * 512K synchronous L2 cache   * Max 192MB RAM (EDO)   * Integrated ncr53c810 SCSI-2 controller   * Integrated IDE controller   * Integrated AMD PCnet32 PCI ethernet adapter   * Integrated IBM E15 2MB graphics adapter based on the S3 Vision864 chip   * Integrated Crystal Audio cs4232 sound adapter   * 1.44MB Floppy disk drive   * IBM 8X SCSI CD-ROM drive   * Usually equipped with a 1.2MB IBM DPES 31080 SCSI hardisk You can find more information at IBM's sales manual for this machine, found at [http://www2.ibmlink.ibm.com/cgi-bin/master?xh=OE4LvmcyB*zbt11USenGnF9332& request=salesmanual&parms=H%5f7248%2d132&xhi=salesmanual%5e&xfr=F] this horrible URL Linux has a native port to the PowerPC processor, and all official code is maintained in the main kernel tree. The main part of the port was done by Gary Thomas. The story of the port [http://gate.crashing.org/doc/ppc/ doc003.htm] can be found here. For more information on running Linux on the PowerPC processor, check out the LinuxPPC homepage [http:// www.penguinppc.org] http://www.penguinppc.org. ----------------------------------------------------------------------------- 2.2. What's the matter, why not use the original installation procedure? The LinuxPPC-2000 Q4 distribution is made primary for the PowerMac Apple Macintosh. The installation programs has therefore no direct support for the 7248 nor the PReP architechture in general. But no worries, we'll make a few hacks, some manual configuration, and make it work anyway. Don't despair, this document will lead you through it, step by step. ----------------------------------------------------------------------------- 2.3. An overview on what to do Here is what we are going to do:   * Set up the hardware properly ("BIOS settings") with IBM's System Management Services (SMS)   * Get installation files from CD or FTP   * Make boot floppies   * Get the machine to boot and start the installation program   * Partition the hard drives   * Install the system   * Boot the system   * Set up networking   * Update the kernel and set up X   * Set up sound ----------------------------------------------------------------------------- 3. Setting up the hardware with SMS This chapter describes how to configure the system's Firmware to use the hardware properly. To do this we are going to use a software tool from IBM called System Management Services, SMS. ----------------------------------------------------------------------------- 3.1. Where is the BIOS? Lots of Linux users are familiar with the x86 platform, and immidiatly ask "What key may I press to access the BIOS". Well, on the 7248-133 it's not that easy, but it's not very difficult either. This is a real UNIX machine, and real UNIX machines don't have a BIOS. They have some sort of Firmware instead. There is not much to yell about, 'cause to the users, it's almost the same thing. Firmware often seem to have lots of bugs in them, just like the BIOSes in the PC world. They often are more selective on what kind of hardware they support too. For hardware system management on our 7248, IBM has a software program to be booted from floppy disk, called "SMS" - "System Management Services". With this you can access the Firmware. You can get floppy images and MS-DOS programs for creating those [http:// www.austin.ibm.com/support/micro/downproc.html] here. You might also want to upgrade your Firmware. Check the README files on the link about this. ----------------------------------------------------------------------------- 3.2. How to use the SMS To boot the SMS, turn off the machine, insert the SMS floppy, push the power button and press the F2 key while the system check icons pop up in the bottom of the screen. (If you prefer a text based interface, try F4 instead.) Basic usage is outside the scope of this document, but it's not very difficult. ----------------------------------------------------------------------------- 3.3. What settings to use You should have a little look over your system to see whats actually there. Then you should check the boot sequence, as it's quite important to make your system boot right. The sequence should be: (You guessed it) Floppy disk -> CD-player -> first SCSI harddisk -> second SCSI harddisk -> etc. ----------------------------------------------------------------------------- 3.4. More info about the hardware You might find good references in [http://www2.ibmlink.ibm.com/cgi-bin/ master?xh=OE4LvmcyB*zbt11USenGnF9332&request=salesmanual&parms=H%5f7248%2d132 &xhi=salesmanual%5e&xfr=F] IBM's salesmanual for our model. There are also some [http://www.rs6000.ibm.com/resource/hardware_docs/] reference manuals in pdf format for free download from the IBM RS/6000 pages that might come handy. ----------------------------------------------------------------------------- 4. Get the installation files This chapter describes how to get your hands on a copy of the LinuxPPC-2000 Q4 operating system. ----------------------------------------------------------------------------- 4.1. Buying a CD The easiest way to get all the files you need is perhaps just to buy an official CD set. You may order the CD set directly from [http:// order.linuxppc.com] http://order.linuxppc.com or you may try to find a local reseller, linuxppc.com has [http://www.linuxppc.com/getlinux/] a list here. ----------------------------------------------------------------------------- 4.2. Download CD images over FTP The other way around is to download preformatted CD images, and burn them out yourself. You can download installation CD images from any [http:// ftp.linuxppc.org/SITES] LinuxPPC mirror. You should download the LinuxPPC_2000_Q4_Install.image and the LinuxPPC_Software_2.image. There are some interesting readme files on the download sites on burning the files to a CD-ROM. Note: I have not been able to localize downloadable images for LinuxPPC-2000 Q4. If you know where to get such an image, please send me a mail. To make a CD, you need some CD burning software package. This is outside the scope of this document, allthough any good CD burning software should be able to do it. Remark that the images are in HFS format, and NOT the usual iso9660 format. ----------------------------------------------------------------------------- 4.3. Network installation Other Linux distributions have often support for direct installation via a network connection. This is not currently supported in LinuxPPC-2000 Q4, at least not on these machines, yet. ----------------------------------------------------------------------------- 5. Make boot floppies In this chapter we will learn how to make useable boot floppies from files downloaded from the Internet. ----------------------------------------------------------------------------- 5.1. What floppies to make To install LinuxPPC-2000 Q4 on the 7248 you need three floppies: One bootfloppy, and two ramdisk floppies. The bootfloppy is a precompiled Linux kernel image called [http:// intern.linpro.no/~ingvar/43p/images/carolina_bootimage_2.2.18_with_fb] carolina_bootimage_2.2.18_with_fb, and it can be found in the [http:// intern.linpro.no/~ingvar/43p/images] images directory on my homepage. The ramdisk floppies are in the ramdisk.image.gz file found in the install directory on a LinuxPPC ftp mirror or on the CD. But it would be easier, at least for ms-dos users to download 1.44MB sliced images, also from my [http:/ /users.linpro.no/ingvar/43p/images] images directory over http. If you use Netscape or another web browser to download the files, you should check that the sizes of the downloaded files are correct. Some versions of Netscape tend to uncompress compressed files, and we want to keep them compressed. This yields especially for the ramdisk.image.gz file(s). If strange freezes or other things happens at boot time, try using another program for downloading the files, like wget or lynx. ----------------------------------------------------------------------------- 5.2. How to make the bootfloppies Use always errorfree 1.44MB floppies for these images. The commands shown here is for a working Linux system. They might work on other UNIX systems as well. On some systems you may have to be root to write directly to the floppy drive. In those cases, just su root before issuing the commands. For MS-DOS, you may use the rawrite util. You can download rawrite from several places, for example a RedHat mirror as [ftp://ftp.freesoftware.com/ pub/linux/redhat/redhat-6.1/i386/dosutils/] ftp://ftp.freesoftware.com. More information on how to use rawrite [http://www.redhat.com/support/manuals/ RHL-6.1-Manual/install-guide/ch-making-diskettes.html] here. To make the bootfloppy, insert a floppy in the drive, cd to the directory containing the bootfloppy image and issue the command: dd if=carolina_bootimage_2.2.18_with_fb of=/dev/fd0 bs=36b conv=sync Label the disk "Boot floppy" or whatever you like. To make the first ramdisk floppy, insert a floppy in the drive, cd to the directory containing the ramdisk image, and issue the command: dd if=ramdisk-2000-Q4-floppy-image.1 of=/dev/fd0 bs=36b conv=sync (If you use the ramdisk.image.gz from the CD or a ftp mirror, try dd if= ramdisk.image.gz of=/dev/fd0 bs=36b conv=sync count=80 ) Label the disk "Ramdisk root floppy (#1)" or whatever you like. To make the second ramdisk floppy, insert a floppy in the drive, cd to the directory containing the ramdisk image, and issue the command dd if=ramdisk-2000-Q4-floppy-image.2 of=/dev/fd0 bs=36b conv=sync (If you use the ramdisk.image.gz from the CD or a ftp mirror, try dd if= ramdisk.image.gz of=/dev/fd0 bs=36b conv=sync skip=80) Label the disk "Ramdisk floppy #2" or whatever you like. ----------------------------------------------------------------------------- 6. Boot the machine and start the installation program In this chapter we will find out how to get the installation program up and running. ----------------------------------------------------------------------------- 6.1. Boot the machine To boot the 7248, just insert the bootdisk and switch on the machine. Insert the installation CD at the PowerPC splash screen. If it won't boot off the floppy drive, check SMS settings (Section 3), and try to force a floppy boot by pressing F5 (or F6) at the bootscreen while the check icons pop up in the bottom of the screen. After a while, the screen blanks out, and Linux will boot. At this point, you can shout a little "hooray" for yourself, if there are not too many in the room, and Tux, the Linux Penguin will show up in the upper left corner of the screen. Insert the ramdisk root floppy and ramdisk floppy #2 when prompted. After some seconds, the installation program will complain about a lot of things. It can't find a usb mouse, it can't start the Xpmac X-server, it can't open the local display, and that kind of things. Don't worry, we'll take care of this in a minute. Just press enter, and you'll be thrown to a standard root bash prompt. For those of us who have used Unix systems earlier, this is enough to give good vibrations. For all others: Don't Panic [tm]. ----------------------------------------------------------------------------- 6.2. Make some hacks To be able to start the installation program, we have to change the standard PowerMac setup to something that is useable for the 7248. This is what we are going to do in this section. Remember that all commands are case sensitive. First, let's set up mouse, to make them work correctly with X. Issue these commands: rm -f /dev/mouse ln -s /dev/psaux /dev/mouse Done! Now, that wasn't too difficult, was it? Let's continue with some X configuration. Issue these commands: cd /etc mv X11/XF86Config X11/XF86Config.old cp XF86Config.PReP X11/XF86Config rm -f /etc/X11/X ln -s /usr/X11R6/bin/XF68_FBDev /etc/X11/X This XF86Config.PReP file is not complete, it so we have to fix it. The easiest way to do this is to run Red Hat's Xonfigurator program Xconfigurator and follow the instructions on the screen. The usage of Xconfigurator is beyond the scope of this document, but it's quite easy. If you need help, try the Xconfigurator section in the [http://europe.redhat.com/documentation/ rhl6.0/english/install-guide/manual-html/doc064.php3] Red Hat Installation guide. Xconfigurator should figure out that we use the IBM E15 frame buffer device by itself. Note that the frame buffer device has only support for 256 colors, so only 8 bit mode should be selected. Follow the on-screen instructions and enter values that match your Screen. Resolutions of 800x600 or 1024x768 should be allright. Skip the test at the end. It will fail. If you try it ouy, you will maybe conclude that the X-server does not work. Again, Don't Panic [tm]. The reason for this is that Xconfigurator presumes you have an X font server running. You don't, so we have to add Font Paths manually. Edit the configuration with vi /etc/X11/XF86Config (What? You don't like vi? [http://www.cs.uni.edu/Help/vi.html] Read this to get started.) Look for the line which contains the FontPath. Comment out (that is: Put a '# ' in front of) the existing line containing something like "unix/:7100", and add these lines instead. FontPath "/usr/lib/X11/fonts/misc/:unscaled" FontPath "/usr/lib/X11/fonts/cyrillic/:unscaled" FontPath "/usr/lib/X11/fonts/100dpi/:unscaled" FontPath "/usr/lib/X11/fonts/75dpi/:unscaled" FontPath "/usr/lib/X11/fonts/Speedo/" FontPath "/usr/lib/X11/fonts/Type1/" FontPath "/usr/lib/X11/fonts/misc/" FontPath "/usr/lib/X11/fonts/cyrillic/" FontPath "/usr/lib/X11/fonts/100dpi/" FontPath "/usr/lib/X11/fonts/75dpi/" You are now ready to start the installation program. Issue this command, and go for it: start_installer ----------------------------------------------------------------------------- 7. Install the system In this chapter we will get used to the LinuxPPC-2000 Q4 installation environment, partition the harddisk(s) and install the operating system packages. ----------------------------------------------------------------------------- 7.1. The LinuxPPC-2000 Q4 installer So, now we're actually getting somewhere! At least, so it looks. This looks really cool, doesn't it? Press the right mouse button on the background on the screen. What a cute little menu! Notice that you can change the colors of the screen with the Styles option. This is the first installation program I've ever seen with changeable colors :-) Note that you can move the windows on the screen around by clicking and dragging on the blue top or right borders. To bring a window to the front, try clicking on it. Select xterm on the Blackbox (background) menu. This will bring up a command line terminal window which we will use to start some programs that can do what the installation program can't. Behold! There are even two (!) installation programs. Unfortunately, they don't work. In the xterm window, kill the installation programs. We have to do some more hand-work. killall install_helper ----------------------------------------------------------------------------- 7.2. Partition the harddisk(s) The first thing to do is to partition the hard disk(s). Since we have brutally killed the installation program, THERE IS REALLY NO WAY TO DO THIS. I have framed you all the time. Just shut down the machine and have a beer. Then visit some friends. Just kidding. In the xterm window, issue the command fdisk /dev/sda This will start the good old fdisk program. Note: This program will wipe away anything on the disks in the machine. If there are something on the disks that you want to protect, exit the program by hitting Q and press Enter. If you like a menu driven program, we'll start using cfdisk in a minute. For an overview on the fdisk commands, hit ?. To view the present partition scheme, hit P. If there are lots of unknown AIX information there, hit D, and select 1, D again and 2, and continue all the way up to 5 to be sure all old AIX partitions are wiped away. Write the changes to the disk by hitting W, and quit the program by hitting Q. If there are no AIX partitions on the disks, just quit with the Q command. If you have more than one harddisk in the machine, use the commands fdisk /dev/sdb for the second harddisk, fdisk /dev/ sdc for third and so on, and repeat the steps from the first disk. You could of course use fdisk to make the new partitions too, but I prefer a more user friendly solution. At the shell prompt, type cfdisk /dev/sda To start the cfdisk program on the first harddisk. Change to sdb and sdc, and so on for more harddisks. Basic usage of cfdisk is outside the scope of this document, but I have written a little starter. You can read it in the Section 15. You should have at least these partitions:   * A boot partition. It should be the first primary partition on one of the SCSI drives, preferably the first (this naming the partition to sda1). It must have type PReP boot (type 41), and must be large enough to hold a compressed Linux kernel image (zImage). Something like 5-10MB should do.   * A swap partition. It can be either a primary or a logical partition on any drive. Any size will do, but a guide may be twice the size of you physical RAM. I have 64MB RAM, so I have a swap partition on 128MB. Remember: This is only a guide.   * A system root partition. It can be either a primary or a logical partition, and it should be big enough to hold the main parts of the installation. You should write down the device (disk and partition number, like sda5, for example) for your system's root partition. You will need it later. The easy way is just to use the rest of the harddisk space for this. If you have several harddisks, big drives or special requirements on safety and other things, you should consider to make own partitions for /home, /usr, /usr/local, and other parts of the system. Details on this is outside the scope of this document, but there is a good discussion on this in the Linux Partition HOWTO. It is a VERY good tip to find a piece of paper and write down which partitions you have made, what you want to use them to, and where you want to mount them. You will need this information later. When you have finished partitioning your disks. ----------------------------------------------------------------------------- 7.3. Mount the partitions So, we have some nice partitions. Let's use them. We have to make filesystems on them, and then mount them to our existing installation filesystem to be able to copy any files to them. Now, I HOPE you have written down what partitions to use where. First mount the root partition: mkdir /mnt/install mke2fs /dev/sdxy mount /dev/sdxy /mnt/install Of course, x and y are disk and partition number, as you have written down. I use sda5 for my root partition, so I use the commands 'mke2fs /dev/sda5' and 'mount /dev/sda5'.   If you have more partitions, mount them in the same way. I have a 1GB partition at sdb1 which I want to use for the /usr system. So I write this: mkdir /install/usr mke2fs /dev/sdb1 mount /dev/sdb1 /install/usr You may have other partitions and also other mount points, like /usr, /tmp, / home, /var and other stuff. But I guess you've got the point now. ----------------------------------------------------------------------------- 7.4. Select and install packages You have now cleared the first stage, and get 250 bonus points. Congratulations. If the installation program had worked, you had got no points at all, so be happy. The next stage is to install packages. Here we can finally use some semi-automatic programs. In the xterm window, type this: xupgrade --install --debug --path_to_root /mnt/install A new window will pop up. Select packages after your own will. What packages should I select, you say. Oh, please! I have no idea how you're going to use the machine :-). Press Install. Aaah. There it goes! After some minutes (not to say hours, it feels like that, doesn't it?) the install will be complete. ----------------------------------------------------------------------------- 7.5. Make a root password and exit Before we finalize the installation, it's a cool thing to have a root password. Enter your new installation, and make a funny, not-easy-to-guess password like this: chroot /mnt/install passwd (You will be prompted for the new password twice) You are still inside the freshly installed system (the chroot command does that magic). Now, let's fix some other stuff while we're at it. The mouse and the keyboard are not right. Same goes for the timezone. If you are an experienced user you may want to add even more configuration at this point. rm -f /dev/mouse ln -s /dev/psaux /dev/mouse kbdconf timeconfig Next, you may find that the /dev/cdrom link is not working properly, it points to itself. It should point to /dev/scd0, so let's fix this. Issue these commands: rm -f /dev/cdrom ln -s /dev/scd0 /dev/cdrom You should now be able to mount the cdrom using /dev/cdrom. Thanks to Thomas M. Nymand for this tip. Now, you should be all ready. Issue the command exit to exit the installed system and return to the intallation system. Finally, shutdown the system, remove the CD and floppy disk, and take a break. reboot ----------------------------------------------------------------------------- 8. Boot the machine In this chapter we will boot our fresh installed system for the first time, and make some small custom changes to make it work as it should You are done! If everything worked, you should now be able to reboot you're system, and start LinuxPPC-2000 Q4 for the first time. Reinsert the boot floppy disk in the floppy drive, and switch the machine on again. If it won't boot, try to hit F5 at the splash screen while the system check icons pop up in the bottom of the screen. At the boot prompt, ("Linux/PPC load:") you must add a boot parameter to make the system find your root partition. (That's usually the main system partition.) Press backspace to remove what's already there, and add something like this: root=/dev/sda5 I use sda5 as sda5 is where I have installed my root partition, that is, the partition mounted at "/". You might have something different, and you should have written it down when you partitioned you harddisk(s). You did, didn't you? The system should boot up, and after a minute or so, greet you with a login prompt. Congratulations, you have installed LinuxPPC-2000 Q4 on your computer! From here, you have to know how to use linux. This is absolutely outside the scope of this document, but if you are a complete newbie, you could for example check out [http://www.linuxdoc.org/LDP/lame/LAME/ linux-admin-made-easy/book1.html] Linux Administration Made Easy by Steve Frampton, and start at [http://www.linuxdoc.org/LDP/lame/LAME/ linux-admin-made-easy/c691.html] chapter 6, since you've already got your system up. If you are not an US citizen, you should look over the X configuration file to get your local keyboard. Use a text editor like vi or pico, just like we did to get the installation system to work. Try vi /etc/X11/XF86Config and scroll down to the Keyboard section. Check that you have settings that suits you. Edit as you wish. You may also want to remove LinuxPPC's annoying attempt to autoconfigurate X for you when the machine boots into runlevel 5. rm -f /etc/rc.d/rc5.d/*Xautoconfig The next time you power-cycle the box, you must again boot from the floppy. The bootloader arguments at the boot prompt ("Linux/PPC Load:") should be still be something like this: root=/dev/sda5 Where of course, you may have something different from sda5, according to where your root partition is. This is the time to install the rest of the system, with all the packages that are on the software CD. Login as root, open a terminal window, insert the CD, mount it, and start the package upgrade program: mount -t HFS -o ro /dev/scd0 /mnt/cdrom xupgrade ----------------------------------------------------------------------------- 9. Set up networking In this chapter we will set up TCP/IP networking on the integrated ethernet adapter ----------------------------------------------------------------------------- 9.1. Support for the integrated ethernet adapter The 7248-133 is equipped with an internal AMD PCnet 32 PCI ethernet adapter. There is support for this adapter in the Linux kernel source, and if you installed from my bootimage, you should have support for it in your kernel already. Otherwise, you can compile a new kernel. The bootimage described in Section 5 has support for the adapter too. ----------------------------------------------------------------------------- 9.2. Configuration files The configuration files to set up TCP/IP-networking over ethernet on this box is the same manual configuration as on any other RedHat-like Linux box elsewhere, but here, we do it manually, without any tools other than your favourite text editor. This only covers basic installation, and NO EXTRA SECURITY AT ALL. There are plenty of other, and much better sources about this topic than I can put up here. The files to edit are found in the /etc directory and its subdirectories. To edit the files, you should be logged in as root. ----------------------------------------------------------------------------- 9.3. Set IP address and netmask To set the IP address and netmask, make a file /etc/sysconfig/network-scripts/ifcfg-eth0 That looks like this: DEVICE="eth0" ONBOOT="yes" IPADDR="111.122.133.144" NETMASK="255.255.255.0" Of course, replace the numbers in the IPADDR and NETMASK fields with the ones you should use. If you don't know, ask your system administrator. ----------------------------------------------------------------------------- 9.4. Set hostname and gateway To set the hostname and gateway, edit the file /etc/sysconfig/network so it looks like this: NETWORKING=yes FORWARD_IPV4="yes" HOSTNAME=myhost.mydomain GATEWAY="122.133.144.155" Of course, replace the values in the HOSTNAME and GATEWAY fields with the ones you should use. If you don't know, ask your system administrator. ----------------------------------------------------------------------------- 9.5. Nameserver specification To specify a nameserver, edit the file /etc/resolv.conf so it looks like this: search mydomain nameserver 133.144.155.166 Of course, replace the values in the search and nameserver fields with the ones you should use. If you don't know, ask your system administrator. ----------------------------------------------------------------------------- 9.6. The hosts file Finally, edit the the file /etc/hosts so it looks like this: 127.0.0.1 localhost localhost.localdomain 111.122.133.144 myhost.mydomain myhost loghost The last line should suit the values you added previously as the system's IP-address and hostname. ----------------------------------------------------------------------------- 9.7. Restart the network This should be everything you need to get started. Now restart networking with the command /etc/rc.d/init.d/network restart And you should be all up. Note that there is a bug somewhere that makes the netcard freeze the whole system when shutting down eth0. According to Martin Espenschied, this is a known issue, and can be fixed. When I know how, I'll put the information here. Till then, remember to sync your system before shutting down, and you should not miss any information. Remember my disclaimer in Section 1.2 though. An ugly hack to resolve this might just be to NOT to shut down eth0 at shutdown/reboot. This can be done by editing the file /etc/rc.d/init.d/ network, and in the stop) case, just comment away the ifdown command, and add a phoney command, like this: action "Shutting down interface $i" echo does_nothing # ./ifdown $i boot Note that this is a rather ugly hack, that won't actually solve the problem, it just hides it. The network won't go properly down until you reboot the machine. This is actually the "stupid Windows" way. I really hope that somebody have a better fix on this later. Thanks to Doc Shipley for this tip. ----------------------------------------------------------------------------- 10. Update the kernel and tune the X Window system In this chapter we will download the Linux kernel sources, add a few patches, and compile and install our own custom kernel on the harddisk. When we have successfully accomplished this exciting event, we don't have to boot from the installation boot floppy anymore. ----------------------------------------------------------------------------- 10.1. Why update the kernel The kernel we have used this far is a 2.2.18 kernel that I have provided. This is a quite stable and good kernel, but it's not sure that it's what you want. You should make your own kernel so you know what patches you need and what modules you can install when you really need them. Here are links to all sources and patches, and a step by step guide to compile your new kernel. As for the installation we just have done, X does work, but only when you boot from the boot floppy. Would it not have been nice to be able to boot directly off the hard disk - and by the way, what about sound support? Let's set up this together as quickly as possible. Before starting downloading files and compiling the kernel, check that you have these packages installed:   * make   * gcc   * cpp   * glibc   * glibc-devel   * ncurses-devel   * kernel-headers   * This list should probably be longer ----------------------------------------------------------------------------- 10.2. What files to download We'll use the 2.2.18 kernel sources. The 2.2.19 kernel is availble, but it has some problems with compiling on ppc, so we'll stay with 2.2.18. To add better support for our Carolina motherboard, well add two patches from David Monro's Carolina page. This may sound complicated, but believe me, it's not. Follow the steps below here, and we'll get you up in an hour or so. We're going to use the standard place for linux kernels, that is /usr/src/ There might be a linux directory there already, so let's rename it: mv /usr/src/linux /usr/src/linux.old When downloading the kernel source and patches, place all files in /usr/src. Begin with the [ftp://ftp.kernel.org/pub/linux/kernel/v2.2/ linux-2.2.18.tar.gz] linux-2.2.18.tar.gz source from the [ftp:// ftp.kernel.org/pub/linux/kernel/v2.2/] /pub/linux/kernel/v2.2 directory at [ftp://ftp.kernel.org] ftp.kernel.org or a [http://ftp.kernel.org/mirrors] local mirror (recommended for faster download). Then, get the [http://www.amberdata.demon.co.uk/carolina/carolina.diff.gz] Carolina patch and the [http://www.amberdata.demon.co.uk/carolina/ ibm_e15fb.diff.gz] IBM E15 frame buffer patch from David Monro's Carolina page at [http://www.amberdata.demon.co.uk/carolina] http:// www.amberdata.demon.co.uk/carolina ----------------------------------------------------------------------------- 10.3. Unpacking and patching the source The next step is to unpack and patch the source files you just downloaded. cd to the directory where you downloaded the files, and unpack the kernel source by issuing this command: tar xzvf linux-2.2.18.tar.gz (On some mirrors there are only bz2 files availble. If this is the issue, use xvIf instead of xvzf.) This will make a directory called "linux" with all the kernel source. Now we shall add the patches. If the patches have the extentions "gz", unpack them with gunzip like this: gunzip carolina.diff.gz gunzip ibm_e15fb.diff.gz Now add the carolina patch by issuing the commands: mv linux new patch -p0   * Get rid of that annoying freeze at eth0 shutdown. This should be a part of the networking chapter. If you know something about this, please let me know.   * Dual Boot with AIX. We need some kind of a bootloader. Does such a thing exist? We know quik does not work on the PReP boxes.   * Get midi to work. Is this possible? ----------------------------------------------------------------------------- 14. Frequently Asked Questions In this final chapter I've included som frequently asked questions. This list should probably be much longer. Please let me know if you have something to add. ----------------------------------------------------------------------------- 14.1. XF68 or XF86 What is right, XF68 or XF86? I have got a lot of questions conserning the name of the X-server in the installation program. I have called it "XF68_FBDev". On some CDs the server has got another name, "XF86_FBDev". The reason for this naming convention and confusion is purely historical. The Linux Frame Buffer Device was first developped on m68k Macintoshes, and the XFree86 server for the device was hence called XF68_FBDev. Later on the Frame Buffer Device was ported to other platforms like the x86 clones and PowerPC. What is the right name? The question is left as an exersice for the reader. ----------------------------------------------------------------------------- 14.2. There is "snow" on my X desktop How can I configure X so it removes the "snow" on my desktop? The easy answer is: You can't. The kernel frame buffer device made by David Monro is still in an early stage, though working very well. Distortions in the picture when moving the mouse or scrolling a window are perfectly normal at eg 1024x768@60Hz. If you are a hacker, please fix it and post a patch to David. We would all love it very much. ----------------------------------------------------------------------------- 14.3. I can't get my hardware to work How can I get my new ultra whizbang XYZ card to work? The 7248 is a PC-like box with ISA and PCI interfaces, so one should think that using "normal" PC hardware made for the x86 platform should work flawlessly. Sadly to say, it doesn't. The drivers often have to be ported, and there are not that many Carolina motherboard kernel hackers out there. In addition, much hardware made for the x86 platforms uses BIOS calls to work properly. As the 7248 and its relatives does not have such a BIOS, it's extremely difficult to get this hardware to run under Linux. There have been rumours about a BIOS-fake-layer in the kernel, but I've still got to see a place to download and test it. That said, there are working hardware for this box that runs with Linux. For questions about this, please contact the Workstation list, see Section 12. ----------------------------------------------------------------------------- 14.4. Me wants another distro! Why do you not support more distributions in your howto? There is one easy answer for this: I have not got the time to do this. I got LinuxPPC-1999 to work on my 7248 a year or so ago, and have not changed away from LinuxPPC since then. I plan to install Debian some time in the future, and have tried both SuSE and Yellow Dog, and have found that much of the steps are quite equal. The most troublesome part is to get the machine to boot the installation program. From there, each installer should do the job more or less itself. Getting X and sound to work should be more or less similar for all distributions, so just read the steps in this howto and try to make it work on your own. Feedback for this document is very welcome. ----------------------------------------------------------------------------- 14.5. Boot floppies on other distributions Can I use the floppies mentioned in this howto for other distributions The bootfloppy mentioned in this howto should have support for all the hardware in the 7248, so you should be able to boot any distribution which uses the same floppy based installation scheme, that is, with the installation program on a ramdisk on one or more floppy disks. This means you should be able to boot LinuxPPC, SuSE, Yellow Dog and Debian with the bootimage. You have to have each distributions own installer ramdisk floppies, though. ----------------------------------------------------------------------------- 14.6. The PReP boot partition? Where should I mount the PReP boot partition? To be able to understand the answer for this question, it's important that the reader understands how the 7248 boots into Linux. This is a three step procedure. First, the Firmware (which behaves in the same way as a PC BIOS) looks for something to boot. Usually, it should check the floppy drive, the CD drive, and then the first SCSI disk. On the SCSI disk it will look for a special partition called a PReP boot partition. On this partition, it will read the first program it can find there. If this is a Linux kernel bootloader, it will read and run this, and then the bootloader boots Linux. From here, Linux is in charge. Many have asked where they should mount the PReP boot partition (the type 41 partition). This is a common misunderstanding. The PReP boot partition, usually located on /dev/sda1, should NOT be mounted anywhere. The files on this partition, usually only a single Linux kernel with a static linked kernel loader, are only used by the firmware when booting. The operating system does not use these files after the kernel has booted, so there is no need for mounting that partition. Some people mix the meaning of the /boot directory and the PReP boot partition. Both use to contain kernels, but their use are different. /boot is used for storing kernels for later use, and for bookholding system info. The /boot directory is NOT read by the Firmware at boot time, so changing the contents of this directory does not change the way the Firmware loads Linux. To be able to load a new kernel, you have to replace the existing kernel on the PReP partition. This is done with the dd command, see Section 10 for details. ----------------------------------------------------------------------------- 14.7. It won't boot at all. Could it be bad RAM? The machine won't boot at all. I suspect the RAM could be the problem. What kind of RAM should I use for this box? The 7248 and it's cousines with Carolina motherboard do use special RAM, more specifically, they use only parity RAM. David Monro states that is is possible to make them work with other types of RAM if you remove the cache. Look at Section 12 for details. ----------------------------------------------------------------------------- 15. Appendix: Using cfdisk to partition your harddisk ----------------------------------------------------------------------------- 15.1. Hardisk names SCSI harddisks are named with sdx, where x is a hardisk letter. The disk with the lowest SCSI ID on the first controller will become sda, the next lower sdb, an so on. If you have IDE harddisks, they are called hda, hdb, hdc, and so on instead, where hda is the master disk on the first controller, hdb is the slave disk on the first controller, hdc is the master disk on the second controller, and so on. ----------------------------------------------------------------------------- 15.2. Harddisk partitions GNU/Linux systems usually use a partition scheme where a harddisk can have up to four primary partitions. If you want more, you have to make one of these an extended partition where you can make several logical partitions. The partitions are named with the disk they belong to, and a number. The first primary partition on the first SCSI disk is therefore sda1, the second primary partition is sda2, and so on. The first and second logical partition on an extended partition on the first SCSI disk is sda5 and sda6, and so on. If this makes absolutely no sense to you at all, try to read Section 16. ----------------------------------------------------------------------------- 15.3. Starting cfdisk you start cfdisk from the command line with the command cfdisk /dev/sdx where x is the SCSI hardisk letter, like a, b, c, d, etc. So if I want to partition the first harddisk on the SCSI controller, I'll enter the command cfdisk /dev/sda ----------------------------------------------------------------------------- 15.4. Using cfdisk 15.4.1. The user interface After you have started cfdisk you'll get an interface where the current partition table is listed with the names and some data about each partition, and some command buttons on the bottom of the screen. To change between partitions, use the up and down arrow keys. To change between commands, use the left and right arrow keys. ----------------------------------------------------------------------------- 15.4.2. Deleting a partition To delete an existing partition, highlight it with the up and down keys, select the Delete command with the left and right arrow keys, and press Enter. ----------------------------------------------------------------------------- 15.4.3. Making a new partition To make a new partition, select the New command with the left and right arrow keys, and press enter. You'll get the choice between a primary and a logical partition. If you want a logical partition, the program will automatically make an extended partition for you. Then you must choose the size of the partition (in MB). If you can't enter a value in MB, return to the main screen with the Esc key, and select MB with the Units command. ----------------------------------------------------------------------------- 15.4.4. Set the type of a partition To set the type of a partition, for bootable PReP, Linux swap or Linux ext2, highlight the actual partition, and select the Type command. You'll get a list over different types. Press space, and you'll get even more. Find what type you need, and enter the number at the prompt. ----------------------------------------------------------------------------- 15.4.5. Make a partition bootable To be able to boot from a primary partition, you need to make it bootable. Highlight the actual partition and select the Bootable command. ----------------------------------------------------------------------------- 15.4.6. Write the result to disk and quit When you are content with the layout of the disk, select the Write command. The partition table will be written to disk. Remember that this will destroy all data on partitions you have deleted or changed. You should therefore be very sure that you want to do this before actually press the Return key. To exit the program, select the Quit command. ----------------------------------------------------------------------------- 16. Appendix: More on partitioning After several questions on what partitioning really is, I'll just quote an answer I gave in a mail once. Okay, here goes: In an operating system you need several different filesystems for several different applications. For example, you need a swap filesystem because your main memory can't hold all information the operating system needs, so some of it has to be temporary written to disk. You may also need some special filesystem from which the machine reads the operating system when you switch it on. Finally, you need of course one or more filesystems to store the operating system program files and your user files. It may be a good idea to put these in different places (ie. on different filesystems) in case you have to reinstall the operating system, but don't want to scratch all your work. The best thing is maybe to have all these filesystems on different disks. But one has seldom more than one or two disks in a computer. So what we do is to slice up the disk(s) in several slices (partitions) and use the slices for several filesystems. Then the operating system mounts the filesystems together to one single file tree, so it is easy to access the files. (Other operating systems, like MS-DOS and NT use some other technology: They do not bind the slices together to one file tree, but keeps them separate as "stations". What is the best scheme? You figure!) Here a thought example with one 2GB disk on a 7248: The mount point shows where in the file tree a filesystem is mounted. Partition Size Type Mountpoint Bootable ---------------------------------------------------------------- /dev/sda1 10MB 41 (PReP Boot) (Not mounted) yes /dev/sda2 150MB 82 (Linux Swap) (Not mounted) - /dev/sda3 1840MB 83 (Linux ext2) / (Root partition) - This would give a bootprompt command like this: root=/dev/sda3 If you want, you could add own partitions for important directories like / home, /boot, /var, /usr/local and so on. Here is an other example with two disks, actually my own configuration with two disks: Partition Size Type Mountpoint Bootable ---------------------------------------------------------------- /dev/sda1 20MB 43 (PReP Boot) (Not mounted) yes /dev/sda2 133MB 82 (Linux Swap) (Not mounted) - /dev/sda5 930MB 83 (Linux ext2) / (Root partition) - /dev/sdb1 315MB 83 (Linux ext2) /home - /dev/sdb2 770MB 83 (Linux ext2) /usr/local - This would give a bootprompt command like this: root=/dev/sda5 Before you ask:   * ext2 is Linux' standard filesystem   * Linux uses the old partition scheme from MSDOS. This means that if there are more than 3 partitions on one disk, one uses an extended partition (sda3) that may hold several logical partitions (sda5, sda6, sda7, ...)   * Yes, my partition scheme is a bad one. My root partition was filled up in a couple of weeks or so. Don't use it. It is an example only. Hope this clears up some things. ----------------------------------------------------------------------------- Index Symbols 7248 7248-133, The IBM RS6000 43P 7248-133 ----------------------------------------------------------------------------- A abstract, Installing LinuxPPC-2000 Q4 on the IBM RS/6000 43P model 7248 HOWTO ----------------------------------------------------------------------------- B bios, Where is the BIOS? boot, Boot the machine boot prompt, Boot the machine ----------------------------------------------------------------------------- C CD, Buying a CD copyright, Copyright Information and Legal stuff credits, Credits ----------------------------------------------------------------------------- D disclaimer, Disclaimer and scope ----------------------------------------------------------------------------- E ethernet, Support for the integrated ethernet adapter ----------------------------------------------------------------------------- F feedback, Feedback floppies, Make boot floppies Frequently Asked Questions FAQ, Frequently Asked Questions FTP, Download CD images over FTP ----------------------------------------------------------------------------- H hacks, Make some hacks hardware, More info about the hardware hostname gateway, Set hostname and gateway hosts file, The hosts file ----------------------------------------------------------------------------- I installation files, Get the installation files installation program, Boot the machine and start the installation program introduction, Introducion ip address, Set IP address and netmask ----------------------------------------------------------------------------- K kernel, Update the kernel and tune the X Window system kernel version kernel patches, What files to download ----------------------------------------------------------------------------- L LinuxPPC-2000 Q4 installer, The LinuxPPC-2000 Q4 installer ----------------------------------------------------------------------------- N nameserver, Nameserver specification network, Set up networking Network-install, Network installation ----------------------------------------------------------------------------- O overview, Overview ----------------------------------------------------------------------------- P packages, Select and install packages partition, Partition the harddisk(s) partitioning cfdisk, Appendix: Using cfdisk to partition your harddisk partitions, Partition the harddisk(s) password, Make a root password and exit PReP boot partition, The PReP boot partition? ----------------------------------------------------------------------------- R RAM, It won't boot at all. Could it be bad RAM? resources, Resources ----------------------------------------------------------------------------- S SMS, Setting up the hardware with SMS sound, Set up sound ----------------------------------------------------------------------------- T todo, Todo translations, Translations ----------------------------------------------------------------------------- V versions, New versions ----------------------------------------------------------------------------- X Xconfigurator, Make some hacks