This file last modified 12/28/05, 1:11 am
Author: Greg Keraunen <gk@proliberty.com>
Document Home: http://www.proliberty.com/tools/soho.html
Created: 4/16/02
Archived Version 1.0:
soho.v1.html (contains some historical troubleshooting info)
CONTENTS
INTRODUCTION
GOALS
HARDWARE SETUP & NETWORK TOPOLOGY
AC POWER
INTERNET CONNECTION SHARING (ICS)
NETWORK SECURITY
NETWORK FILE & PRINTER SHARING
MULTI-BOOTING
CYGWIN - X WINDOWS SERVER FOR WINDOWS
BACKUP SOLUTIONS
NETWORK AUDIO
MP3 FILE MANAGEMENT
ERGONOMICS
INSTALLATION PROBLEMS
OTHER PROBLEMS
MISCELLANEOUS COMMANDS
WISH LIST
INACCURACIES
CURRENT PROBLEMS
INTRODUCTION
This document is intended as a collection of my personal experience in
setting up a home network.
The current version is intended more of a HOW-TO that should reflect my
current configuration and practices.
Additional information about problems encountered in setting up previous
configurations can be found in version 1.0, soho.v1.html
There is so much information online that you can easily waste a lot of time
with too much detail.This document assumes some prior knowledge, of linux
in particular. I haven't bothered to explain too many fine points but to
sum up, in a nutshell, the most important things to know in sucessfully
and quickly getting a network of three OSes going, in harmony.
Some terms:
"MBR" master boot record; first 512 bytes on a drive
"NT boot loader" effectively the same as Windows 2000
"NT boot sector" effectively the same as Windows 2000
"win2kPro" Windows 2000 Professional Edition
"win2kServer" Windows 2000 Server
GOALS
+ Maximum interoperability between Mac (OS 9.x) / Linux (RH 7.2 - 9.2)/
Windows (win2kPro, win2kServer)
+ Multi-boot linux/windows on one machine
+ Easiest maintenance: backup, upgrade, file sharing; security; repair
+ Internet gateway for the LAN to share a single connection
+ Provide Firewall security for the LAN
+ Minimize hardware: make maximum use of hard drives, modems, etc. between
systems
+ Make a large repository of mp3 files read-writable from any machine on
the network
HARDWARE SETUP & NETWORK TOPOLOGY
Legend:
'|' or '-' external wire or network connection
'||' or '=' internal hardware or software connection
Internet
|
Internet Service Provider (modems, routers, DHCP, etc.)
|
(ATM network)
|
(copper twisted pair phone line)
|
ADSL modem; ATM to Ethernet bridge (SpeedStream 5360)
|
--------- Ethernet network ---------------------------
|
('Internet' port: IP = assigned by DHCP)
Router (Linksys NR041)
(192.168.1.1)
| | | |
| ('DMZ': anything that doesn't want to be behind p4 firewall)
|
(192.168.1.101)
------------------------------------------------------
'p4' PC:
Soyo Fire Dragon Special Edition SY-P41 motherboard:
Intel Socket-478 Pentium 4 Based Intel 845 Chipset ATX Motherboard
1.6GHz Intel Pentium 4 CPU (512k cache 'Northwood')
Ultra ATA Controller (Intel 82801xx)
IDE 0:0 (/dev/hda) master: 120GB (in removable viPower tray)
/dev/hda Master Boot Record (MBR) contains LILO boot manager
/dev/hda1 (primary, active) vfat (FAT32) Windows C: (Windows boot
partition)
contains NTLDR - Windows boot manager
/dev/hda2 (primary) vfat (FAT32) Windows E:
/dev/hda3 Windows Extended Partition
/dev/hda5 (logical) ext2 Linux root partition
/dev/hda6 (logical) linux swap partition
IDE 0:1 (/dev/cdrom) slave: DVD CD-ROM drive
IDE 1:0 (/dev/hdc) master: empty removable viPower bay - used for
backups
IDE 1:1 (/dev/hdd) slave: 200GB (internal)
/dev/hda1 (primary) vfat (FAT32) Windows F:
Windows swapfile (pagefile.sys) location
audio/video data; mp3s shared over network
Award PCI BIOS (upgraded to Rev P4IY_2BA3)
(required for support of >137MB Hard Drives)
Operating Systems, dual boot:
LILO boot loader installed to MBR of IDE 0:0 (/dev/hda)
Linux (Red Hat 9.2)
Windows 2000 Pro (SP2)
Intel(R) Application Accelerator upgraded for support of >137MB Hard
Drives
Internet Connection Sharing (ICS) enabled on 192.168.1.101 (to router)
Internet Connection Sharing (ICS) disabled on 192.168.0.1 (to LAN)
CIFS protocol (samba) enabled to support file sharing on the LAN
COM1: /dev/cua0 <---> Lucent WinModem
External Ports: on motherboard
Ethernet adapter: 192.168.1.101 (Intel PRO 100, on-board) <--->
Internet
LPR (parallel port) <---> Epson Stylus Color 600 printer
1394 (FireWire) bus <---> Que! CD-RW drive
SPDIF digital audio output
Audio IN (stereo mini-jack) <---> voice microphone
Audio OUT (stereo mini-jack) <---> Stereo Aux IN
VGA <---> KVM switch box
USB <---> KVM switch box
USB <--(20ft. active USB extension cable)--> 2nd keyboard
USE: control Cubase when recording at a distance from computer
NOTE: keyboard causes crashes if plugged into KVM switch
Game port <---> MIDI adapter cable <---> Roland MIDI U-20 controller
keyboard
External Ports: via PCI cards
Ethernet adapter: 192.168.0.1 (3Com Etherlink XL) <---> LAN
MOTU PCI-324 <--(FireWire cable)--> MOTU 2408 MkII (8-ch, 24-bit Audio
interface)
(Sygate Firewall Software enabled)
------------------------------------------------------
(192.168.0.1)
|
|
--------------------------------------+
SMC Barracuda 4-port (MDX) hub/router |--- "p3" Linux PC (see below)
--------------------------------------+
|
| (cross-over cable)
|
('uplink' [MDI-II] port)
-------------------------+
Soho 5-port hub |---- "g4" Mac OS 9.2 (see below)
-------------------------+
|
+----------------------------------+
| Farallon EtherMac iPrint Adapter |
| (EtherTalk to LocalTalk bridge) |
+----------------------------------+
|
| (PhoneNet cable)
|
(LocalTalk port)
+-------------------------------------+
| Apple "LaserWriter Pro 600" printer |
+-------------------------------------+
|
(192.168.0.101)
------------------------------------------------------
"p3"; ASUS P3B / Intel P3 box: physically located in SECURE cage
| ide0:hda REMOVABLE viPower IDE tray: MASTER; 60GB WD600 drive
| /dev/hda lilo boot partition on MBR
| /dev/hda1 ext2 47.6GB linux root partition
| /dev/hda2 linux swap
| /dev/hda3 ext2 4GB for backup archives
| /dev/hda4 vfat 3.52GB for vmware; currently unused
| ide0:hdb DVD/CDROM: SLAVE
| ide1:hdc REMOVABLE viPower IDE tray: MASTER
| * 60GB WD600 drive - partitioned for cloning of ide0:hda drive
| OR
| * 80GB Samsung drive - single FAT32 partition for file sharing
| OR
| * 10GB Quantum Fireball
| /dev/hdc NT boot partition
| /dev/hdc1 vfat Windows 2000 Pro
| /dev/cua0 (COM1) <---> 9-pin Mini-DIN switch box
| <---> Supra Express 56Kbps Mac modem
| (linux only, not windows compatible)
| | |
| Mac 8600 other systems needing modem
| VGA/USB <---> KVM switch box
| Ethernet: netatalk (Apple File-Sharing Protocol)
| ---> Macs can access linux files with or without CIFS installed
|
------------------------------------------------------
|
|
(192.168.0.102)
------------------------------------------------------
"g4"; Apple Macintosh g4
| 1st IDE bus: ide0
| Drive 1: 60 GB WD600 drive
| 40 GB HFS+: "Macintosh HD"; OS 9.2; other System Folders
| 10 GB HFS+: "Digital Audio"; separate partition for faster
defragmenting
| 10 GB HFS+: "OS X Server"; OS 10.0.4 Server
| 2nd IDE bus: ide1 - REMOVABLE; with cable modifications to Apple
case
| Drive 1: 60 GB WD600 drive - BACKUP of ide0
| 50 GB HFS+: "Macintosh HD"; "Digital Audio"
| 10 GB HFS+: "OS X Server";
| VGA/USB <---> KVM switch
| USB <---> Microsoft 'Explorer' USB trackball
| SCSI bus: (Orange Micro PCI card)
| Umax scanner
| external 500MB drive; old Systems
| Ethernet: CIFS ("DAVE") protocol:
| all hard drives and LaserWriter Pro 600 printer available on
network
| Ethernet: AFP (Apple File-Sharing Protocol):
| "EpsonShare client" ---> Mac 8600: "EpsonShare server"
| ---> 9-pin direct (non-appletalk) cable
| ---> Epson Stylus 600 printer
| Audio line out ---> speakers
------------------------------------------------------
|
|
(192.168.0.6)
------------------------------------------------------
"laptop"; Toshiba Pentium laptop
| ide0:hda - 4GB IBM drive
| /dev/hda (MBR): lilo boot sector - 512 bytes
| /dev/hda1: Windows 95
| /dev/hda2: linux ext2
| /dev/hda3: linux swap
| ide0:hdb DVD/CDROM: SLAVE
|
|
------------------------------------------------------
===== VGA/USB Network ========================
p4 VGA/USB ports
| g4 VGA/USB ports
| |
(4-port switch)
---------------------------------+
MiniView 4-port USB KVM switch |
---------------------------------+
<---> Umax scanner
<---> Compaq V1100, 21" SVGA MONITOR;
<---> Ortek EKB-880 ergonomic USB keyboard;
I sawed off the numberic keypad for closer proximity of
trackball;
less repetitive stress
<---> Logitech Firt / Pilot Wheel Mouse
===== Audio Network ========================
"p4": PCI-324 adapter
|
|
(IN/OUT: FireWire) (IN/OUT: SPDIF)
------------------------------------------------------+
MOTU 2408 MkII (8-ch, 24-bit Audio interface) |
------------------------------------------------------+
(OUT: Ch. 1/2) (OUT: Ch. 1/2) (IN: Ch. 1)
| | | |
| | | |
| (IN: Ch 9/10) (OUT: Aux. 2 send)
| +---------------------+
| | Mackie Analog Mixer |(OUT: Headphone mix)
| +---------------------+
| (IN: Ch 1/2; 3/4; 5/6)<--- TASCAM PE-250 Mic.
|
|
|
(IN: Aux)
------------------------------------------------------
Stereo Amplifier
------------------------------------------------------
AC POWER
I originally designed this system and used it in my mobile office inside a
Wells Cargo utility trailer. The entire power system was installed inside
my car, with PV panels mounted on the roof. Today it provides me with
protection from rolling blackouts. If I can ever get DSL service again, I
may try to host some commercial sites from home.
500W PV panels AC utility power Kawasaki EF1000 1000W
generator
| | |
| switch
| |
| 12v 75A Power Source charger
| |
charge controller |
|-----------+-- shunt resistor
ammeter |
| 100A fast-blow fuse
| |
12v DC: two 300 amp-hour Trojan L-16, 6v deep-cycle batteries
|
1000W inverter AC utility power
| |
switch
|
1000W NextGrid APS battery/inverter system
|
p3 server
Everything except the PV panels and AC power will be in secure, locked
location
INTERNET CONNECTION SHARING (ICS)
Windows multilink PPP is simple to enable and works great in Windows 2000.
Windows ICS service (available since Windows 98 I think) was buggy in
WindowsMe but works great in Windows 200
ICS requires the win2k box have static IP = 192.168.0.1
Doesn't require DHCP, but, if you use it, only the windows DHCP server
can be running
I use static IPs for the LAN.
NETWORK SECURITY
I use Sygate Firewall for Windows. Seems pretty good; easy to use. It
alerted me to spyware that I didn't know I had been infected by (thanks to
Audio Galaxy, Gator, etc.). Sygate also does a good job protecting against
common SYN flood attacks: very common when running file-sharing software,
like eMule. Sygate alerts you to this 'minor' threat but since it prevents
your system from responding to the SYN packets, they do not load down your
system and you don't need to worry.
Outlook Express is a big security hole in Windows. I simply use Eudora
instead with spam filtering so I don't open HTML attachments or execute
attached .bat files, etc. (DUH!).
NETWORK FILE & PRINTER SHARING
The file/printer-sharing protocol of choice is SMB/CIFS since it is the
standard Windows networking protocol and runs on all three platforms very
well.
Appletalk is much more limited and, while it allows a Mac to see windows or
linux files, it requires too many tweaks (3rd party software) to allow the
Mac files to be seen from linux/windows.
Printing to appletalk printers from linux can also be a pain. DAVE only
supports shared _postscript_ printers; no embedded binary data. E.g.,
printing photos from g4 to shared Epson (non-postscript) on p4 yields
garbage
For SMB/CIFS all you need to do is:
Best results and easiest configuration acheived when:
same username/password on all machines; Mac username is "Owner
Name"
WINDOWS 2000
workgroup name = WORKGROUP
if you enbable Internet Connection Sharing; it requires:
w2k TCP/IP address = 192.168.0.1
MACINTOSH
IP = 192.168.0.102; I chose this static addr so allow space above
192.168.0.1 for future DHCP clients
install/setup DAVE (http://www.thursby.com)
Control Panels:Dave Sharing: select "Share-level access control"
user-level access control requires running a Windows Server
Domain controller
Control Panels:File Sharing:Owner Name = <user name on unix samba
server>
LINUX
IP = 192.168.0.101; I chose this static addr so allow space above
192.168.0.1 for future DHCP clients
install/setup Samba (http://www.samba.org)
get some good help documents:
search google for: Samba-HOWTO-Collection
http://samba.linuxbe.org/en/samba/install/installing.html
This was included with RH 7.1:
///usr/share/swat/using_samba/index.html" target="_top">///usr/share/swat/using_samba/index.html
assuming you have samba installed ...(comes with RedHat 7.1)
perform the following actions:
#locate smb.conf # mine is at /etc/samba/smb.conf
edit /etc/samba/smb.conf # I modified/added the following lines:
--- smb.conf
[global]
workgroup = WORKGROUP
# this allows any host in local network to connect, plus the host
# itself.
hosts allow = 192.168.0. 127.
# Use MS Windows NT/2000 as an authentication server
# this fixes the initial error I had trying to login to linux samba
# shares:
# "the account is not authorized to login from this station"
encrypt passwords = Yes
security = server
# password server =
# "NetBIOS_name_of_Primary_Domain_Controller"
# there are other options, but simplest to let the w2k box be the PDC
password server = "p4"
# Case Preservation can be handy - system default is _no_
# NOTE: These can be set on a per share basis
# preserve case = yes is required for Macintosh DAVE
# clients
preserve case = yes
short preserve case = yes
# Mangle case = yes seems to give the correct filenames
# for Win95/98/NT.
mangle case = yes
# Default case is normally upper case for all DOS files
; default case = lower
# Be very careful with case sensitivity - it can break
# things!
; case sensitive = no
[homes]
# this displays each user's home directory as a share;
# but we do not want not 'homes' to be browseable since it
# duplicates user home dir
guest ok = no
read only = no
browseable = no
# A private directory, usable only by greg
[htdocs]
comment = htdocs
path = /usr/local/apache/htdocs
valid users = greg
public = no
writable = yes
--- end smb.conf
#testparm # this tests the smb.conf file
my system was setup to start smbd and nmbd as daemons in:
/etc/rc.d/init.d/smb
# to test starting samba:
#/etc/rc.d/init.d/smb start
test:
#smbclient -L p3 -U greg
#smbclient -L p4 -U greg
this will display a list of shares on my win2kPro P4 (NetBIOS
hostname seems to be case-insensitive). The server name is looked up
according to either the -R parameter to smbclient or using the name
resolve order parameter in the smb.conf file, allowing an administrator
to change the order and methods by which server names are looked up.
#smbclient //p3/greg
#smbclient //p4/p4shared -U greg
from windows try command shell:
C:\WINDOWS\> net use d: \\p3\greg
to setup the rc.d intitialization:
#cd /etc/rc.d/rc3/d
#mkdir disabled; mv K35smb disabled # this was the default link
# here
#ln -s S35smb ../init.d/smb # new link to start samba
# automatically at boot (run-level=3)
MOUNTING CIFS FILESHARES
smbfs
Easiest is to use smbfs (samba virtual filesystem) in linux.
Check to see if it is compiled into your kernel:
$cat /proc/filesystems
If not, try:
$modprobe smbfs
If that doesn't show it, then you need to recompile the kernel
Once you've got smbfs support in the kernel, then you mount a share
such as //p4/p4shared like this:
$mount -t smbfs -o username=greg,password=secret //p4/p4shared
/mnt/p4shared
Or; with implied username from USER environmental variable; will
prompt for password:
$mount -t smbfs //p4/p4shared /mnt/p4shared
mount -t smbfs executes mount.smbfs which is just an alias to
smbmount
Another way is:
$smbmount -o username=greg,password=secret //p4/p4shared
/mnt/p4shared
Or:
$smbmount //p4/p4shared /mnt/p4shared
Or:
add the following line to the /etc/fstab file:
//p4/p4shared /mnt/p4shared smb
noauto,user,username=greg,password=secret 0 0
The fstab entry must be noauto since samba services isn't started
before fstab is run at boot
To automatically mount, put a mount command into my ~/.xinitrc
If you don't have mount.smbfs, you can create it:
$ln -s /usr/bin/smbmount /sbin/mount.smbfs
Normally only root can mount a CIFS share but you can allow any
user to mount it by setuid bit:
#chmod u+s /usr/bin/smbmount
#chmod u+s /usr/bin/smbumount
This will ensure that file permissions are correct.
smbclient
If you don't want to mount the CIFS share, you can access it with
smbclient, similar to ftp smbclient has the advantage of letting you
browse shares and access shared printers
--- OTHER SAMBA OPTIONS / SUBJECTS TO INVESTIGATE:
install/use the samba admin tool: swap;
http://localhost:901/
if you want to start with inetd then...
# which smbd # mine is at /usr/sbin/smbd
# which nmbd # mine is at /usr/sbin/nmbd
#locate inetd.conf # mine is at: /etc/xinetd.conf ; has different
# syntax than inetd.conf
inetd.conf syntax: # <service_name> <sock_type> <proto> <flags>
<user> <server_path> <args>
if you have inetd.conf, add:
netbios-ssn stream tcp nowait root /usr/sbin/smbd smbd
netbios-ns dgram udp wait root /usr/sbin/nmbd nmbd
xinetd.conf syntax:
service <service_name>
{
<attribute> <assign_op> <value> <value> ...
...
}
if you have /etc/xinetd.conf, add:
netbios-ssn :
service netbios-ssn
{
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/sbin/smbd
disable = no
}
netbios-ns :
service netbios-ns
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/nmbd
disable = no
}
MULTI-BOOTING
When Windows goes fubar due to change of motherboard, virus or whatever,
re-installation is often easiest solution.
Windows intallers are very inflexible and require installing to the FIRST
primary partition and results in the MBR getting over-written.
For this reason, it seems easiest to always have each version of windows
installed on the first primary partition of a SEPARATE hard drive
Linux can be installed on any partition and rarely becomes unbootable.
Linux is very useful simply as a rescue, maintenance utility for Windows!
Although most people seem to use NT boot loader in multi-boot lin/win
situations. some prefer linux grub. I prefer lilo for the following
reasons:
+ lilo boot partitions are easy to copy, backup:
dd if=/dev/hda of=/liloboot.bin bs=512 count=1
+ lilo boot partitions are easy to restore:
dd if=/liloboot.bin of=/dev/hda bs=512 count=1
the above command doesn't seem to work for backup/restore of an NT
boot partition
+ linux is less likely to get corrupted by virus; easier to reinstall lilo
boot partition if needed (utilities for re-writing NT boot partition
without installing NT are also available)
+ The syntax of lilo.config file is easier for me to handle than NT
boot.ini;
+ lilo doesn't require copying and moving around boot image files
(C:\linuxboot.bin), as is required for NT
+ lilo seems better than grub: i believe grub completely wiped out all
partitions on my entire 80GB drive when i tried using it!
CYGWIN - X WINDOWS SERVER FOR WINDOWS
One more step in interoperability is to enable machines to run linux
applications remotely. This requires installing an X Windows Server on the
remote machine.
There is little of quality available for Mac OS 9.x
The best choice for Windows is cygwin
Files can be had from:
http://cygwin.com
http://cygwin.com/mirrors.html
Read the cygwin-xfree-ug.pdf file on installation and setup: it has an
error - doesn't tell you about downloading inetutils binary which includes
telnet, ssh
----
WARNING: Cygwin setup will automatically overwrite your custom config files
if upgrading!
BACKUP FILES AND RESTORE AFTER RUNNING SETUP:
C:\cygwin\usr\X11R6\bin\startxwin.bat
C:\cygwin\etc\x11\app-defaults\XTerm
----
Run setup.exe
Whenever you want to download additional packages, again run setup.exe
There doesn't seem to be any way to globaly uncheck items.
You must go down the list and uncheck things you don't want to download
Check off what you DO want to download.
Then copy to your home directory or wherever you want inside C:\cygwin,
such as:
C:\cygwin\home\greg
After installing cygwin, launch it and Install the xfree-binaries to
\cygwin\tmp
Follow the rest of the instruction from cygwin-xfree-ug.pdf
--- [greg@p4 greg]$ cat /etc/profile
PATH="/usr/local/bin:/usr/bin:/bin:$PATH"
USER="`id -un`"
if [ -z "$HOME" ]; then
HOME="/home/$USER"
fi
if [ ! -d "$HOME" ]; then
mkdir -p "$HOME"
fi
export HOME USER
for i in /etc/profile.d/*.sh ; do
if [ -f $i ]; then
. $i
fi
done
export MAKE_MODE=unix
export PS1='\[\033]0;\w\007
\033[32m\]\u@\h \[\033[33m\w\033[0m\]
$ '
cd "$HOME"
--- copy startxwin.bat to C:\cygwin\usr\X11R6\bin\startxwin.bat
--- Edit startxwin.bat
I edited this file so DISPLAY is setup for running X windows applications
from remote hosts and a few other customizations.
NOTE: for the following setup to work optimially and allow you to run
remote X applications using the localhost computer display, you must:
1. assign static IP to local and remote machines
2. enter the same name for both machines in both 'hosts' files:
+ on local Windows/Cygwin box:
C:\windows\system32\drivers\hosts
+ on remote linux machine:
/etc/hosts
Without further ado, here is a template of my startwxin.bat file:
REM file: C:\cygwin\usr\X11R6\bin\startxwin.bat
REM to run X applications remotely, <name of localhost machine> should be
static IP
REM this same name needs to be in hosts files on outpost and local machine
SET DISPLAY=<name of localhost machine>:0.0
REM use localhost if you don't need to run remote X apps or if you are on
DHCP
REM SET DISPLAY=localhost:0.0
REM set windows HOME variable to point to directory under CYGWIN_ROOT
REM the name of this directory should be the same as your Windows login
name:
SET HOME=/home/Owner
REM Startup the X Server with the integrated Windows-based window manager.
REM start XWin -multiwindow
start XWin -multiwindow -unixkill
REM start xwinclip to enable clipboard support:
REM integrated -clipboard options doesn't seem to work;
REM doesn't accept input to terminal from windows clipboard
REM DON'T USE start: start xwinclip.exe
run xwinclip.exe
REM Startup an xterm, using bash as the shell.
run xterm -geometry 80x50+20+20 -sl 1000 -sb -rightbar -ms red -fg yellow
-bg black -e /usr/bin/bash -login -i
REM allow running X applications from telnet to a remote host
run xhost +INET:<name of remote machine>
--- xwinclip problems
Sometimes I have noticed that xwinclip stops accepting input from the
Windows clipboard to the terminal.
These seems to happen if you start multiple cygwin sessions by launching
startwxin.bat and then exiting
SOLUTION: xwinclip will still be running in the Task Manager; kill it and
then restart cygwin
--- Edit $HOME/.bashrc on local windows and/or the remote box
alias newx='xterm -geometry 80x50 -sl 1000 -sb -rightbar -ms red -fg yellow
-bg black&'
--- To start the x server...
run C:\cygwin\usr\X11R6\bin\startxwin.bat
--- Now, telnet <machine you run xclients from> and run any xclient app:
it will display on the local machine
--- SSH seems to require explicitly setting DISPLAY after loginning into p3
from p4:
export DISPLAY=p4:0.0
run any xclient app
--- PROBLEM WITH LOGITECH MICE:
From: Luke Deller <ldeller at xplantechnology dot com>
To: cygwin-xfree at cygwin dot com
Date: Wed, 22 May 2002 11:53:34 +1000
Subject: middle button & logitech mice: more info
Hi,
Looking through the archives for this list, I have noticed that others
have had a problem getting the middle button on Logitech mice to work in
XFree86 in cygwin. The only solution that I found in the archives was to
avoid Logitech's drivers. This is not necessary.
It seems that the middle mouse button can easily be enabled by a simple
setting in the "Mouse properties" control panel. In the tab entitled
"Buttons", each of the three buttons can be assigned a wide variety of
actions. The default assignment of the middle button causes it not to
work in XFree86. I use the following assignment to make the buttons work
"normally":
Button 1 (left): "Click/Select"
Button 2 (middle): "Middle Button"
Button 3 (right): "Context Menu/Alternate Select"
--- Configure xterm
There was a problem using xterm:
If I tried to telnet and login to another machine I could not delete
characters during login.
I would get garbage.
Solution is to enable the XTerm option: "Main Options"/"Delete is DEL"
(ctl-left_mouse_button in xterm window)
Here's how:
Edit the file:
C:\cygwin\etc\x11\app-defaults\XTerm
Add the following line at the top:
*deleteIsDEL: true
--- Configure twm Window Manager
NOTE:
fvwm2 is a nicer Window Manager but it interferes with xwinclip
I really didn't like the way they shipped the default configuration.
For more info:
$man twm
From the xterm on the Cygwin machine, do the following:
$cp /etc/x11/twm/system.twmrc $HOME/.twmrc
Edit $HOME/.twmrc: I preferred not having to hit the title bar to raise a
window
Button1 = s : window|icon : f.raiselower
Button2 = m : window|icon : f.iconify
Button3 = m : window|icon : f.raiselower
"Xterm" f.exec "exec xterm -geometry 80x50 -sl 1000 -sb -rightbar -ms red
-fg yellow -bg black -e /usr/bin/bash&"
Click in the root window; choose "Restart" to restart twm with the new
settings
BACKUP SOLUTIONS
The biggest problem about backup is to do it. If it is difficult, you won't
tend to do it.
I prefer (linux) rsync for backup/cloning since it is smart, fast,
customizable and non-proprietary. I wrote my own backup utility that works
nicely for cloning drives:
http://www.proliberty.com/tools/devcopy/
There seems to be a problem running rsync from an xterm window; it
stalls in the middle sometimes
Workaround is to run from a non-X terminal.
Cloning could be supplemented by daily backups from windows, if needed.
Windows has the ability to automate backups but these are not full clones
of a hard drive. I prefer primary backup to be a complete clone of all
partitions. Since it is difficult to see ext2 partitions in Windows, I
don't know of any way to clone ext2 partitions of a multi-boot drive from
Windows alone.
Generally, win2kPro is faster and easier to maintain than win2kServer but
some features of win2kServer may be needed and require NTFS partition
(such as Services for Macintosh).
But linux can only mount NTFS partitions read-only so it can't be used to
clone an NTFS partition, for example.
Similarly, RedHat linux requires ext2 boot/root partition which is not
readable by windows without 3rd party software. (Although some linux
distributions reportedly can install into vfat partitions, RedHat cannot.)
I decided to minimize the size of NTFS and ext2 partitions and favor FAT32
(linux vfat) partitions as the best for use between linux/windows.
NETWORK AUDIO
One of my goals was to abandon my CD collection in favor of networked
shared access to mp3 file server. I got tired of burning CDs, making
labels, buying jewel cases and building CD shelves!
I had originally discovered audiogalaxy.com and downloaded several
gigabytes of mp3s but couldn't play many of them on my Mac because the
filenames were often longer than 32 characters.
Now I am in heaven: all computers on the network can see all audio files
and I can use any software on any platform to rip, edit tags and catalog
the files. Even the Macintosh can access files with names longer than 32
chars, using DAVE!
I have a networked PowerMac 8500 in the living room wired to the stereo and
the TV as a monitor, giving my family members GUI access to music by artist
or playlist without ever having to touch a jewel case. Unfortunately, this
machine died, possibly due to lack of ventilation since I had to keep it
in a closed cabinet next to the stereo to keep the noise down.
I plan to setup a second Windows computer and cut holes in the wall between
the living room and bedroom.
This will allow me to avoid the noise of the computer when listening to
music in the living room while allowing proper ventilation to the computer
and a short enough distance for Audio, VGA and USB cables through the wall
to the stereo and TV. I can then control Winamp with a mouse/keyboard, or
with Keyspan Digital Media Remote.
--- "KEYSPAN DIGITAL MEDIA REMOTE"
I paid $40+tax 'new' from Fry's Electronics with two dead batteries; they
go for $30-$35 + shipping, on eBay.com, with two good batteries...
- This is an infra-red remote control unit that works with Windows or
Macintosh applications via a USB port: it has application level mappings
for the 17 keys on the remote control corresponding to any keystroke
combinations you chose.
This beats paying $2800 for the latest Sony VAIO mini-disk, mp3, remote
controlled computer. (Hats off to Sony!) Instead, buy yourself an old Mac
8500 on eBay for around $500 and pay $40 for a remote control. It is slow
but fast enough to play mp3's. Download iTunes for free and you have a
great home-stereo jukebox. Of course you need a USB card and 50ft cat-5
ethernet cable and you need to get Mac OS 9.1 for free from a friend if
you don't have it :-)
The Keyspan remote comes pre-configured with all the important commands for
iTunes (way better than any Windows or Unix mp3 player!), including
switching to the psychedelic screen when you are listening to mp3s.
// HOW TO GET AUDIO FROM YOUR COMPUTER TO YOUR HOME STEREO
If youy computer is too far for runing audio cables (expense for high
quality) and you don't want to dedicate a computer to your living room and
run ethernet as I did here are some other options.
One half of the problem is getting the sound from your remote computer to
the stereo; the other half is conrolling the playback conveniently from
the stereo.
+ SLIMP3 is probably the best choice. See: http://slimdevices.com
+ The "X-10 Wireless video sender/reciever" allows you to play mp3s or DVDs
on your computer and hear/view them on my stereo/video system in the living
room. I bought one for $100 and returned it since it didn't seem to filter
noise and introduces a lot of clicks. Radio Shack sells what appears to be
the same unit with their brand on it.
+ Get a professional quality wireless audio transmitter/receiver unit for
around $300 like stage performers use.
+ Another option if the "SonicBlue Rio Receiver" which connects to the
computer over ethernet or phone line and costs about $170: it is a small
LCD console with knobs that sits next to your stereo and give digital
audio (and analog?) outputs. Not as nice as a computer display though.
If you use wireless for sound, you can use a cheap laptop to control the
mp3 audio server remotely with linux and X windows. To attempt running
remote applications in Windows would require PC Anywhere which requires
minimum 166GHZ Pentium 3 whereas my old 66GHz Pentium laptop runs remote X
clients fine. If you have a fancy expensive laptop that can run PC Anywhere
then you won't need it since you have enough RAM to decode mp3s directly
and cable the laptop to your stereo. My Toshiba 400CS laptop couldn't play
mp3s with only 40MB RAM running Windows 2000. The PowerMac 8500/120 does
fine with 60MB, Mac OS 9.1 and iTunes though.
see: http://www.hometheaterforum.com
MP3 FILE MANAGEMENT
--- RECOMMENDED SOFTWARE:
I have tried many, many different programs, on Windows and Mac.
While iTunes is pretty good on the Macintosh, Windows is a far better
platform for many reasons, most importantly being the 32-character maximum
file name limit on Mac HFS partitions (Mac OS 9.x and earlier). While Mac
OS X doesn't have the file name limitation, it is very slow without fast
expensive hardware and the user interface is very awkward compared to
Windows 98 or later.
The first factor that should effect how you manage and prepare digital
audio files is: how do you intend to listen to them? Considering file type
compatibility issues; id3 tag support in players is very important. For
example, mp3 players are common but:
- all support .wav files as well, but few support Ogg-Vorbis or .mpc
format files
- many players do not read id3v2 tags; only id3v1
- some players allow you to play from a playlist on disk but
practically, organizing your files intelligently into directories may be
easier to navigate
- the order of playback within a directory is usually alphabetical; if
your file naming scheme follows the ordering of original CD's (<tracknum>
- <title>) then you can listen in the original order without having to
manage playlists
The best software for digital audio file creation and management on Windows
is the following.
Audiograbber
- rip audio CDs to mp3 or wav, looking up titles from freedb.org
- automatically normalizes wav files before encoding as mp3
- customizable file naming schemes to suit your taste
- encodes mp3 files with id3v1 and id3v2 data
Mp3 Tag Studio
- batch editing (undoable) of id3 tag data
- many functions accesible with right-click in Windows Explorer
- very customizable for expert users
- excellent filtering for selecting files for custom playlists:
E.g., I use id3 'comment' tag to contain numerical preferences
(scale of 0-10)
Then I filter all my files for a range, say comment=7 or higher
to create my 'best of' lists
Musicmatch Jukebox
- the best for burning mp3 data CDs; allows you to split a lot of
data easily across multiple CDs
- everything else about this program sucks
Winamp
- best all-purpose mp3 player
CD Wave
- excellent tool for recording LPs or tapes and splitting tracks
- tools which try to auto-split by detecting silence don't work
reliably; waste of time
MP3 Gain
- adjust mp3 files to a standard gain level
Super Audio Converter
- converts .mp3 to .wav, .wav to .mp3, etc.
- use when you need to split mp3 full album tracks
Acoustica CD Label Maker
- allows you to import a standard winamp playlist and extract track
information
- allows you to easily do basic page layout, select columns of
playlist data, etc.
- supports many (most?) common label templates
Configuring your system and creating mp3 files for greatest flexibility is
complicated.
The rewards are very great: you can gain maximum utility from your music
collection.
In order to minimize the amount of time you spend fiddling with files and
tag data, it pays to plan out a long term strategy before ripping your
collection of CDs.
--- THE GOAL:
We would all like to be able to access our music easily with flexible
searching.
Examples:
Play randomly from collection of classical solo piano pieces
play movements of a work sequentially; i.e., don't randomize
between tracks of a given work
Find all songs in a particular Genre, such as 'Samba'
Play only my 'favorite' songs.
We want to be able to use the best software on any platform to access our
music, without loss of functionality: software quality is constantly
changing - best not to become 'locked in' to a non-standard data format!
--- THE DATA
mp3 audio files may come from various sources:
'ripped' from CDs that you own and have control over
downloaded from internet, with or without accurate data or meaningful
filenames
We want to acheive CONSISTENCY of:
audio volume levels and
metadata
Strategies for cataloging mp3 files will diverge between these two sources:
files without quality tag data require processing: tagging, renaming
files ripped from CD require proper configuration of ripping utilities so
that the data is consistent with that of downloaded files.
The kinds of things we are likely to care about most about our music are:
song title, artist, author, album/cd title, track number, genre/style,
rating
Other important attributes might be:
CD identifier (for database lookups); sub-categories of genre; user
comments
The central questions are:
HOW TO MOST EASILY ACQUIRE THIS DATA?
HOW TO STORE THIS DATA?
--- THE TOOLS
ID3 'tags' - data embedded within mp3 files
filenames, paths that contain artist, title, track, genre info, etc.
online CD databases: cddb.com, freedb.org - data keyed on calculated CD
id
can also be queried on artist/song title for use in tagging downloaded
files without any pre-existing tag data
software can create 'playlist' files or databases that organize files and
allow us to query and select different views and playing methods: random,
sequential, crossfades, etc.
--- TRADE-OFFS
Unfortunately, the world isn't perfect; there are inherent tradeoffs
between:
flexibility of data types/attributes we choose to associate with mp3
files
standardization of data format for portability between mp3 applications
time required to input data, edit filenames, ID3 tags, etc.
If we didn't care about portability or time the best choice would be a
user-configurable, non-standard database that allowed us to classify our
music/files with our own categories and sub-categories of genres and
preferences.
But what if the software that gives us access to this database, over time,
ceases to meet all our needs? We may need to switch to another program
that is faster or easier to use but which isn't able to import data from
the old application; the old application might not even export its data in
a format usable by any other application - indeed, this is unfortunately
often an intentional 'feature' of software that want to keep you
dependent!
For example, ID3v2 tags might be a good choice for data storage since they
offer:
accurate description of song title, author, album, artist, etc.
are physically attached to the music data file; can't become separated
are accepted as a standard by many applications
But what if we want to play them on our home stereo and need to use an
older computer, such as a PowerMac 8500 that cannot run MusicMatch
Jukebox? What if iTunes and other ID3v2 tag-compliant software tends to
crash on this platform or is dog slow? It might be that the only software
the will work on such a system only supports ID3v1 tags or perhaps we are
better off playing file by selecting them directly from the Finder.
Furthermore, it is good to have redundancy of data: when ID3 tags can't be
read or become corrupted, or are non-existent, then we may be able to make
use of how the files are organized within the filesystem, for example:
C:\mp3\<genre>\<artist>\<album>\<tracknum> - <title>.mp3
If our files are logically organized and have BOTH ID3v1 and ID3v2 tags, we
will have the widest choice of applications to use!
Of course this flexibility is gained at the expense of time and planning.
So let us focus on minimizing time and planning.
--- FILE NAMING CONVENTIONS
I use unix path conventions: '/' instead of DOS '\' or Mac ':'
Standard delimiter between fields in a filename is ' - ';
Since space is significant in the delimiter, hyphenated words in titles and
names are OK.
If you download files from Audiogalaxy, they will be in format:
artist - title.mp3
Other peer to peer file sharing systems, like gnutella, kazaa may not have
any standard conventions. When downloaded, they will not be sorted
automatically by genre or artist; they may or may not be tagged
If you move your files around, they may lose data if not tagged.
Therefore, I prefer to create some basic redundancy by including artist as
well as song title in the file name.
mp3dir = the directory under which you keep your mp3 files
Some options and pros and cons:
mp3dir/artist/album/title.mp3
pro: simple - easy to convert filename to tags without worrying
about field delimiters
con: file may lost artist, album data if moved before tagging
pro: unlikely that an untaged file could end up here since:
rippers autimatically save in directory hierarchies also tag
mp3dir/genre/artist/album/title.mp3
pro: this makes it easier to select groups of files for playing
directly from the filesystem
pro: also enables easy bulk file tagging from path since genre is
very subjective
original ID3v1 genres and subsequent are a poor selection of
names
you will likely want to overwrite the genre tag field to suit
your own tastes
mp3dir/artist/album/artist - title.mp3
pro: this method offers redundancy: if you ever move files or
download into one directory, you can easily sort them by artist when part
of the name
con: ' - ' used as a delimiter may cause problems if you try to
create tags from filenames if ' - ' also appears in the artist or title
when data is retrieved from cddb/freedb
problems appear with:
compilation cds that include: main_artist, track_artist,
title in filename
classical cds that include: composer, orchestra,
conductor, movement_name (allegro), catalog_id - often failing to include
the title of the piece in the track name!
you can end up with many tracks named 'allegro' that
will play out of order with the other movements of the same piece when
several 'allegro' movement occur on one CD!
rippers may offer options to substitute characters found in
filename automatically.
mp3dir/artist/album/tracknum - artist - title.mp3
pro: order of tracks preserved at filesystem level
pro: including tracknum in filename minimizes chances of filename
collision when moving several version of a song by the same artist in one
directory
con: if you mix files of different artists in one directory you get
a jumble
mp3dir/artist/album/artist - title - tracknum.mp3
better for keeping files sorted by artist
mp3dir/artist/album/title@artist.mp3
pro: minimizes parsing confusion when ' - ' is embedded in title or
artist
con: ' - ' is the standard delimiter most utilities default to; you
may need to customize settings and rename downloaded files to conform to
this convention
--- ARTIST versus COMPOSER
This is mostly an issue in Classical genre:
I prefer to group music by composer than by performer
when a CD contains all works by a single composer I want to see it as:
J.S. Bach/Brandenburg Concertos (disk 1)/artist - title.mp3
as opposed to, the more technically standard:
Performer(artist)/Album (probably including composer's
name)/Brandenburg Concerto No. 1 - movement.mp3
My personal convention is this:
Most non-classical CDs contains one performer or group:
artist = performer
When a CD contains all works by ONE SINGLE composer:
artist = composer, in subdirectory and artist tag naming
When a CD contains various performers playing songs by various
composers
artist = 'Various Artists'
The file naming conventions can be loose since we can fill in all the tag
fields we want
--- ID3v1 versus ID3v2 tags
ID3v1 tags are out dated but nice to have for maxiumum portability amont
applications
mp3 files can include BOTH tags!
For greatest compatibility, it is best to synchronize tags as much as
possible:
this may be supported by the ripper or you may need to process files
with tag editor after ripping
--- THE PROCESS
I will quickly list the main issues to contend with an my preferred
solution:
CDs
extract audio; quality of ripper and cd player tradeoff with speed of
extraction
see: www.exactaudiocopy.com
normalize wav audio data prior to encoding as mp3 or using volume
adjust tags in mp3?
decide which bit rate and other options you want to encode at
I use 192 kbit; stereo for everything
most people consider 192 'high quality'; 128kbit is 'good';
160kbit 'better'
mp3 encode: bit rate options
encoder options: LAME, BLADE, FRAUNHOFER
If you use LAME and your ripper supports using an external codec:
Download Lame from: http://www.hot.ee/smpman/mp3
Copy lame.exe to: C:\windows\lame.exe
Set your ripper to use it with command arguments; for 192kbit:
lame.exe -b 192 %s %d
where:
%s is the path to the source: wav file
%d is the path to the destination: mp3 file
other data formats: Ogg-Vorbis; WMA
file size, playback quality, portability/playability are tradeoffs
online database query: freedb, cddb, cddb2 are the options
be careful about accepting poor quality data!
tagging
file naming
cd burning
cd label printing
Downloaded files
audition for noise, incompletness, general quality
edit filenames, tags to a standard convention
CDs & Downloaded files:
import into jukebox/organizer/player
this will likely reveal inconsistencies/error in tag data:
if the organizer can also edit tags directly this can be nice
create playlists of subsets of library
prioritize/categorize files
at this stage, there may be insufficient support within the ID3 tag
beware of investing time inputting data that will not be exportable
to another application
there is no 'user preference' field in ID3v2.4 spec
some utilities use their own database; some use the general
'comments' ID3 field for this; no standard
utilities often do not synchronize database with file tag data
well, if at all:
if you use files in more than one application, data may
become confusing
You may edit data in and organizer/player such as iTunes, for
example, and either find that it is not written to the mp3 file or is
written to the IDv1 tag instead of to the IDv2 tag, for example and that
any relationship between tag data and filename is lost.
Beware also losing data files when you think you are only
removing records in a database/playlist!
--- WHAT I USE:
Audiograbber
- setup to name files with this config:
C:\mp3\<genre>\<artist>\<album>\<tracknum> - <title>.mp3
when freedb doesn't have a cd, try cddb2: Pyro 1.5
- this app is pretty lousy; only saves ID3v.1 tags; no normalization;
doesn't let you control filename formatting at all; it costs about $50 -
but it gives you cdd2 (gracenote) database connection for when you need
it.
- create the Artist and Album directories manually; rip
- after ripping, open one of the files in Mp3 Tag Studio
'mass set tags' for Genre
'mass set tags from filename' - pickup the chars from directory names
that may have been lost in ID3v1.1 tag truncation; pickup the track number
and title from the filename; DON'T set 'artist' tag from directory name if
it is a compilation - Pyro does set artist tag correctly for compilation
CDs and this saves you typing although, again, you get truncation if there
is a long artist field
'rename files from tags' - I prefer <artist> - <title> - <track>.mp3
over what Pyro gives you: '<track>-<title>.mp3
- next you need to normalize the volume: MP3Gain application works good; I
use 97%
- finally enqueue in winamp and listen to verify that you didn't clip the
sound level:
if you use MP3Gain after normalizing with another app like
audiograbber, it will likely clip because MP3Gain doesn't seem to read the
existing normalization tag fields correctly tells you the volume is lower
than it really is, then adds its own gain to cause clipping. If the files
were never normalized (Pyro) then there isn't a problem using 97% or 98%
even though the default MP3Gain recommends is 89%. Since Audiograbber's
default normalization is 98% and I do most of my ripping with
Audiograbber, I stick to this standard.
when cddb2 and freedb both don't have a title, then I try Musicmatch
Jukebox private DB lookup.
- One nice thing about Musicmatch is that the file renaming is pretty
smart: by default, it replaces ' - ' in filenames with '_-_' so that the
field delimiter ' - ' in filenames is unique! You can't do that with any
other app I know; not even Mp3 Tag Studio.
- Sometimes (rarely) it might have a CD that you can't find listed
elsewhere.
Another interesting feature of Musicmatch is that if freedb doesn't have a
title and you look it up in Musicmatch, if you simply switch to
Audiograbber and refresh the display, Audiograbber picks up the song
titles from Musicmatch! It must be using cdplayer.ini file or something.
Problem is that it only gets the title fields, not the artist or anything
else. But this is one way to 'steal' data from Musicmatch for freedb. Now
if only somebody could decode the cddb2 TCP/IP packets that Pyro sends and
patch the query protocol into Audiograbber or another freedb app we could
'port' cddb2 to freedb :-)
---
See: http://www.dailymp3.com - good site for list of mp3 utilities, reviews
on all platforms!
---
Unfortunately I have not found one product that does everything well. This
is what I want:
ripping tracks from cd to mp3 files
normalize volume level of ripped audio tracks
if you don't do this, compilations from different cds won't have
the same volume level
many mp3 players allow you to set playback level options but don't
edit the audio data:
instead they use the ID3 tag to tell a player to adjust
playback levels for the file
this is dependent on the ability of the player to use the tag
data
better is to normalize the original audio!
need a utility to normalize mp3 files; audiograbber, CoolEdit
normalize wav
looking up ID3 data from freedb.com, cddb.com or other
cddb2 - is the best, but proprietary; Pyro uses this
for hard to find international CDs, this has much more than
freedb or cddb
cddb - is only temporarily maintained;
freedb - open source; not as many titles as cddb2
it would be really nice if a freedb based app like audiograbber
could assign ID3 data from an imported playlist:
then you could use a cddb2 app to 'steal' cddb2 data; normalize
and encode with audiograbber and upload to freedb!
====
catalogue/jukebox/playlist manager:
flexible sorting and searching by song title, comment(preference),
etc.
group select enable play (Music Maid makes you select/deselect song
by song)
IDv2 tag support
import/save lists
primary sort by: artist - expand to show albums
primary sort by: genre - expand to show artist/albums;
select/deselect as a group
primary sort by: comment (preference)
flexible views:
tree/folder views are really nice: expand/collapse
customize order of column/fields
remove display of columns you don't need to see
edit ID3 tags; important that you can do this for groups of files
in a catalog app
===
getting ID3 tag data from filename; control the format for parsing
editing ID3 tags manually
flagging songs for personal preference; save the preference in the ID3
tag
this appears to be a shortcoming in ID3v2 tags: there is no
'preference' standard!
apps like Musicmatch seem to use the COMMENT field
there is no standard; Musicmatch uses words like 'excellent'
that you can't sort logically in any other app; you are tied into
Musicmatch
better would be a simple scale 0-10 in a 'preference' field
then you could always sort in any app and get consistent
results
many rippers use COMMENT field for CDDB ID or name of ripper,
etc.
if you use COMMENT field for preferences, be sure to erase
pre-existing comments first and disable comment use by rippers
group file editing: set preference or style for a group of songs at
once
submitting ID3 tag data to freedb.com
editing filenames based on ID3 tags
automatically create playlists
print jewel case labels from playlists; control formatting of layout
how many song titles can you fit on a jewel case?
burning audio cds from mp3s, without intermediate wav/aiff file
conversion
burning mp3 data cds
managing backup of mp3 files to cdrom
this is probably the job of an ordinary backup to CD-R
follow that with a 'catalog' app that keeps track of backed up file
media
play mp3 files; access ID3 data from player; control playlist display
format
play remotely over the network
this is easy in linux since X Windows is a client-server; MS
Windows has much more overhead
--- TAG EDITING / CATALOGUEING
ID3v1 tags are at the end of file; ID3v2 tags are at the beginning
mp3 files can have both ID3v1 and ID3v2 tags; the application decides which
to read
ID3v2 tags are superior: less limitations on field lenght; more fields;
beginning of file allows streaming, better handling; but not all mp3
players can read ID3v2
ID3v1 is obsolete; better to upgrade software/players; always write ID3v2
tags; optionally add ID3v1
MusicMatch Jukebox for Windows
This product is annoying with trying it's proprietary database and nagging
promo of the web site. But it does an good job of renaming files and
gathering ID3 data from filenames if needed. It is a passable database but
doesn't update automatically and doesn't sort data that well
Mp3 Tag for Windows
Only tag management; no playing, catalogueing, etc.
Very versatile file renaming; tag editing capabilities
--- BURNING: NTI CD-Maker for Windows; Roxio CD Creator (Roxio Toast for
Mac)
All work well with my FireWire CD-R; many apps don't seem to like this
drive
Haven't been able to get FireWire working in linux yet. Very poor
documentation on this.
--- JEWEL CASE LABEL PRINTING
Most players/rippers/organizers that can display a list of songs in mp3
format don't let you even copy to the clipboard so you can paste into
another app and print a label.
The few that support label printing, such as Feurio and MusicMatch, are
buggy or offer little control.
MusicMatch Jukebox for Windows is the only one I've found that does a
passable job of printing.
Acoustica CD Label Maker is the best I have found.
For superior quality design, I use Quark XPress but I begin with Acoustica
CD Label Maker to filter the playlist data appropriately, then copy and
paste in Quark XPress.
ERGONOMICS
Computer use is a serious physical hazard and it is wise to learn how to
avoid injury.
I suffered a frozen shoulder / rotator cuff inflamattion due to repetitive
stress that I didn't see coming. It took me a long time to figure out how
to begin recovering and recovery took over a year. Some people never
recover completely. Beware.
Sound of whirring computers can increase your stress too.
One idea suggested for reducing sound by 50% is to line your computer cases
with:
'Dynamat' - a thin foam product used by auto stereo enthusiasts to dampen
sound in a car. Available at many auto stereo stores.
INSTALLATION PROBLEMS
The following description is not meant to be an ideal HOW-TO.
It simply chronicles what I did and some problems I faced and how I
resolved them.
I recommend reading Red Hat Release-Notes (on disk 1) prior to any
installation: incompatibilities and problems with the release may be noted
that will save you time!
I started with:
P3 linux/windows machine already setup running RedHat 7.1 and Windows
2000 Pro
new Soyo SY-P4I box
two new 80GB drives: one boot; the other for backup of boot drive
pre-existing Win2k drive from my P3 machine
Step 1) Installed Windows 2000 Server on one big 80GB NTFS partition
I figured I'd test it out and repartition later...
Step 2) Partitioned new 80GB BACKUP drive with Partition Magic 7.0
Partition magic 7 doesn't run on win2k server; I used win2k pro on my
old P3 for this
Initially partitioned as follows; I changed this later:
hda1: primary 50GB NTFS - win2k server
hda2: extended partition
hda5: 15GB FAT - win2k pro
hda6: 15GB FAT - linux ext2 root partition
hda7: 512MB linux swap
CAVEAT:
Above partitioning was done when planning to install win2kPro on
same drive as win2kServer
As discussed elsewhere, it is better to install each version of
windows on a separate drive
Step 3) Installed RedHat linux 7.2 on newly partitioned "BACKUP" drive
PROBLEM: kernel panic
RedHat Linux 7.1, 7.2 wouldn't boot or install; not even
from 'rescue' CDs
This was due to kernel bugs with HighPoint 372 IDE RAID
chip and RAID feature
active in the BIOS
SOLUTION: searched google with name of motherboard, linux error
message
disabled the RAID chip in BIOS
the problem is allegedly fixed in latest kernel (>= 2.4.19
I think)
LILO boot partition written to /dev/hda (MBR); root=/dev/hda6
Step 4) Tweaked the RH 7.2 installation
The RH 7.2 installer didn't install some stuff I needed, like
linuxconf. I had to install these packages manually
Removed the drive with RH 7.2 and put it into the REMOVABLE bay of my
old P3 to copy some files and scripts. This is where removable hard drive
trays are really nice!
Step 5) Installed and 'Repaired' Windows 2000 Pro on pre-existing drive
from P3 machine
I had planned on moving the existing win2k drive from the P3 box to the
P4. This didn't work due to hardware incompatibilities: the driver for IDE
controller on the P3 didn't work for the P4 IDE controller and the P4
couldn't boot windows
PROBLEM: frozen blue screen with Windows error messages:
***STOP 0x0000007B
INACESSIBLE_BOOT_DEVICE
SOLUTION: searched google on INACESSIBLE_BOOT_DEVICE;
found lots of informative but time-consuming and
ineffective workarounds
booted from Windows 2000 CD
choose: installation to repair a damaged system
Reinstalling wasn't too painful; had to reconfigure my
display and desktop settings
Other incompatible hardware from the old motherboard were
removed by the installer
Registry entries for installed software were not affected
Step 6) Copied files from NTFS partition of win2kServer drive to backup
drive
I already had win2kServer installed on the NTFS drive; wanted to copy
this to the 'backup' drive
PROBLEM: couldn't copy files from booted win2kServer volume due to
"sharing violations"
turning off sharing did not help
linux can't write to nfts partitions so that wasn't an
option
SOLUTION: copy files when booted from my win2kPro volume; no sharing
violations
---
PROBLEM: freeze during boot; error message:
NTLDR is missing
SOLUTION: change view options in win2kPro and copy the missing files.
hidden files didn't all copy originally, even though I had
checked
"show hidden files" in the View options:
you need to also check "show hidden system files"
the required NT system boot loader files are:
ntldr
ntdetect.com
boot.ini
but you might as well copy all files;
i encountered a 'sharing violation' with with one hidden
file, probably used by the virtual memory system. no problem; didn't need
it anyway.
Step 7) Re-write boot sector to multi-boot linux, win2kPro and win2kServer.
Boot into linux; edit /etc/lilo.conf (see example below)
run /sbin/lilo to update boot sector.
Make Win2k partition bootable: run FIXBOOT from recovery console
There is a TRICK to getting windows to boot with lilo boot loader
You must use the lilo map-drive directive to fool windows into thinking
it is on the FIRST hard drive in the system! See lilo.conf below.
----- Here is my lilo.conf file:
# partition where lilo boot section will be written:
# /dev/hda is the master boot record (MBR)
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=320
# lba32 allows booting from any partition on large hard drives
lba32
default=win2kPro
# the linux kernel:
image=/boot/vmlinuz
label=linux
read-only
root=/dev/hda6
#0x80 is hda;
#CD-ROM drive doesn't figure in this order; if CD is 2nd on IDE0, then:
#0x81 is hdc; 0x82 is hdd;
# in this case, win2kPro is installed on 0x82 but
# windows needs to THINK it is the first drive, 0x80
# so you fool the BIOS by swapping:
other=/dev/hdd
label=win2kPro
map-drive=0x80 to=0x82
map-drive=0x82 to=0x80
# no map-drive needed here since win2kServer is on the first hard drive
other=/dev/hda1
label=win2kServer
OTHER PROBLEMS
This section documents a lot of specific problems that I encountered.
12/10/2003
PROBLEM:
Cloned hard drive had wrong drive letter mappings: what should have
been C: was D:, etc.
Tried to fix it with Partition Magic 8.0 but it hung on reboot with
error message:
xmnt2002.exe
"Cannot read the batch file"
"Touch any key to continue..."
Unfortunately, it did not respond to the touch of any key and would not
let me boot.
SOLUTION:
1. Cloned the hard drive again from the original source drive, to get
rid of the evil Partition Magic problem.
2. Edited the registry per instructions from "Windows 2000 Quick
Fixes", by Jim Boyce.
To summarize his more detailed discussion:
+ Run: regedit
+ Select the key: HKEY_LOCAL_MACHIINE\SYSTEM\MountedDevices
+ Delete or rename the key for C:
+ Select the key for D: (the drive you want to become C:)
+ Right-click:Rename
DosDevices\D: -- rename to -> DosDevices\C:
+ Quit regedit and reboot
---
PROBLEM:
Partition Magic 7.0 crashes during move operations; it writes bad
partition table; loses data
I moved several linux partitions and ended up with a partition table
out of order:
/dev/hda3 was the first partition instead of /dev/hda1;
PM moved the partitions but didn't rename them in the partition
map;
linux didn't like this; wouldn't boot: "...superblock could not be
read..."
I tried manually rewriting partition map in linux fdisk but this
couldn't be fixed;
I lost all data on the drive (luckily I had a backup)
SOLUTION:
Don't trust Partition Magic; backup before moving partitions!
Apply each action as you perform it; otherwise PM will reboot and run
batch files that crash
PM seems to write an invalid partition map in linux; it works better
with Windows
A better utility might be Paragon Hard Disk Manager; I haven't tried it
yet
includes "Ext2 Anywhere" - allows access to ext2 partitions from
Windows
---
PROBLEM:
win2kPro crashes with Stop Error: "MULTIPLE_IRP_COMPLETE_REQUESTS"
This would often be preceded by disappearance of the mouse cursor
Crash often happened after selecting a menu item in some application
It would crash about every hour
no recent hardware changes or conflicts; no viruses found;
SOLUTION:
This was apparently a problem with virtual memory / pagefile
I had it set to create pagefile on C:, D: partitions of my only drive
It is recommended to use a separate drive for the pagefile
I disabled paging on C:
Now I'm using D: (same drive as C:) and I: (separate drive) and the
problems are gone
My Computer:Properties:Advanced:Performance Options:Change
---
PROBLEM:
After upgrading Red Hat 7.2 from existing 7.1 installation,
old kernel 2.4.7 didn't have eth0, lo interfaces configured; compiling
new kernels didn't fix it.
SOLUTION:
(I should have read the release notes before upgrading...)
Apparently, the init scripts changed: ip command is causing the problem
from ipup
You need to recompile kernel with these options:
CONFIG_NETLINK=y
CONFIG_RTNETLINK=y
---
PROBLEM:
A windows partition is not bootable
This will always be true if you have not installed to that partition
with Windows installer. You may see the error message: "Starting Windows
Millenium" - when the drive doesn't even have WinMe!
SOLUTION:
Use FIXBOOT utility
Boot from win2k install CD: repair mode: console: FIXBOOT: select
partition to fix
This writes a valid boot sector
---
PROBLEM:
My w2k box was crashing once or twice a day with STOP error:
DRIVER_IRQL_NOT_LESS_OR_EQUAL
.... IdeChnDr.sys
SOLUTION:
Uninstalled screensaver: SereneScreen Aquarium
---
PROBLEM: Since linux can't write to ntfs filesystem, it can't clone a
drive with ntfs partitions.
SOLUTION: I use FAT32 partition instead and use Win2k instead of
Win2kServer.
I haven't needed Win2kServer for anything that linux can't do
better.
---
PROBLEM: MiniView USB KVM switch seems to have very unpredictable
behavior; USB latency is often very high: after I switch it takes a long
time for the OS to re-enumerate the bus and recognize the keyboard and
mouse. Sometimes I need to switch back and forth several times to get a
connection going. Sometimes I am forced to reboot the computer. The
problems only happen in Mac and Linux; not in Windows 2000.
SOLUTION: Use windows computer for almost everything; Cygwin XFree86
server gives me access to my linux machine. After porting my address book
from InTouch to Filemaker Pro, I find I don't need the Macintosh for
anything anymore. OS X is uselessly slow and Apple has abandoned the 95%
of its users who won't switch from OS 9.x. It won't be long before Apple
is dead.
MISCELLANEOUS COMMANDS
copy one partition to backup; excluding external filesystems
mount -t vfat /dev/hdc1 /mnt/hdc1
mount -t vfat /dev/hdd1 /mnt/hdd1
cp -avfx /mnt/hdc1/* /mnt/hda1
backup linux boot sector: if you use NT boot loader, you'll need this
dd if=/dev/hda bs=512 count=1 of=/boot/linuxboot.bin
Some tools I have written:
http://www.proliberty.com/tools/
WISH LIST
Network backup of all computers on the LAN:
I would like to build another PC with RAID capabilities to do this.
Networked mp3 connectivity to the living-room stereo
Best solution (SLIMP3 @ $299 ) is too costly right now.
INACCURACIES
Need to update lilo.conf, etc. for actual current, working installation
CURRENT PROBLEMS
None :-)
EOF