HOWTOlabs  
 Services     Software     Commentary     Design     Astral Musings   
General Install
...
General Install
Specific Hardware and OS/Driver Installation
Elsewhere
MySQL Setup under redhat 7.1
# su -
...
# rpm -ivh mysql-3.23.36-1.i386.rpm
...
# rpm -ivh mysql-server-3.23.36-1.i386.rpm
...
# /etc/rc.d/init.d/mysqld status
...
# /etc/rc.d/init.d/mysqld start
...
# exit
# mysql
  -> \h
  -> \q
# mysqlshow
+-----------+
| Databases |
+-----------+
| mysql     |
+-----------+
#
Elsewhere
Check the system messages after installing.

Note: make sure /tmp folder is chmod go+rw ... ! Otherwise when starting mysqld weird startup errors will ensue.
# cat /var/log/messages
  ...
  May 11 13:22:03 calpop mysql_install_db: Installing all prepared tables
  May 11 13:22:03 calpop mysql_install_db: Fill help tables
  May 11 13:22:03 calpop mysql_install_db:
  May 11 13:22:03 calpop mysql_install_db: To start mysqld at boot time you have to copy support-files/mysql.server
  May 11 13:22:03 calpop mysql_install_db: to the right place for your system
  May 11 13:22:03 calpop mysql_install_db:
  May 11 13:22:03 calpop mysql_install_db: PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
  May 11 13:22:03 calpop mysql_install_db: To do so, start the server, then issue the following commands:
  May 11 13:22:03 calpop mysql_install_db: /usr/bin/mysqladmin -u root password 'new-password'
  May 11 13:22:03 calpop mysql_install_db: /usr/bin/mysqladmin -u root -h calpop.scalix.com password 'new-password'
  May 11 13:22:03 calpop mysql_install_db: See the manual for more instructions.
  May 11 13:22:03 calpop mysql_install_db:
  May 11 13:22:03 calpop mysql_install_db: You can start the MySQL daemon with:
  May 11 13:22:03 calpop mysql_install_db: cd /usr ; /usr/bin/mysqld_safe &
  May 11 13:22:03 calpop mysql_install_db:
  May 11 13:22:03 calpop mysql_install_db: You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:
  May 11 13:22:03 calpop mysql_install_db: cd sql-bench ; perl run-all-tests
  May 11 13:22:03 calpop mysql_install_db:
  May 11 13:22:03 calpop mysql_install_db: Please report any problems with the /usr/bin/mysqlbug script!
  May 11 13:22:03 calpop mysql_install_db:
  May 11 13:22:03 calpop mysql_install_db: The latest information about MySQL is available on the web at
  May 11 13:22:03 calpop mysql_install_db: http://www.mysql.com
  May 11 13:22:03 calpop mysql_install_db: Support MySQL by buying support/licenses at https://order.mysql.com
  May 11 13:22:03 calpop mysqld: Initializing MySQL database:  succeeded
  ...

Default MySQL install from RPM's enables 'anonymous' and root users without passwords. If you are getting 1044 errors when trying to create databases, try mysql -u root . See documentation for adding users and enhancing security (though this may be covered more here soon).

Typically MySQL database files are kept in /var/lib/mysql - which you should backup periodically. You should also peruse /etc/my.cnf to see any settings that may affect you.

If the MySQL deamon mysqld is not started automatically when a system reboots (which is typical for most installs), you will need to alter your init sequence configuration files or you will need to get to a root shell and start it manually.

Be very careful if you change the MySQL root password. If you clobber your MySQL root password you will not be able to recall user settings and be limited to accessing databases only with relaxed user priveledges. Best to backup the files in /var/lib/mysql (except mysql, mysql.sock, test since these will be over written). Restore admin privledges ...
   rpm -e mysql-server-3.23.36-1.i386.rpm
   rpm -ivh mysql-server-3.23.36-1.i386.rpm
... which removes root password and all other users.


MySQL Setup under RedHat 8.0

Having MySQL installed during initial Red Hat install seems to go smoothly. However, if you add MySQL later using RPM's, there appears to be a circular dependency for some perl modules. Identify the modules that seem to have no resolvable dependcy and force its install. (e.g. the perl-DBD... module is dependent on the mysql-devel... module and visa versa). Use the rpm --nodeps to install the perl module and then proceed.

Not obvious but necessary is libmysqlclient.so which is part of the mysql-devel... rpm. Why rpm cites the library directly and not the rpm that contains it seems inconsistent. Oh well.
For some reason external connections to MySQL require a set-variable=thread_stack=256k line be added to /etc/my.conf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
set-variable=thread_stack=256k
 
[mysql.server]
user=mysql
basedir=/var/lib

[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
More details ...
mysql.zaptech.org


PHP

# su -
...
# rpm -ivh php-4.0.4pl1-9.i386.rpm
...
# rpm -ivh php-mysql-4.0.4pl1-9.i386.rpm   (needed only for MySQL support)
...
# /etc/rc.d/init.d/httpd status
...
# /etc/rc.d/init.d/httpd start
...
# cat /var/log/messages
...
#
<HTML>
<BODY>
<?php echo "hello "; ?> world
</BODY>
</HTML>

More details ...
php.net
Linux MySQL tips
MySQL Docs


phpMyAdmin - web based MySQL administration

If you already have a MySQL and PHP enabled server this is trivial to setup. Essentially phpMyAdmin is just a colleciton PHP files. You download the latest package of files and place them someplace you can point a web browser at. After the files have been made web browsable, browse to the config file. From this point on everything, even a few post-download installation settings, can be done from a web brower.

Generally setup consists of uppacking phpMyAdmin and placing it somewhere that is web browsable. Ideally, MySQL service should initially be running WITHOUT a root password. Browse to the web exposes URL for the phpMyAdmin unpacked files and a general phpMyAdmin interface page will display. It will usually have a warning message that you don't have a root password and that the default URL is not set. Using the privledges link, change the mysql root password. You will need to change the $cfg['Servers'][$i]['auth_type'] = 'http' value in the config.inc.php then relaod the page. You should now be prompted for user and password. Typically root passwird for localhost and the fully qualified hostname should be changed. Wala, you have authenticated MySQL database control via the web.
Elsewhere


Setting Up Password Protected Web Pages

You need to be logged in as root. You will use the htpasswd command to create a 'database' file with a single user. Use the htpasswd command without -c to add more users. If you want to also have groups of users, then use a text editor to create a simple list. Once user and optionally group files exist, edit httpd.conf and add the AuthName, AuthType, AuthUserFile, optionally AuthGroupFile, and at least one require line. Restart httpd.
# htpasswd -c /etc/httpd/userdb user1
...
# htpasswd /etc/httpd/userdb user2
...
# cat userdb
user1:encrypted password
user2:encrypted password
# cat group
group1: user1 user2
#cat /etc/httpd/conf/httpd.conf
...
<Directory /home/xyz/public_html/mag>
	AuthName "unique realm phrase"
	AuthType Basic
	AuthUserFile /etc/httpd/userdb
	# AuthGroupFile is optional.  If used AuthUserFile must also be present
	AuthGroupFile /etc/httpd/groupdb
	AllowOverride None
	Options Indexes Includes FollowSymLinks ExecCGI
	Order allow,deny
	Allow from all

	# You may have multiple require lines
        require group group1
#       require user user1
#       require valid-user
</Directory>
...

Tips elsewhere
ApacheWeek
OSX -> Unsupported PowerMacintosh

Internal SCSI controllers on older systems seem to have more compatiblity issues than external SCSI controllers.

Drive                             Notes

SEAGATE ST336918N    34.42 GBytes  Works great internally on 8500
                                   (set drive startup jumper)
                                   available from PC Connection
SEAGATE ST34572W      4.24 GBytes  Works great internally on 7600
QUANTUM FIREBALL1280S 1.19 GBytes  Works great internally on 7600
                                  (though it is just big enough to allow install)


OSX -> PowerBook G3
code name: Lombard (Bronze Keyboard)

OS 10.4 not "supported"
OS 10.3 Won't install on Hard Disk
For some reason OS 10.3 install CD may see hard disk, but then place a red exclamation point on it and say "can not install Mac OS X on this hard disk". Try booting with Mac OS 9.1 CD, reformat disk. Then restart with OS 10.3 install CD. This time is will not complain about disk and let install proceed.

Also, try trimming back OS install size to less the 1 GByte. If you want basic Linux/Unix bits include BSD. Note, Stuffit Expander is not included in minimum installer, you almost surely want this though. Groovy is that X11 server is optional (more on how to use this soon) as are Apple Remote Desktop tools (stay tuned). Overall, 10.3 is much snappier than 10.2 .
OS 10.1 Black Screen
Sometimes after starting a fresh install of OS X on a Lombard the screen will go black. The problem is that the video has been set to a wild mode. There is a very nasty work around for this. Since the Lombard has a SCSI interface built it, attach an external drive, install OS 9, boot to OS 9 on external drive, change to 256 color mode, now install OS X on main drive. Could also have partitioned main drive to have OS 9 and OS X partition instead of using seperate drive, but my main drive is small and I didn't want any traces of OS 9 to be around after OS X is installed.
Unsupported 802.11 card
Lombard has no provisions to accept an Apple Airport wireless card. This means you have to use a third part driver. But wait! There are no third party wireless card vendors for OSX! Hopefully this will change soon. In the mean time an open source driver seems to support most of the popular wireless PC cards on this system for TCP/IP ...
MacOS X/Darwin WirelessDriver
  • Lucent Technologies/Orinoco WaveLAN Silver - works
  • Farallon/Proxim SkyLINE (473) - fails during sustained transfers of big files ... could be due to old firmware?
http://www.powerpage.org/story.lasso?newsID=9157
This is a little off subject, but I have an Orinoco Silver card ana a G4 Titanium PB. I was unable to get the airport software to work for me until I downgraded all the way back to v1.2 of Airport. Versions 1.3.1 and 2.0.2 both had problems with the signal bar not showing up. Anyone else have this problem and any solutions to go along with it?
Related ...


Apple Airport Base Station

Weirdness

Usually one suspects one's computer hardware or its installed software for flaky network performance. Apple Airport Base Station has a failure mode that is purely due to its hardware age/heat wear and can be nasty to track down if you don't consider it culpable. The symptom ...
  • power on/plug in
  • three orange lits on
  • on red lite on
  • three orange lights on
  • one red light on
  • ...
Elsewhere ...
Base Station Repair - Amazing site with incredible detail on how Base Station hardware can fail and how to repair them!


100BaseT cable assembly

You will need some 100 MByte/sec Cat 5 cable, some RJ45 connectors, and a 8 wire RJ45 crimping tool (looks like hi-tech pliers). Snip off the outer plastic shielding then line up the wires for insertion into the RJ45 connector.
  1. White
  2. Orange
  3. Light Green
  4. Blue
  5. Light Blue
  6. Green
  7. Brown
  8. Black
Now crimp that sucker!


CVS repository service setup for redhat 7.1

It is handy to see the recipe for a specific platform setup. Includes notes on cloning module's from one CVS server to another.
Establish Service
  login as root
  groupadd -g 1000 cvsusers
  vi /etc/group
      add root,fredness, ... additional users ...
  cvs -d /home/cvsroot init
  chown -R root.cvsusers cvsroot
  chown -R u+s cvsroot (optional?)

Enable email watch notification - part I
  login as fredness on CVS server
  export CVSROOT=/home/cvsroot
  cvs co CVSROOT
  cd CVSROOT
  vi notify
      uncomment ALL line
  cvs commit

Enable email watch notification - part II
  if server is the main sendmail server skip the following
  login as root on CVS server
  vi /etc/sendmail.cf
      DH mail1.zaptech.com
  now email CVS watch notification will forward to the main mail server

Testing
  login on a remote system
  export CVSROOT=:pserver:fredness@new.cvs.server:/home/cvsroot
  cvs login
  cvs co CVSROOT
  cd CVSROOT
  cvs update

duplicating/archiving a module's state on original CVS server
  login as root to original CVS server
  cd /home/cvsroot
  mkdir poo
  mv jni poo
  cd poo
  tar cvf ../jni.tar *
  mv jni ..
  cd ..
  rm -fr poo
  now transfer the jni.tar to the new CVS server (ftp, email attachment, ...)

deploying a module's state on new CVS server from an archive created on different CVS server
  login as root on new CVS server
  aquire module archive (ftp, email attachment, ...)
  mv jni.tar /home/cvsroot
  cd /home/cvsroot
  tar xvf jni.tar
  mv jni cvsroot

enable anonymous access
  login as root
  vi /home/cvsroot/CVSROOT/readers
    anonymous
  vi /home/cvsroot/CVSROOT/passwd
    anonymous:ndt015Yw.To5Y:nobody 
  add nobody to cvsusers
  vi /etc/group
      cvsuser:<existing users>,nobody
Related


CVSweb - nifty web based interface to view cvs repository
(under RedHat 7.1)

http://www.freebsd.org/projects/cvsweb.html

$ pwd
/var/www/cgi-bin
$ rcsdiff cvsweb.cgi
===================================================================
RCS file: cvsweb.cgi,v
retrieving revision 1.1
diff -r1.1 cvsweb.cgi
160c160
< for ("$mydir/cvsweb.conf", '/usr/local/etc/cvsweb/cvsweb.conf') {
---
> for ("$mydir/cvsweb.conf", '/etc/cvsweb.conf') {


$ pwd
/etc
$ rcsdiff cvsweb.conf
===================================================================
RCS file: cvsweb.conf,v
retrieving revision 1.1
diff -r1.1 cvsweb.conf
46c46,47
<     'local'   => ['Local Repository', '/home/cvs'],
---
> #    'local'   => ['Local Repository', '/home/cvs'],
>     'local'   => ['Local Repository', '/home/cvsroot'], 
http://127.0.0.1/cgi-bin/cvsweb.cgi

Note: very large directories may exceed cvs command line argument length (CVSweb issues command lines to generate web output) resulting in display containing cvs execution errors.


IP Aliasing

std workstation configuration (tested under redhat 7.1)
already set with fixed IP eth0 = 192.168.1.245

dynamicaly add second IP address (won't persist after reboot)
ifconfig eth0:0 192.168.1.244

permenantly add second IP addesss (will persist afer reboot)
cd /etc/sysconfig/network-scripts
cp ifcfg-eth0 ifcfg-eth0:0
vi ifcfg-eth0:0
DEVICE=eth0:0
BOOTPROTO=static
BROADCAST=192.168.1.255
IPADDR=192.168.1.244
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes
(Note the IPADDR, ONBOOT, and DEVICE lines)

More details ...
RedHat Support Linux Questions


Virtual Hosting

(OSX 10.1.X)
This code snippet diff shows the changes made to enable Virtual Hosting on OSX 10.1.5 . Note, you will need root shell access to do this. At this time there is no console way of restarting apache, use Control Panel, Sharing enable GUI
More info
OSX Tips
 
[unspecified:/etc/httpd] root# rcsdiff httpd.conf
1043c1043
< #NameVirtualHost *
---
> NameVirtualHost *
1057a1058,1067
> 
> # default if no ServerName match found
> <VirtualHost *>
>     DocumentRoot "/Volumes/DevMacPublic/public"
> </VirtualHost>
> 
> <VirtualHost *>
>     ServerName osx.zaptech.com
>     DocumentRoot "/Volumes/DevMacPublic/public/shauker-enterprises/html"
> </VirtualHost>
(tested under RH71)
IP Aliasing (see above) needs to be enabled first.

Usually directories must have protection of 711 for web server to properly access their files.

Files usually need to have protection 755 to be served.

More details ...
Apache redirect

diff /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf-bak 182,184c182 < Listen 192.168.1.245:80 < Listen 192.168.1.243:80 < Listen 192.168.1.244:80 --- > Listen 80 390c388 < ServerAdmin fredness@zaptech.com --- > ServerAdmin root@localhost 404c402 < ServerName jabber.zaptech.org --- > #ServerName localhost 479c477 < <Directory /home/*/public_html> --- > #<Directory /home/*/public_html> 481,482d478 < AllowOverride None < Options Indexes Includes FollowSymLinks 492,495c488 < Order allow,deny < Allow from all < </Directory> < --- > #</Directory> 830c823 < AddHandler cgi-script .cgi --- > #AddHandler cgi-script .cgi 1051,1072d1043 < < <VirtualHost 192.168.1.243> < DocumentRoot "/home/fredness/www" < ServerName fredness.zaptech.org < <Directory "/home/fredness/www"> < Options Indexes Includes FollowSymLinks < AllowOverride None < Order allow,deny < Allow from all < </Directory> < </VirtualHost> < < <VirtualHost 192.168.1.244> < DocumentRoot "/home/fredness/www" < ServerName fredness.zaptech.org < <Directory "/home/fredness/www"> < Options Indexes Includes FollowSymLinks < AllowOverride None < Order allow,deny < Allow from all < </Directory> < </VirtualHost>


Bind / DNS Service - Install

Typically bind-utils should already be installed. Don't bother installing th GUI bindconf tool. Start named service and insure named.conf loaded cleanly by reviewing system log messages. Optional: enable named to start after reboot using chkconfig.
# rpm -ivh bind-0.1.0.10.rpm
  ...

# service named start
  ...

# cat /var/log/messages
  ...

# chkconfig ...
  ...
Elsewhere

Bind / DNS Service - RedHat 7.1 example

# named.conf - configuration for bind

options {
        directory "/var/named/";
};

zone  "." {
        type hint;
#       file  "named.ca";
#       ftp: rs.internic.net/domain/named.root
        file  "named.root";
};

zone  "0.0.127.in-addr.arpa" {
        type master;
        file  "0.0.127.in-addr.arpa.zone";
};

zone  "localhost" {
        type master;
        file  "localhost.zone";
};

zone  "zaptech.org" {
        type master;
        file  "zaptech.org.zone";
#       notify no;
#       allow-transfer { 64.32.147.254; };
};


# Slaves

zone  "sparkworx.com" {
        type slave;
        file  "sparkworx.com.zone";
#       masters { 64.32.147.254; };
       masters { 192.168.1.246; };
};

zone  "sparkworx.net" {
        type slave;
        file  "sparkworx.com.zone";
#       masters { 64.32.147.254; };
        masters { 192.168.1.246; };
};

zone  "sparkworx.org" {
        type slave;
        file  "sparkworx.com.zone";
#       masters { 64.32.147.254; };
        masters { 192.168.1.246; };
};


$TTL 86400
; info.zaptech.com. = info@zaptech.com
@       IN      SOA     public.zaptech.org. info.zaptech.com. (
                        3 ; serial
                        28800 ; refresh
                        7200 ; retry
                        604800 ; expire
                        86400 ; ttk
                        )
                NS      public.zaptech.org.
1               PTR     localhost.

$TTL 86400
; root.localhost = root@localhost
@       IN      SOA     @  root.localhost (
                        2 ; serial
                        28800 ; refresh
                        7200 ; retry
                        604800 ; expire
                        86400 ; ttl
                        )
        IN      NS      localhost.
        IN      A       127.0.0.1


$TTL 86400
@       IN      SOA     public.zaptech.org. info.zaptech.com. (
                        12 ; serial
                        28800 ; refresh
                        7200 ; retry
                        604800 ; expire
                        86400 ; ttl
                        )
                NS      public
                MX 10   mail1.zaptech.com.
                A       198.144.98.62

localhost       A       127.0.0.1

router          A       192.168.1.1
                HINFO   "Flowpoint 2200" "cabletron"
                TXT     "router"

public          A       64.32.147.255
                MX 10   mail1.zaptech.com.
                HINFO   "Pentium 200 Mhz" "RH71"
                TXT     "Public"

jabber          A       64.32.147.253
                MX 10   mail1.zaptech.com.

bonk            A       64.32.147.251
                MX 10   mail1.zaptech.com.

www             A       198.144.98.62

Gateway Solo 2500

BIOS - update
if you are having trouble booting to partitions that start beyond 8 GByte you may benefit by updating BIOS. See Gateway or backup disk for update utility.

Windows 2000
Display
NeoMagic MagicGraph128ZV/ZV+/XD - included on Windows 2000 Advanced Server install
PCMCIA Network Adaptor - 3Com OfficeConnect 572B
SH572B-3Com OC 10/100 LAN PCCard - get driver from 3Com or backup disk. Note the card is labeled Model 3CXSH572BT
PCMCIA Network Adaptor - Wireless
WaveLAN/IEEE PC Card (5 volt) - included on Windows 2000 Advanced Server install

Linux RedHat 7.1

  • Wireless LAN
    Lucent WaveLAN SILVER

    redhat 7.1 has an install option called laptop. I used the expert text to run installer and selected laptop option. The Lucent WaveLAN remained inserted during this process.

    After insatllation completed reboot. A light on the card should come on as boot process runs. When eth0 driver is start it often will hang. At this point remove the WaveLAN card. The boot process should resume.

    Once booted, login as root. Now edit /etc/pcmcia/wireless.opt. Everytime the Lucent WaveLAN PCMCIA card is inserted or removed this file will be read by the background PCMCIA monitoring task (which redhat 7.1 OS installer should already have enabled be default). Key fields that I had to change are hilited.

    Note, when the system sleeps, it will not resume the PCMCIA card ... or at least I need suss out how to have it automaticallt start itself again. Also, rebooting should no longer hang, though it will appear to fail eth0 even though it actually succeeds a moment after it reports the failure.

  • Wireless LAN
    Farallon/Proxim SkyLine (PN473 - Intersil PrismII)

    This card seems to work like the Lucent WaveLAN, though there may be warning messages saying unknown card. The MAC address of my card is 00:00:C5:*.*.* which I tried placing in the wireless.opts file to recognize. Still get the warning message on card insertion - annoying - but it lights up and networks so I guess I can live with that.

  • PCMCIA Network Adaptor
    3Com OfficeConnect 572B

    This card is detected automatically with redhat 7.1 installed with laptop option

/etc/pcmcia/wireless.opt ...
# Wireless LAN adapter configuration
#
# Theory of operation : 
#
# The script attempts to match a block of settings to the specific wireless
# card inserted, the first block matching the card is used.
# The address format is "scheme,socket,instance,hwaddr", with * as a wildcard.
# 'scheme' is the pcmcia scheme (set via 'cardctl scheme XXX').
# 'hwaddr' is the unique MAC address identifier of the wireless card.
# The MAC address is usually printed on the card, or can be found via ifconfig.
# Some examples here use only half of the MAC address with a wildcard to
# match a whole family of cards...
#
# All the Wireless specific configuration is done through the Wireless
# Extensions, so we will just call 'iwconfig' with the right parameters
# defined below.
# Of course, you need to have iwconfig installled on your system.
# To download iwconfig, or for more info on Wireless Extensions :
#	http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html
#
# Note : you don't need to fill all parameters, leave them blank, in most
# cases the driver will initialise itself with sane defaults values or
# automatically figure out the value... And not all drivers do support
# all settings...
#
# If you make any mistakes, you'll get a cryptic message in the system
# log.  You'll need to figure out on your own which parameter was wrong:
#   cardmgr[310]: executing: './network start wvlan0'
#   cardmgr[310]: + SIOCSIWMODE: Invalid argument
#
# Note also that this script will work only with the original Pcmcia scripts,
# and not with the default Red Hat scripts. Send a bug report to Red Hat ;-)
#
# Finally, send comments and flames to me, Jean Tourrilhes 
#

case "$ADDRESS" in

# Lucent Wavelan IEEE (+ Orinoco, RoamAbout and ELSA)
# Melco/Buffalo Networks WLI-PCM-L11
# Note : wvlan_cs driver only, and version 1.0.4+ for encryption support
*,*,*,00:60:1D:*|*,*,*,00:02:2D:*)
    INFO="Wavelan IEEE example (Lucent default settings)"
#   ESSID="Wavelan Network"
    ESSID="Shauker House LAN"
#   MODE="Ad-Hoc"
    MODE="Managed"
    RATE="auto"
#   KEY="s:secu1"
# To set all four keys, use :
#   KEY="s:secu1 [1] key s:secu2 [2] key s:secu3 [3] key s:secu4 [4] key [1]"
# For the RG 1000 Residential Gateway: The ESSID is the identifier on
# the unit, and the default key is the last 5 digits of the same.
#   ESSID="084d70"
#   KEY="s:84d70"
    ;;
esac


Windows 2000 and Lilo Linux RedHat 7.3

This really basic lilo.conf should allow creation of boot image on floppy drive by running lilo command. Use the dd command to extract this boot image off the floppy and copy it to a file on your W2000 system. Now your W2000 boot.ini can be edited and a Linux boot option added to it. More details here.

boot = /dev/fd0
vga = 0
lba32

image = /boot/vmlinuz
root = /dev/hda5
label = linux
read-only


FlowPoint 2200 sDSL router

Flowpoint, once affiliated with Cabletron, was recently acquired by Efficient Networks. Their 5800 series line seems carry on where the old 2200 line left off.
Flow Point 2200-12 -> Speedstream 120-5851-002
Show version info
# version

Change the remote admin password
# system admin [new passwd]


SkyLINE wireless networking card

Farallon (now a division of proxim) has a nice 11 MByte wireless networking card (based on Intersil PrismII chip) that works well for Windows and Macintosh (pre-built in wireless) laptops. There are rumors that Linux support is possible, but I haven't confirmed it yet.

Airport Configuration
I config AirPort to work as a dumb bridge (no DHCP, no NAT) that interfaces with my router and other wired infrastrure (which in turn supply DHCP, and NAT translation for laptop's connecting via AirPort as well).

Macintosh Powerbooks + Apple Airport
Setup is simple on a G3 Powerbook (bronze, pre-wireless) ... works flawlessly. However, on an old 1400 (117 MHz, no cache) telnet and certain cgi based web pages wouldn't transfer reliably (even though wired 10BaseT has no problems).

Sony PCG-F490 laptop + Apple AirPort
  • On a Macintosh WITH Airport card installed, run the AirPort Admin Utility. Once the AirPort control panel is up, use the MENU to show the EQUIVELENT PASSWORD codes. Record the 10 hexidecimal digits it reports. This is really cryptic and not very polite!
  • install farallon drivers on Sony laptop
  • After reboot, open Wireless LAN Configuration Utility
    • Configuration
      Mode = Infrastructure (if using an AirPort)
      SSID = [whatever you called your AirPort, case sensitive!]
      Eth Conversion = RFC1042
      Tx Rate = Fully Auto
      WEP = enable (only if a password encryptic link is enabled on AirPort)
      PS Mode = power save mode (disable is more reliable)
    • Encryption (optional)
      enter 10 digit hexidecimal in Key 1, click write
  • Roaming (e.g. two or more Apple Airport's)
    First time laptop moves out of range it will simple drop off the network. If another Airport is nearby, you need to open the control panel and find the RESCAN button. Immediately you should be online again using the nearby Airport. This only has to be done the first time you go out of range. Subsequent transitions from one Airport to another will be handled automatically by the driver.
  • Cisco VPM 3000 Client considerations
    It seems the SkyLINE driver installation may alter some system files in such a way that a previously working VPM client may no longer function. Workaround: DO NOT install VPM client software until after SkyLINE card has been setup and is working. Additionally the MTU for adaptors used for VPN should be reduced from the std 1500 to something lower like 1400 to acomodate the extra header state


redhat 6.2 -> Sparcstation 2

Hard Reboot
hold Stop key down, then hit A key

CD-ROM Booting
after a hard reboot, use n to get into OpenBoot's more civil mode, then type boot cdrom
also could have typed something like boot /dev/esp/sd@4,0 if your CD-ROM is at SCSI ID 4 instead of the default of 6

Missing Services ...
For some reason, RedHat Version 6.2 sparc edition, GNOME workstation option, may not install inetd or telnet-server packages by default. Without these packages installed, if you try to telnet into the system from a remote machine, or if you plan to enable sendmail as a mail server, remote connects will be refused.
redhat install prompt: expert text
drivers: cancel
keyboard: sunkeymap
method: CD-ROM
special: done
welcome: OK
type: GNOME Workstation
auto partitioning: continue
low mem (create RAM disk ASAP): yes
SILO config: yes
SILO: /dev/sda1 *
      set PROM *
SILO: /dev/sda2 linux
Host: mail2
IP:192.168.254.22
   255.255.255.0
   192.168.254.254
   198.144.96.10
Time: US/Pacific
Root: ...
Users: skip
Video: generic sun
boot floppy: NO!
(wait 30 minutes)

Sony VAIO F490 System Recovery

Windows 98 recovery/reinstall from factory CDROM
  • F2 after reboot will bring up BIOS setup
  • Select CD boot
  • Insert "System Recovery CD #1" CD
  • Reboot
  • Selection 4 - Windows 98 restore & Format
    (actually only C drive/partion is targeted)
Sony VAIO F490 XF86Config (NeoMagic 256XL 6 meg video)
# XF86Config auto-generated by XF86Setup
#
# Copyright (c) 1996 by The XFree86 Project, Inc.

#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
# THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
# OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# Except as contained in this notice, the name of the XFree86 Project shall
# not be used in advertising or otherwise to promote the sale, use or other
# dealings in this Software without prior written authorization from the
# XFree86 Project.
#

# See 'man XF86Config' for info on the format of this file

Section "Files"
   RgbPath    "/usr/X11R6/lib/X11/rgb"
   FontPath   "unix/:-1"
EndSection

Section "ServerFlags"
EndSection

Section "Keyboard"
   Protocol        "Standard"
   AutoRepeat      500 5
   LeftAlt         Meta
   RightAlt        Meta
   ScrollLock      Compose
   RightCtl        Control
   XkbKeycodes     "xfree86"
   XkbTypes        "default"
   XkbCompat       "default"
   XkbSymbols      "us(pc101)"
   XkbGeometry     "pc"
   XkbRules        "xfree86"
   XkbModel        "pc101"
   XkbLayout       "us"
EndSection

Section "Pointer"
   Protocol        "PS/2"
   Device          "/dev/mouse"
   BaudRate        1200
   Emulate3Timeout 50
   Emulate3Buttons
EndSection

Section "Monitor"
   Identifier      "LCD Panel 1024x768"
   VendorName      "Unknown"
   ModelName       "Unknown"
   HorizSync       31.5-48.5
   VertRefresh     60-60
   Modeline  "1024x768"   65.00 1024 1032 1176 1344 768 771 777 806 -hsync -vsync
EndSection

Section "Device"
   Identifier      "Generic VGA"
   VendorName      "Unknown"
   BoardName       "Unknown"
   Chipset         "generic"


EndSection

Section "Device"
   Identifier      "My Video Card"
   VendorName      "Unknown"
   BoardName       "Unknown"
   Chipset         "NM2200"
   DacSpeed        90
   VideoRam        4096
EndSection

Section "Screen"
   Driver          "Accel"
   Device          "My Video Card"
   Monitor         "LCD Panel 1024x768"
   DefaultColorDepth 16
   BlankTime       0
   SuspendTime     0
   OffTime         0
   SubSection "Display"
      Depth        8
      Modes        "1024x768"
      ViewPort     0 0
   EndSubSection
   SubSection "Display"
      Depth        15
      Modes        "1024x768"
   EndSubSection
   SubSection "Display"
      Depth        16
      Modes        "1024x768"
      ViewPort     0 0
   EndSubSection
   SubSection "Display"
      Depth        24
      Modes        "1024x768"
   EndSubSection
   SubSection "Display"
      Depth        32
      Modes        "1024x768"
      ViewPort     0 0
   EndSubSection
EndSection

Section "Screen"
   Driver          "SVGA"
   Device          "My Video Card"
   Monitor         "LCD Panel 1024x768"
   DefaultColorDepth 16
   BlankTime       0
   SuspendTime     0
   OffTime         0
   SubSection "Display"
      Depth        8
      Modes        "1024x768"
      ViewPort     0 0
   EndSubSection
   SubSection "Display"
      Depth        15
      Modes        "1024x768"
   EndSubSection
   SubSection "Display"
      Depth        16
      Modes        "1024x768"
      ViewPort     0 0
   EndSubSection
   SubSection "Display"
      Depth        24
      Modes        "1024x768"
   EndSubSection
   SubSection "Display"
      Depth        32
      Modes        "1024x768"
      ViewPort     0 0
   EndSubSection
EndSection

Section "Screen"
   Driver          "VGA16"
   Device          "Generic VGA"
   Monitor         "LCD Panel 1024x768"
   BlankTime       0
   SuspendTime     0
   OffTime         0
   SubSection "Display"
      Depth        4
      Modes        "1024x768"
   EndSubSection
   SubSection "Display"
      Depth        8
      Modes        "1024x768"
      ViewPort     0 0
   EndSubSection
EndSection

Section "Screen"
   Driver          "VGA2"
   Device          "Generic VGA"
   Monitor         "LCD Panel 1024x768"
   BlankTime       0
   SuspendTime     0
   OffTime         0
   SubSection "Display"
      Depth        1
      Modes        "1024x768"
   EndSubSection
   SubSection "Display"
      Depth        8
      Modes        "1024x768"
      ViewPort     0 0
   EndSubSection
EndSection


Virtual + Named Based Hosting + User Database (tested under RH71)

IP Aliasing (see above) needs to be enabled first.

Usually directories must have protection of 711 for web server to properly access their files.

Files usually need to have protection 755 to be served.

More details ...
Apache redirect

If you plan to offer virtual hosting, you will probably want to configure sendmail to use virtual tables. This is necessary if you expect info@foo.com and info@bar.com to be delivered to different users. As of RH6.2-71, /etc/mail/virtusertable is where the action is.
# cat virtusertable
info@foo.com     tom
info@bar.com     john@yahoo.com
Run make to update the database file. You may need to restart sendmail.

More details ...
sendmail virtual hosting
diff httpd.conf-bak httpd.conf 182c182,184 < Listen 80 --- > Listen 192.168.1.245:80 > Listen 192.168.1.243:80 > Listen 192.168.1.244:80 388c390 < ServerAdmin root@localhost --- > ServerAdmin fredness@zaptech.com 402c404 < #ServerName localhost --- > ServerName jabber.zaptech.org 420c422 < Options FollowSymLinks --- > Options FollowSymLinks Includes ExecCGI 442a445 > # Options Indexes Includes FollowSymLinks ExecCGI 477c480 < #<Directory /home/*/public_html> --- > <Directory /home/*/public_html> 478a482,484 > AllowOverride None > # Options Indexes Includes FollowSymLinks > Options Indexes Includes FollowSymLinks ExecCGI 488c494,511 < #</Directory> --- > Order allow,deny > Allow from all > </Directory> > > > <Directory /home/xyz/public_html/mag> > AuthName "mag" > AuthType Basic > AuthUserFile /etc/httpd/userdb > AuthGroupFile /etc/httpd/groupdb > AllowOverride None > Options Indexes Includes FollowSymLinks ExecCGI > Order allow,deny > Allow from all > > require group mag > # require valid-user > </Directory> 823c846 < #AddHandler cgi-script .cgi --- > AddHandler cgi-script .cgi 1031c1054 < #NameVirtualHost 12.34.56.78 --- > NameVirtualHost 192.168.1.243 1043a1067,1116 > > <VirtualHost 192.168.1.243> > DocumentRoot "/home/fredness/www" > ServerName fredness.zaptech.org > <Directory "/home/fredness/www"> > Options Indexes Includes FollowSymLinks > AllowOverride None > Order allow,deny > Allow from all > </Directory> > </VirtualHost> > > <VirtualHost 192.168.1.243> > DocumentRoot "/home/ian/www" > ServerName ian.zaptech.org > <Directory "/home/ian/www"> > Options Indexes Includes FollowSymLinks > AllowOverride None > Order allow,deny > Allow from all > </Directory> > </VirtualHost> > > <VirtualHost 192.168.1.243> > DocumentRoot "/home/leighster/wwwbrc" > ServerName BlindRodentClergy.com > <Directory "/home/leighster/wwwbrc"> > Options Indexes Includes FollowSymLinks > AllowOverride None > Order allow,deny > Allow from all > </Directory> > </VirtualHost> > > <VirtualHost 192.168.1.243> > ServerName www.BlindRodentClergy.com > ServerAlias * > Redirect permanent / http://home.sprintmail.com/~leighster/brc/ > </VirtualHost> > > <VirtualHost 192.168.1.244> > DocumentRoot "/home/xyz/public_html" > ServerName xyz.zaptech.org > <Directory "/home/xyz/public_html"> > Options Indexes Includes FollowSymLinks > AllowOverride None > Order allow,deny > Allow from all > </Directory> > </VirtualHost>

IP Forwarding

Loosely defined, IP Forwarding is a mode that allows network information received on one network interface to be forwarded through the system and sent out on a second network interface. In essence this is what a router does. However, there are certain situtations in which it might make sense to configure a system to perform simple routing while it also provides other services.

Naturally setting up IP Forwarding is predicated on having a system with two or more network interfaces/cards. Under some systems it may be better to use different manufacture network cards to insure two distinct drivers are used (this avoids re-entrant, thread safe driver issues), though more recent kernels do not seem as prone to this issue.

Red Hat Linux 7.3

See whether IP Forwarding is enabled
root]# cat /proc/sys/net/ipv4/ip_forward 
...

Dynamically enable IP Forwarding
root]# sysctl -w net.ipv4.ip_forward=1

Config boot time IP Forwarding
root]# cat /etc/sysctl.conf 
# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled.  See sysctl(8) for
# more details.

# Controls IP packet forwarding
net.ipv4.ip_forward = 0

# Controls source route verification
net.ipv4.conf.default.rp_filter = 1

# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 0

# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1
zap technologies
printable