我一看你的表达就知道,你经验不足。你的那条命令有几个问题
1:sudo要和后面的内容隔开。sudo是给普通用户以root权限的
2那个.privillege.sh是什么意思?在linux下,它的意思是电脑中的一个名字叫做privillege个sh文件。这个末尾的.sh表明它是一个shell脚本文件。privillege前面有个点,表示它属于隐藏文件。
你要执行文件。有2个办法。一个是进入该文件的目录。以点.和斜线/为开头,后面跟上要执行的文件。例如:./privillege.sh。还一种是不进入要运行的文件的目录。而是通过明确指定路径的方式。例如 /usr/local/bin/mplayer /dev/sda3/培亚RH0253-07.avi。就是说是用在/usr/local/bin目录下的mplayer播放位于/dev/sda3目录里面的培亚RH0253-07.avi这个视频文件。其实,它和我先执行cd /usr/local/bin,进入/usr/local/bin目录,再执行./mplayer /dev/sda3/培亚RH0253-07.avi效果是一样的。
我觉得你的命令应该是 sudo ./privillege.sh,如果那个privillege.sh前面确实有个点,那就是
sudo ./.privillege.sh
首先我需要说明一下:drcom-1.4.4 (for kernel >=2.6.24) 2008-04-12 04:26
drcom-1.3.7.tar 2007-09-07 23:15
明白吧,我想你在下载drcom也应该有留意这个吧!
[Jack@localacer drcom-1.3.7]$ make
make -C drcomc
make[1]: Entering directory `/home/Jack/drcom-1.3.7/drcomc'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/Jack/drcom-1.3.7/drcomc'
make -C drcomd
make[1]: Entering directory `/home/Jack/drcom-1.3.7/drcomd'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/Jack/drcom-1.3.7/drcomd'
make -C kmod
make[1]: Entering directory `/home/Jack/drcom-1.3.7/kmod'
make -C /lib/modules/2.6.23.1-42.fc8/build M=/home/Jack/drcom-1.3.7/kmod modules
make[2]: Entering directory `/usr/src/kernels/2.6.23.1-42.fc8-i686'
rm: 无法删除 “/home/Jack/drcom-1.3.7/kmod/.tmp_versions/drcom.mod”: 权限不够
make[2]: *** [crmodverdir] 错误 1
make[2]: Leaving directory `/usr/src/kernels/2.6.23.1-42.fc8-i686'
make[1]: *** [default] 错误 2
make[1]: Leaving directory `/home/Jack/drcom-1.3.7/kmod'
make: *** [kmod] 错误 2
[Jack@localacer drcom-1.3.7]$
[Jack@localacer drcom-1.3.7]$ su
口令:
[root@localacer drcom-1.3.7]# make install
make -C drcomc install
make[1]: Entering directory `/home/Jack/drcom-1.3.7/drcomc'
mkdir -p /usr/local/bin/
install -m 755 drcomc /usr/local/bin/
make[1]: Leaving directory `/home/Jack/drcom-1.3.7/drcomc'
make -C drcomd install
make[1]: Entering directory `/home/Jack/drcom-1.3.7/drcomd'
mkdir -p /usr/local/bin/
install -m 700 drcomd /usr/local/bin/
make[1]: Leaving directory `/home/Jack/drcom-1.3.7/drcomd'
make -C kmod install
make[1]: Entering directory `/home/Jack/drcom-1.3.7/kmod'
make -C /lib/modules/2.6.23.1-42.fc8/build M=/home/Jack/drcom-1.3.7/kmod modules
make[2]: Entering directory `/usr/src/kernels/2.6.23.1-42.fc8-i686'
Building modules, stage 2.
MODPOST 1 modules
make[2]: Leaving directory `/usr/src/kernels/2.6.23.1-42.fc8-i686'
make -C /lib/modules/2.6.23.1-42.fc8/build M=/home/Jack/drcom-1.3.7/kmod modules_install
make[2]: Entering directory `/usr/src/kernels/2.6.23.1-42.fc8-i686'
INSTALL /home/Jack/drcom-1.3.7/kmod/drcom.ko
DEPMOD 2.6.23.1-42.fc8
make[2]: Leaving directory `/usr/src/kernels/2.6.23.1-42.fc8-i686'
/sbin/depmod -a 2.6.23.1-42.fc8
make[1]: Leaving directory `/home/Jack/drcom-1.3.7/kmod'
====================================
/etc/drcom.conf exists.
You May Need to Edit /etc/drcom.conf
====================================
这是我的安装过程,相信你没有疑义,相信你也找了不少资料吧!!!
请注意以下的资料:
linux下的drcom是在2.6的内核中开发的,用到了中的security_ops。
但是这个EXPORT_SYMBOL 在2.6.24的内核中被取消了,导致drcom-1.3.7不能编译。
/home/zrx/drcom-1.3.7/kmod/proto.c: In function ‘init_hijack’:
/home/zrx/drcom-1.3.7/kmod/proto.c:450: error: ‘security_ops’ undeclared (first use in this function)
/home/zrx/drcom-1.3.7/kmod/proto.c:450: error: (Each undeclared identifier is reported only once
/home/zrx/drcom-1.3.7/kmod/proto.c:450: error: for each function it appears in.)
/home/zrx/drcom-1.3.7/kmod/proto.c: In function ‘cleanup_hijack’:
/home/zrx/drcom-1.3.7/kmod/proto.c:461: error: ‘security_ops’ undeclared (first use in this function)
make[3]: *** [/home/david/drcom-1.3.7/kmod/proto.o] Error 1
make[2]: *** [_module_/home/david/drcom-1.3.7/kmod] Error 2
make[1]: *** [default] Error 2
make: *** [kmod] Error 2
随之而来的问题就是新内核在需要drcom的网络环境中不能上网了。就这个问题我请教了开源版本drcom开发者之一的Wheelz。目前最简单的办法只能修改内核,重新编译。
针对2.6.24的内核,具体办法如下:
1) 在内核的security/security.c文件的最后加上EXPORT_SYMBOL(security_ops)
2) 重新编译一下内核。
3) drcom-1.3.7/kmod/proto.c在#include 后面加上一句:
extern struct security_operations *security_ops
4)编译安装drcom。
需要说明的是我下载kernel-2.6.24.4的内核不知道出什么问题,做为引导启动时出错了!!!!
我的内核信息
[root@localacer ~]# uname -a
Linux localacer 2.6.23.1-42.fc8 #1 SMP Tue Oct 30 13:55:12 EDT 2007 i686 i686 i386 GNU/Linux
编译内核是截图,发不上来~~~~~~
说明:我的网络环境上校园网,做为我linux上网的方案有三套:
1.wine运行windows下的drcom客户端
2.虚拟机
3.linux下安装drcom-1.4.4
drcom-1.4.4是基于Linux localacer 2.6.23.1-42.fc8 #1 SMP Tue Oct 30 13:55:12 EDT 2007 i686 i686 i386 GNU/Linux下装的,我失败了!!!
wine运行windows下的drcom客户端已经d出"驱动已经安装,需要重新启动计算机"的对话框,不管点哪个,死活就是没反应!!!
对于我最成功的就是虚拟机方案了!!!!
你要比我幸运的多哦!!!!
希望我能给你一些帮助!!!!!^_^
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
写完才发现我写的kernel好象不符合你的要求,但是还是希望能够帮助你!!!^_^
郁闷~~~~怎么搞的有位老兄怎么搞的?
直接复制我的回答~~~~
编译内核的接图在我这里,要是感性趣留个联系幽香~~~
顺便补充一下,linux上网,方式1,3都是在真实的linux下,只有虚拟机方式才是在XP下面的~~~~
还有:
我所关注的linux与windows互交问题还有:
linux程序在windows下的执行问题
windows程序在linux下的执行问题
linux与windows交换区共享问题
linux与windows与分区相互访问问题.
有兴趣可以在网上找下~~~~~~
###########################################
顺便发表一下自己的情绪:
鄙视剽窃者,就像做为linux爱好者鄙视微软一样~~
(以上纯属个人情绪抒发~~~~)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)