Main | June 2002 »

May 26, 2002

In Defense of Larry Lessig

Great article: LawMeme: Legal Bricolage for a Technological Age - In Defense of Larry Lessig

Posted by vivake at 10:39 PM | Comments (0) | TrackBack | Edit Entry

May 23, 2002

Digital Video Recorders

Amy Harmon has an interesting article in the NYTimes: Digital Video Recorders Give Advertisers Pause. I like Amy Harmon; she writes sensibly.

Posted by vivake at 10:59 AM | Comments (0) | TrackBack | Edit Entry

May 22, 2002

Installing Oracle 8i on RedHat Linux 7, 8, and 9 and Red Hat Enterprise Linux AS 2.1

Christ, it was an awful experience. I hope the group that writes the database is different from the group that writes the installer, because the installer group sucks. Click through for the details.

These instructions are specifically for Oracle 8.1.7 on RedHat 7.3, but probably are largely applicable to RedHat 7.0, RedHat 7.1 and RedHat 7.2. They have also been confirmed to work for RedHat 8.0 and 9.0 by various people, credited in the notes.

Step 0 - Download and Unpack Oracle

Download two files from Oracle's site: linux81701.tar and glibc-2.1.3-stubs.tar.gz. Both files are available at http://otn.oracle.com/software/products/oracle8i/htdocs/linuxsoft.html. You may need to register for the Oracle Technology Network to be able to download them.

Make sure they have the following MD5 checksums:

bb6cee85bd78c91cfd4d02224b99adc5 linux81701.tar
7afc4a65f7d5c456e5a323b453ece2c1 glibc-2.1.3-stubs.tar.gz

Unpack Oracle into /opt/oracle:

cd /opt/oracle/
tar xf linux81701.tar

Do not unpack the glibc stubs file yet.

Step 1 - Install Prerequisites

Since RedHat 7 comes with glibc 2.2 and Oracle needs glibc 2.1, you'll need to download compat versions of the various libraries:

up2date -u compat-glibc
up2date -u compat-egcs
up2date -u compat-libstdc++
up2date -u compat-libs

Three additional points for users of RedHat 8 and above:
1] RedHat 8 and above: Instead of using up2date to fetch the compat packages you'll need to download the RPMs from the 7.3 directory on ftp.redhat.com or a mirror [Thanks to Patrick Ale for this info.].

2] RedHat 8 and above: The version of Apache installed with the Typical install needs libdb.so.3, which may not be installed on RedHat 8 and above. If it isn't, you can find this in the compat-db RPM. [Thanks to Matt for this info. He reported that he used compat-db-3.3.11-2.i386.rpm specifically.]

3] RedHat 9 and above: You need to downgrade the binutils to the version that ships with Redhat 8. [Thanks to Roie Marianer and Darren Coleman for this info.] The following command should take care of this:

rpm -Uvh --oldpackage binutils-2.13.90.0.2-2.i386.rpm

Step 2 - Setup Users and Directory Permissions

Create the Oracle user and groups:

groupadd dba
groupadd oracle
groupadd oinstall
useradd oracle -g oinstall -G dba,oracle

Create the directory where Oracle will be installed and give it appropriate permissions:

mkdir /usr/oracle
chown oracle.dba /usr/oracle

Step 3 - Setup Environment Variables

Append the following lines to the oracle user's .profile:

. /usr/i386-glibc21-linux/bin/i386-glibc21-linux-env.sh
export LD_ASSUME_KERNEL=2.2.5

umask 022

export ORACLE_BASE=/usr/oracle
export ORACLE_HOME=$ORACLE_BASE/product/8.1.7

export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/ctx/lib:/usr/bin:/bin:/usr/local/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/lib:/usr/local/lib:$LD_LIBRARY_PATH
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export ORACLE_SID=dev

Note that the glibc-stubs README says not to add $ORACLE_HOME/libs to LD_LIBRARY_PATH. Ignore it. [Thanks to Justin Georgeson for pointing this out.]

Step 4 - Symlink to Compat GCC

We need to symlink out to the correct GCC to make Oracle uses it when it compiles anything [Thanks to Jarkko Laine for pointing out that $ORACLE_HOME must be created first.]:

su - oracle
mkdir $ORACLE_BASE/product
mkdir $ORACLE_HOME
cd $ORACLE_HOME
mkdir bin
cd bin
ln -s /usr/bin/i386-glibc21-linux-gcc cc
ln -s /usr/bin/i386-glibc21-linux-gcc gcc

Step 5 - Install Oracle

Go ahead and install Oracle as user oracle with the default settings. If any errors occur during installation be sure to hit Ignore and continue with the installation:

su - oracle
cd /opt/oracle/Disk1
./runInstaller

[Matt reported that ./runInstaller does nothing but burn CPU cycles under RedHat 8, but running ./install/linux/runInstaller instead did the trick.]

Near the end of the installation, the installer will prompt you to run $ORACLE_HOME/root.sh as root. This file has two errors in it, so before you run it make the following changes:

Change line 98 from:
SED=/usr/local/bin/sed
to:
SED=/bin/sed
[Thanks to 'lex' for pointing this out.]

Change line 102 from:
RMF=/bin/rm -f
to:
RMF="/bin/rm -f"

Change line 156 from:
RUID=`/usr/bin/id|$AWK -F\( '{print $2}'|$AWK -F\) '{print $1}`
to:
RUID=`/usr/bin/id|$AWK -F\( '{print $2}'|$AWK -F\) '{print $1}'`

At the end of the installation, the installer will try to run three configuration wizards: the Net8 Configuration Assistant, the Oracle Database Configuration Assistant, and the Apache Web Server Configuration Assistant. You should stop all of them. You will run them later. After this your installer is done and you should exit it.

Step 6 - Install GLIBC Stubs

Now, you should install the glibc stubs (still as oracle):

su - oracle
cd $ORACLE_HOME
tar xzf /opt/oracle/glibc-2.1.3-stubs.tar.gz
./setup_stubs.sh
cd bin
relink all

Step 6.9 - Modify /bin/df [Thanks to Patrick Ale for this info.]

Oracle 8.1.7 can't cope with LVM long partition names. When creating a new database, dbassist checks if there is enough diskspace by doing a /bin/df. With long partition names, the actual free diskspace is listed on a new line, and this causes dbassist to crash.

What to do:

mv /bin/df /bin/df.orig
cat << EOF > /bin/df
#!/bin/sh
/bin/df.orig -P \$@
EOF
chmod +x /bin/df

Calling df with the -P option means that df wont care about nice tabbed information, but rather will display all information on one line. After you create your database, move /bin/df.orig back to /bin/df and your system is back to normal. Or, you can leave it, to always default to the POSIX output format.

Step 7 - Run the Various Assistants

Now, you can run the Net8 Configuration Assistant and the Database Configuration Assistant

su - oracle
$ORACLE_HOME/bin/netca
$ORACLE_HOME/bin/dbassist

Step 8 - Create a Shutdown/Startup Service

Create the file /etc/rc.d/init.d/oracle with the following contents [Thanks to Matthew Wise for pointing out the I was stopping the processes in the wrong order.]:

#!/bin/sh
#
# Startup script for Oracle
#
# chkconfig: 345 79 11
# description: Oracle.
# processname: oracle
# pidfile: /var/run/oracle.pid
#
# Source function library.
. /etc/rc.d/init.d/functions

ORACLE_HOME=/usr/oracle/product/8.1.7
ORACLE_USER=oracle

# See how we were called.
case "$1" in
  start)
    echo -n "Starting Oracle Database Server: "
    daemon --user=$ORACLE_USER $ORACLE_HOME/bin/dbstart
    success "Starting Oracle Database Server: "
    echo
    echo -n "Starting Oracle TNS Listener: "
    daemon --user=$ORACLE_USER $ORACLE_HOME/bin/lsnrctl start >> /dev/null
    success "Starting Oracle TNS Listener: "
    echo
    echo -n "Starting Oracle HTTP Server: "
    daemon --user=$ORACLE_USER $ORACLE_HOME/Apache/Apache/bin/apachectl start
    success "Starting Oracle HTTP Server: "
    echo
    touch /var/lock/subsys/oracle
    ;;
  stop)
    echo -n "Stopping Oracle HTTP Server: "
    daemon --user=$ORACLE_USER $ORACLE_HOME/Apache/Apache/bin/apachectl stop
    success "Stopping Oracle HTTP Server: "
    echo
    echo -n "Stopping Oracle TNS Listener: "
    daemon --user=$ORACLE_USER $ORACLE_HOME/bin/lsnrctl stop >> /dev/null
    success "Stopping Oracle TNS Listener: "
    echo
    echo -n "Stopping Oracle Database Server: "
    daemon --user=$ORACLE_USER $ORACLE_HOME/bin/dbshut
    success "Stopping Oracle Database Server: "
    echo
    rm -f /var/lock/subsys/oracle
    rm -f /var/run/oracle.pid
    ;;
  restart)
    $0 stop
    sleep 2
    $0 start
    ;;
  *)
    echo "Usage: $0 {start|stop|restart}"
    exit 1
esac

exit 0

Set the appropriate owner and mode:

chown root.root /etc/rc.d/init.d/oracle
chmod 0755 /etc/rc.d/init.d/oracle

Now you can start Oracle by typing:
service oracle start
You can stop Oracle by typing:
service oracle stop

Note that only the databases in /etc/oratab with the last field set to Y will start and stop automatically. The following line, for example, will automatically start and stop the dev database:
dev:/usr/oracle/product/8.1.7:Y

Also [as pointed out by Matthew Wise] the $ORACLE_HOME/bin/dbshut may not do anything on your setup. In that case, you should edit the dbshut script and change the line that says "shutdown" to "shutdown abort". There is some debate about whether this is a safe thing to do.

Step 9 - Enjoy

You're done. Congrats.


Posted by vivake at 11:15 PM | Comments (42) | TrackBack | Edit Entry

May 21, 2002

Stephen Jay Gould

I'm sick of reading mindless and fawning obits of SJG like this one: Stephen Jay Gould, an appreciation. "A brilliant scientist who can write beautifully is an unusual creature, almost an evolutionary impossibility." What a crock of shit.

Who cares if he's dead? That doesn't mean we've lost the right to be objective and intelligent when critiquing his work. I hate idiotically rosy obits.

SJG sucked. Find out why here: The Accidental Creationist. "Stephen Jay Gould is bad for evolution." Ah, much better.

I hope they don't publish any of his works posthumously...

Posted by vivake at 12:57 PM | Comments (0) | TrackBack | Edit Entry

May 17, 2002

The Case for the Empire

This is very funny: The Case for the Empire

Posted by vivake at 05:19 PM | Comments (0) | TrackBack | Edit Entry

May 15, 2002

My stars...

So, out of the blue, my father's brother picks up some Indian astrology book and makes a horoscope for me and forwards it to my father. My father proceeds to send it to me. It always surprising to me that for such an intelligent man, he hasn't been able to throw off the yoke of superstition. It's also surprising (or rather, unsurprising) that the horoscope usually agrees with everything that he wants me to do.

Some excerpts: "I think he should prepare himself for 2007. Do MBA.". I didn't know horoscopes were that specific. "He is going through the period of Rahu, so sometimes he will feel like a millionaire and sometimes like a begger." Sounds about right. "So until 2007 he can wait and do the learning. He will feel like the money is there but it will not be there." Awesome. "In his life he has to work hard but gains will be far less than the efforts." Fan-fucking-tastic.

The entire e-mail is copied under 'More...'

E-mail forwarded to me by my father:


From: Vivake's Father
To: Vivake
Subject: Horoscope
Sent: Wed 5/15/2002 12:30 PM

Vivake, this was send to me by your Chachaji:

Bhai,
Namaste,
I was looking at Vivake's chart. He is Manglik. So let me check his horoscope before he gets married. Actually, he is going through the period of Rahu, so sometimes he will feel like a millionaire and sometimes like a begger. But, in spite of that, Rahu is a good teacher. This Dasa ends on 9 April 2007. After that, he will be in Jupiter's Dasa. Jupiter is sitting in Singh Rashi, which means Jupiter's effects will be increased. He will be a good administrator at that time. So until 2007, he can pass struggling with job or study; the choice is his. He will have materialistic gain afer that time. So until 2007 he can wait and do the learning. He will feel like the money is there but it will not be there. It is like a mrig trishna (deer sees the water but nothing is there). His Rahu is sitting in the self/personal house, so it will bring up and downs for him. In his life he has to work hard but gains will be far less than the efforts. I think he should prepare himself for 2007. Do MBA. When Jupiter's time will start he can rise. He may have more than 1 marriage. His wife may not live long. Also partnership in his life won’t work. If he wants to do business he has to go on his own. His mind may not feel happy at the time. His relationship with his younger brother is very good. His stars help his younger brother. He has more favourable stars for his younger bother. Also he brings money to his mother’s house. His stars help his mother's family with money. His Mercury is very powerful. So he will help her mother and mother's family with money and intelligence. Also Uranus is sitting in the 8th house which may cause sudden gains or loss in the mother’s family. His kids will have lot of name and fame (sun in 5th house and saggitarian). Saturn is sitting in the 2nd house, which will make his mind unhappy at the times. He should have a very sensitive mind. Because of Mars in the 1st house he will be very active. He is not a religious type of person at all. He will be very good in his profession but results are not as good.

Bhai, I will write some more tomorrow.
Ajay

I guess they've got it all figured out.

Posted by vivake at 04:55 PM | Comments (0) | TrackBack | Edit Entry

Housework is completely useless...

Yahoo! News - No Evidence Housework Improves Health - Study. I always knew there was no point to housework. Vindicated at last.

Posted by vivake at 09:33 AM | Comments (0) | TrackBack | Edit Entry

May 14, 2002

Choking at the bowl...

Read on MSNBC, Choking at the bowl:
Men experience stage fright at ballpark urinals all the time. In fact, the problem is so common that urologists have a reassuring, pat-on-the-butt-sounding name for it: choking at the bowl.

Are you kidding? Is there really nothing better to report? There isn't any ongoing research more interesting than this?

Posted by vivake at 01:06 AM | Comments (0) | TrackBack | Edit Entry

More abuse of the patent system...

Read on Slashdot, Under Attack by PanIP's Patent Lawyers?:
I work for a small plumbing, heating, irrigation, and BBQ supply house. Over the past four we have built up quite a website that houses tons of information and offers many products for sale via an online store. Recently a company known as PanIP has decided to sue us on 2 counts of patent infringement. To the best of my understanding, as you can see from their website, they claim that they invented the use of text and images as a method of business on the Internet. They also claim that they invented the use of a form to enter customer information. Obviously this is ridiculous and most likely won't hold up in court! However, this is not the problem. PanIP has also sued 10 other small companies. PanIP chose small companies because they hope that none of them can afford the legal fees that would ultimately remove their patents. Most defendants, including us, want to opt to bail out for a smaller licensing fee of $30,000. PanIP will continue this vicious cycle on small companies of which many of you may become victim of. Eventually they will have so many cases under their belt that they will be able to attack larger companies.

Posted by vivake at 12:13 AM | Comments (0) | TrackBack | Edit Entry

May 12, 2002

SSSCA/CBDTPA, BPDG, etc.

Somes pages on Senator Hollings' and Jack Valenti's agendas to force hardware makers to build-in copy protection: John Gilmore and Intel, EFF's Alert, ACM's open letter to Senator Hollings, and EFF's BPDG Blog.

Maybe I'm becoming more sensitive to these issues after reading The Future of Ideas, but this is the first time I feel strongly enough about one of EFF's issues to consider becoming a member. The entire mess is symptomatic of the classic Democratic "regulate first, think later" mindset.

Posted by vivake at 03:20 PM | Comments (0) | TrackBack | Edit Entry

Copyright extensions...

Openlaw: Eldred v. Ashcroft provides a forum and links to information about quite an interesting case regarding the latest extension to copyrights. The author of The Future of Ideas, Lawrence Lessig, is the attorney for the plaintiffs. Golan v. Ashcroft is a companion case.

Spider Robinson has a (free) short story called Melancholy Elephant that reflects the reductio ad absurdum of copyright gone too far, which is what will eventually happen if intellectual property is allowed to become the same thing as real property and personal property. It's not very well written, IMHO, but it won the Hugo Award in 1983.

Posted by vivake at 11:05 AM | Comments (0) | TrackBack | Edit Entry

Antirelativity rallies...

Quote from New Details Emerge From the Einstein Files:

"Another turned out to be a convicted extortionist who had once organized antirelativity rallies in Berlin."

Antirelativity rallies... And this was during a time (between WW I and II) when there were quite a few actually relevant social issues to be an activist for. How did this guy settle on being on antirelativity activist? I don't really understand activism in science. Reminds of people like Stephen Jay Gould and this story from the Economist: Defending Science.

Posted by vivake at 10:48 AM | Comments (0) | TrackBack | Edit Entry