Fedora Installation Notes
Fedora 7 Installation Notes
VMware Server
If you install VMware server onto your Fedora 7 box, you will likely need to install the any any updates. In short:
- Install VMware Server.
- Download and extract the any any updates. Look for a file name like: "vmware-any-any-update113.tar.gz" (the 113 will probably be different) at: "http://platan.vc.cvut.cz/ftp/pub/vmware/".
- Run the: "runme.pl" script from any any updates.
NOTE: The recommended virtual SCSI drivers in VMware Server v1.0.3 did not seem to work with the SCSI modules in Fedora 7. We ended up using the lower performance virtual ATA drivers in our setup (maybe we should have tried the virtual BusLogic adapter).
Virtual PC
Installation of Fedora 7 on a Windows box using Microsoft Virtual PC 6.0.156.0 is possible. Here are some notes:
- Use text installation mode.
- After the installation completes and the system reboots, the screen will come up in an unreadable state. However, you will be able to connect to the system using a ssh client (you can use: nmap -p 22 192.168.1.100-250 on a range of IP addresses to help identify the system).
- After connecting to the system using a ssh client, add the vga=771 boot option to: "/boot/grub/grub.conf". It will look something like the following:
title Fedora (2.6.22.1-41.fc7) root (hd0,0) kernel /vmlinuz-2.6.22.1-41.fc7 ro root=/dev/VolGroup00/LogVol00 rhgb quiet vga=771 initrd /initrd-2.6.22.1-41.fc7.img
- Edit the file: "/etc/inittab" and set the default run level to 3.
- Reboot the system.
At this point you should have a stable development system. You won't have a graphical desktop, but you can use a VNC desktop should you need graphical access.
NOTE: Even though the system won't have a graphical desktop started, you may still want to change the graphics driver to vesa using the following command: "system-config-display --set-driver=vesa". This way you will at least be able to see the screen if you forget and try to start X via: "init 5".
Development Case Study Using VMWARE by a newbie
I undertook a challenge to see if I could make a working NST under VMWARE. The motivation was to obtain extra functions beyond what was available in the NST 1.5 VMWARE image; e.g. gain access to the VMWARE hgfs function and add additional tools. Samba was an alternative to hgfs. But to add the additional tools I needed to build an FC image anyway. So why not just build FC7/NST under VMWARE?
I started by following the instructions, Building From Source, that were developed by the primary NST developers. FC7 was built under Fusion using the "split" option for an 8GB virtual drive. The split option was chosen to make the image portable using the FAT file system.
During the FC7 install, I generally chose not to install packages that dealt with (to be filled in later).
The FC7 install proceeded smoothly. An account for nstuser was added in the installation process, in case there was a need to have a "normal" user account later on.
The patch process after the install took quite a while to complete.
After the patch process completed, VMWARE tools was installed successfully using:
- rpm -Uvh VMwareTools-e.x.p-51348.i386.rpm
And then configured by executing vmware-config-tools.pl. The configuration output can be found at vmware config output.
As the subsequent NST creation steps unfolded, the VMWARE image was moved back and forth using an 8GB flash drive. The movement from Fusion was to VMPLAYER running under SUSE 10.x. This provided initial validation that the image had, at minimum, some portability. Fusion was still needed to tweak the "settings." After some tweaking, the following "settings" configuration was used: 3 NICs eth0 - NATed to be used as the NST management interface eth1 - custom to be used as a promiscuous interface eth2 - host to be assigned for future use
Parallel - not connected Serial 1 - not connected Serial 2 - not connected Floppy1 - not connected but pointed to an empty floppy 1.4M image stored within the image folder CD - connected and pointed to an empty iso image stored within the image folder CD2 - not connected and pointed to an empty iso image stored within the image folder
The empty ISO files for the CD and the empty image for the floppy minimized obstacles to moving the image, while still allowing flexibility on what device to have connected during the boot process. One can adjust what is connected by using F2 during the boot process and making sure an empty image is not selected 'first' during the boot process.
Now it was time to get the NST configuration via CVS.
/root/nst was the CVS sandbox. The update to .bashrc to set up CVS worked smoothly. The CVS checkout was satisfactory.
One error I made was caused by an interruption. When I returned to building NST after a hiatus of a couple of days, a new kernel had been released. So when I rn tried to build NST I got messages suggesting a kernel update. I used the FC7 package update feature and reran vmware-config-tools.pl.
The output of configure and make package-update improved after updating the kernel.
Development Case Study Using VMWARE - vmware-config output
Stopping VMware Tools services in the virtual machine:
Guest operating system daemon: [ OK ] Blocking file system: [ OK ] Unmounting HGFS shares: [ OK ] Guest filesystem driver: [ OK ] Guest memory manager: [ OK ]
Shutting down interface eth0: [ OK ] Shutting down interface eth2: [ OK ] Shutting down loopback interface: [ OK ]
Guest vmxnet fast network device: [ OK ]
Trying to find a suitable vmmemctl module for your running kernel.
None of the pre-built vmmemctl modules for VMware Tools is suitable for your running kernel. Do you want this program to try to build the vmmemctl module for your system (you need to have a C compiler installed on your system)? [yes]
Using compiler "/usr/bin/gcc". Use environment variable CC to override.
What is the location of the directory of C header files that match your running kernel? [/lib/modules/2.6.22.4-65.fc7/build/include]
Extracting the sources of the vmmemctl module.
Building the vmmemctl module.
Using 2.6.x kernel build system. make: Entering directory `/tmp/vmware-config1/vmmemctl-only' make -C /lib/modules/2.6.22.4-65.fc7/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules make[1]: Entering directory `/usr/src/kernels/2.6.22.4-65.fc7-i686'
CC [M] /tmp/vmware-config1/vmmemctl-only/os.o SHIPPED /tmp/vmware-config1/vmmemctl-only/vmmemctl1.o LD [M] /tmp/vmware-config1/vmmemctl-only/vmmemctl.o Building modules, stage 2. MODPOST 1 modules
WARNING: could not find /tmp/vmware-config1/vmmemctl-only/.vmmemctl1.o.cmd for /tmp/vmware-config1/vmmemctl-only/vmmemctl1.o
CC /tmp/vmware-config1/vmmemctl-only/vmmemctl.mod.o LD [M] /tmp/vmware-config1/vmmemctl-only/vmmemctl.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.22.4-65.fc7-i686' cp -f vmmemctl.ko ./../vmmemctl.o make: Leaving directory `/tmp/vmware-config1/vmmemctl-only' The module loads perfectly in the running kernel.
Extracting the sources of the vmhgfs module.
Building the vmhgfs module.
Using 2.6.x kernel build system. make: Entering directory `/tmp/vmware-config1/vmhgfs-only' make -C /lib/modules/2.6.22.4-65.fc7/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules make[1]: Entering directory `/usr/src/kernels/2.6.22.4-65.fc7-i686'
CC [M] /tmp/vmware-config1/vmhgfs-only/backdoor.o CC [M] /tmp/vmware-config1/vmhgfs-only/backdoorGcc32.o CC [M] /tmp/vmware-config1/vmhgfs-only/bdhandler.o CC [M] /tmp/vmware-config1/vmhgfs-only/cpName.o CC [M] /tmp/vmware-config1/vmhgfs-only/cpNameLinux.o CC [M] /tmp/vmware-config1/vmhgfs-only/cpNameLite.o CC [M] /tmp/vmware-config1/vmhgfs-only/dbllnklst.o CC [M] /tmp/vmware-config1/vmhgfs-only/dentry.o CC [M] /tmp/vmware-config1/vmhgfs-only/dir.o CC [M] /tmp/vmware-config1/vmhgfs-only/eventManager.o CC [M] /tmp/vmware-config1/vmhgfs-only/file.o CC [M] /tmp/vmware-config1/vmhgfs-only/filesystem.o CC [M] /tmp/vmware-config1/vmhgfs-only/fsutil.o CC [M] /tmp/vmware-config1/vmhgfs-only/hgfsBd.o CC [M] /tmp/vmware-config1/vmhgfs-only/hgfsUtil.o CC [M] /tmp/vmware-config1/vmhgfs-only/inode.o CC [M] /tmp/vmware-config1/vmhgfs-only/kernelStubsLinux.o CC [M] /tmp/vmware-config1/vmhgfs-only/link.o CC [M] /tmp/vmware-config1/vmhgfs-only/message.o CC [M] /tmp/vmware-config1/vmhgfs-only/module.o CC [M] /tmp/vmware-config1/vmhgfs-only/page.o CC [M] /tmp/vmware-config1/vmhgfs-only/request.o CC [M] /tmp/vmware-config1/vmhgfs-only/rpcin.o CC [M] /tmp/vmware-config1/vmhgfs-only/rpcout.o CC [M] /tmp/vmware-config1/vmhgfs-only/staticEscape.o CC [M] /tmp/vmware-config1/vmhgfs-only/stubs.o CC [M] /tmp/vmware-config1/vmhgfs-only/super.o LD [M] /tmp/vmware-config1/vmhgfs-only/vmhgfs.o Building modules, stage 2. MODPOST 1 modules CC /tmp/vmware-config1/vmhgfs-only/vmhgfs.mod.o LD [M] /tmp/vmware-config1/vmhgfs-only/vmhgfs.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.22.4-65.fc7-i686' cp -f vmhgfs.ko ./../vmhgfs.o make: Leaving directory `/tmp/vmware-config1/vmhgfs-only' The module loads perfectly in the running kernel.
pcnet32 35781 0 Unloading pcnet32 module
Extracting the sources of the vmxnet module.
Building the vmxnet module.
Using 2.6.x kernel build system. make: Entering directory `/tmp/vmware-config1/vmxnet-only' make -C /lib/modules/2.6.22.4-65.fc7/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules make[1]: Entering directory `/usr/src/kernels/2.6.22.4-65.fc7-i686'
CC [M] /tmp/vmware-config1/vmxnet-only/vmxnet.o Building modules, stage 2. MODPOST 1 modules CC /tmp/vmware-config1/vmxnet-only/vmxnet.mod.o LD [M] /tmp/vmware-config1/vmxnet-only/vmxnet.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.22.4-65.fc7-i686' cp -f vmxnet.ko ./../vmxnet.o make: Leaving directory `/tmp/vmware-config1/vmxnet-only' The module loads perfectly in the running kernel.
Extracting the sources of the vmblock module.
Building the vmblock module.
Using 2.6.x kernel build system. make: Entering directory `/tmp/vmware-config1/vmblock-only' make -C /lib/modules/2.6.22.4-65.fc7/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules make[1]: Entering directory `/usr/src/kernels/2.6.22.4-65.fc7-i686'
CC [M] /tmp/vmware-config1/vmblock-only/linux/block.o CC [M] /tmp/vmware-config1/vmblock-only/linux/control.o CC [M] /tmp/vmware-config1/vmblock-only/linux/dbllnklst.o CC [M] /tmp/vmware-config1/vmblock-only/linux/dentry.o CC [M] /tmp/vmware-config1/vmblock-only/linux/file.o CC [M] /tmp/vmware-config1/vmblock-only/linux/filesystem.o CC [M] /tmp/vmware-config1/vmblock-only/linux/inode.o CC [M] /tmp/vmware-config1/vmblock-only/linux/module.o CC [M] /tmp/vmware-config1/vmblock-only/linux/stubs.o CC [M] /tmp/vmware-config1/vmblock-only/linux/super.o LD [M] /tmp/vmware-config1/vmblock-only/vmblock.o Building modules, stage 2. MODPOST 1 modules CC /tmp/vmware-config1/vmblock-only/vmblock.mod.o LD [M] /tmp/vmware-config1/vmblock-only/vmblock.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.22.4-65.fc7-i686' cp -f vmblock.ko ./../vmblock.o make: Leaving directory `/tmp/vmware-config1/vmblock-only' The module loads perfectly in the running kernel.
[EXPERIMENTAL] The Virtual Machine Communication Interface (VMCI) service provides a new communication capability with the Host, primarily for development at the moment. Would you like to enable this feature? [no]
Detected X.org version 1.3.
No drivers for X.org version: 1.3.
Do you want to change the display size that X starts with? (yes/no) [no]
Starting VMware Tools services in the virtual machine:
Switching to guest configuration: [ OK ] Guest filesystem driver: [ OK ] Mounting HGFS shares: [ OK ] Guest memory manager: [ OK ] Guest vmxnet fast network device: [ OK ] Blocking file system: [ OK ] DMA setup: [ OK ] Guest operating system daemon: [ OK ]
The configuration of VMware Tools e.x.p build-51348 for Linux for this running kernel completed successfully.
You must restart your X session before any mouse or graphics changes take effect.
You can now run VMware Tools by invoking the following command: "/usr/bin/vmware-toolbox" during an X server session.
To use the vmxnet driver, restart networking using the following commands: /etc/init.d/network stop rmmod pcnet32 rmmod vmxnet modprobe vmxnet /etc/init.d/network start
To make use of the virtual printer, you will need to restart the CUPS service
If you wish to configure any experimental features, please run the following command: "vmware-config-tools.pl --experimental".
Enjoy,
--the VMware team