|
我的ES56T PI(289modem在windows下好用,但在linux下却怎么也安装不上。我用光盘和网上down下的安装程序共计四个,安装个遍,也不能装上。敬请高手指点。
程序包中的readme基本上都是这样的:
1. Type " mkdir " to create a directory " Essmodem"
2. Go into that directory and Type " mcopy a:."
3. Key in " sh mdminstall "
而安装程序则有些不同:
有的是:
rmmod esscom >NULL
insmod esscom
rm /dev/essmodem >NULL
mknod /dev/essmodem c 127 1
rm /dev/modem >NULL
ln -s /dev/essmodem /dev/modem
有这样的:
#!/bin/sh
#This function is modified from the Script implemented by Linmodem.org
fixScript()
{
MI=/tmp/modinfo
DI=/tmp/depinfo
#new kernel version modinfo section
echo -ne "kernel_version="`uname -r`"\0" > $MI
#build the objcopy command
CMD="objcopy"
#for i in `depmod -e $1 | grep -vE "^$1:"` ; do
depmod -e $1 2>$DI
AWKSTR=\$2
for i in `awk "{print $AWKSTR}" $DI | grep _R` ; do
echo doing $i
i1=`echo $i | awk '{
gsub(/_R[0-9a-fA-F]+/,"");
printf("%s", $1);
}'`
echo "i1=" $i1
echo " trunc=\"$i1\""
searchstr=$i1"_R"
echo "searchstr=" $searchstr
new=`cat /proc/ksyms | grep $searchstr | awk "{print $AWKSTR}"`
echo " new=$new"
CMD="$CMD --redefine-sym=$i=$new"
done
#replace the modinfo section with the new one
CMD="$CMD --remove-section=.modinfo --add-section=.modinfo=$MI"
CMD="$CMD $*"
#run the command
echo "CMD:" $CMD
$CMD
#remove the section file
rm -f $MI
rm -f $DI
}
cat <<SHOW
ESS MODEM INSTALLATION PROGRAM
written by Joe <[email protected]>
NOTE:
This program need the root privilege.
Check to be sure that you have it.
SHOW
echo "Now will install driver for ES56-PI, ES56V-PI, or ES56T-PI."
echo "Continue?(y/n)"
read choice1
case $choice1 in
y|Y)
echo "Test for system enviroment..."
echo "This driver only supports kernel version 2.2.12-20(or higher)"
echo "And your kernel version is:"
uname -r
echo "Continue?(y/n)"
read choice2
if test $choice2 = "n" ; then
echo "Exiting script..."
exit 1;
elif test $choice2 = "N" ; then
echo "Exiting script..."
exit 1;
elif test $choice2 != "y" -a $choice2 != "Y" ; then
echo "Unrecognizeable input!"
exit 1;
else
echo "Checking module dependence..."
fi
rmmod esscom >NULL
insmod esscom.o
if ! test $? -eq 0 ; then
echo "Adding patch..."
fixScript esscom.o patched_esscom.o
echo "Patch added."
cp patched_esscom.o /lib/modules/`uname -r`/misc/esscom.o
insmod esscom
else
echo "Test passed..."
cp esscom.o /lib/modules/`uname -r`/misc/esscom.o
fi
cat <<JOE >loadmod
rmmod esscom >NULL
insmod esscom
JOE
cat <<JOE >freemod
rmmod esscom >NULL
JOE
cat <<JOE >Essuninst
rmmod esscom
rm /dev/essmodem
y
rm /dev/modem
y
rm /lib/modules/`uname -r`/misc/esscom.o
y
JOE
cat <<JOE >readme.txt
Installation over.
Check the command 'lsmod' to see whether esscom has been successfully loaded.
If so,Congratulatoins!
And you can now use minicom and ppp to configure your network!
Later:
Run './loadmod' to load esscom as a module.
And run './freemod' to unload the module esscom.
You can also run './Essuninst' to uninstall the driver.
Please mail to <[email protected]> if you encount any problem.
Enjoy it!
Joe Hawk
JOE
chmod 755 loadmod
chmod 755 freemod
chmod 755 Essuninst
rm /dev/essmodem >NULL
mknod /dev/essmodem c 127 1
rm /dev/modem >NULL
ln -s /dev/essmodem /dev/modem
lsmod
echo
echo "Installation over."
echo "Please read the readme.txt in detail."
exit 1
;;
n|N)
echo "Exiting script..."
exit 1
;;
*)
echo "Unrecognizeable input!"
;;
esac
不知这两个程序有什么不一样。
另外:readme中要求建立的目录Essmodem应该建在哪个目录下。我是建在/dev/下的,不知有没有关系?
安装显示的信息是:
x行,rmmod command not found
xx行,insmod command not found
就没有了。
在win98下是com4,在win2000下是com3有区别吗?
|
|