找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888广告投放联系QQ68610888
广告投放联系QQ68610888广告投放联系QQ68610888
查看: 13092|回复: 6

openwrt (Kamikaze)安装笔记(三)

[复制链接]
发表于 2008-5-8 01:30 | 显示全部楼层 |阅读模式
再来。

        装了一些东西后,暂时能满足我的要求。需要对路由器做一些优化设置。
    一、服务优化
        因为我内网机子都是固定IP的,所以不需要内网DHCP服务。而且我不需要WEB界面,httpd服务对我也是无用的。所以我打算停掉这两项服务。
        很简单,只要运行:
        /etc/init.d/dnsmasq disable  (停止内网DHCP服务)
        /etc/init.d/httpd disable  (停止httpd服务)
        如果需要恢复,运行:
        /etc/init.d/dnsmasq enable  (恢复内网DHCP服务)
        /etc/init.d/httpd enable  (恢复httpd服务)
        其他的一些服务大家看着办,建议不要动。
    二、开机自动挂载硬盘
        建立/etc/init.d/optware文件如下:
        #!/bin/sh /etc/rc.common

        START=99
        STOP=40

        start()
        {
            e2fsck -p /dev/scsi/host0/bus0/target0/lun0/part1 &
            sleep 5
            mount -t ext3 -o noatime /dev/scsi/host0/bus0/target0/lun0/part1 /opt
            if [ -d /opt/etc/init.d ]; then
                for f in /opt/etc/init.d/S* ; do
                    [ -x $f ] && $f start
                done
            fi
        }

        stop()
        {
            if [ -d /opt/etc/init.d ]; then
                for f in /opt/etc/init.d/S* ; do
                    [ -x $f ] && $f stop
                done
            fi
            sync
            sync
            umount /dev/scsi/host0/bus0/target0/lun0/part1
        }

        restart()
        {
            stop
            start
        }


        保存,把它变为可执行:
        chmod +x /etc/init.d/optware
        加入启动自动运行
        /etc/init.d/optware enable
        重启后就能自动挂载硬盘。注意,硬盘的电源一定要在路由器之前打开,否则可能挂载失败。
    三、自动启动rtorrent
        建立/opt/etc/init.d/S99rtorrent文件如下:(原来有个,把它删了)
#!/bin/sh

#######################
##Start Configuration##
#######################
HOME=/opt/root
config=$HOME/.rtorrent.rc
options=""
base=$HOME
srnname="rtorrent"
logfile="/var/log/rtorrentInit.log"
#######################
###END CONFIGURATION###
#######################

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/opt/bin:/opt/sbin:/opt/usr/bin:/opt/usr/sbin
DESC="rtorrent"
NAME=rtorrent
DAEMON=$NAME
SCRIPTNAME=/opt/etc/init.d/S99$NAME

checkcnfg() {
  exists=0
  for i in `echo "$PATH" | tr ':' '\n'` ; do
    if [ -f $i/$NAME ] ; then
      exists=1
      break
    fi
  done
  if [ $exists -eq 0 ] ; then
    echo "cannot find $NAME binary in PATH: $PATH" | tee -a "$logfile" >&2
    exit 3
  fi
  if ! [ -r "${config}" ] ; then
    echo "cannot find readable config ${config}. check that it is there and permissions are appropriate"  | tee -a "$logfile" >&2
    exit 3
  fi
  session=$(getsession "${config}")
  if ! [ -d "${session}" ] ; then
    echo "cannot find readable session directory ${session} from config ${config}. check permissions" | tee -a "$logfile" >&2
    exit 3
  fi
}

d_start() {
  [ -d "${base}" ] && cd "${base}"
  screen -ls | grep -sq "\.${srnname}[[:space:]]" || screen -dm -S ${srnname} 2>&1 1>/dev/null | tee -a "$logfile" >&2
  screen -S "${srnname}" -X screen rtorrent ${options} 2>&1 1>/dev/null | tee -a "$logfile" >&2
}

d_stop() {
  session=`getsession "$config"`
  if ! [ -s ${session}/rtorrent.lock ] ; then
    return
  fi
  pid=`cat ${session}/rtorrent.lock | awk -F: '{print($2)}' | sed "s/[^0-9]//g"`
  if ps | grep -sq ${pid}.*rtorrent ; then
    kill -s INT ${pid}
  fi
}

getsession() {
  session=`cat "$1" | grep "^[[:space:]]*session[[:space:]]*=" | sed "s/^[[:space:]]*session[[:space:]]*=[[:space:]]*//" `
  echo $session
}

checkcnfg

case "$1" in
  start)
    echo -n "Starting $DESC: $NAME"
    d_start
    echo "."
    ;;
  stop)
    echo -n "Stopping $DESC: $NAME"
    d_stop
    echo "."
    ;;
  restart|force-reload)
    echo -n "Restarting $DESC: $NAME"
    d_stop
    sleep 1
    d_start
    echo "."
    ;;
  *)
    echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
    exit 1
    ;;
esac

exit 0

        保存后,使其可执行:
        chmod +x /opt/etc/init.d/S99rtorrent
        建立/opt/root目录,把配置文件.rtorrent.rc放在此目录下。

    四、开放端口
        rtorrent需要打开一些端口,我的设置是监听端口51777,DHT端口为6881
        编辑/etc/config/firewall文件,在后面加上:
        accept:proto=tcp dport=51777
        accept:proto=udp dport=51777
        accept:proto=udp dport=6881
        保存,然后运行
        /etc/init.d/firewall restart
        生效。
        如果你需要把端口映射到内网IP,只需要/etc/config/firewall文件中添加
        forward:proto=协议(udp或tcp) dport=外网端口:内网IP:内网端口
        很简单的。
只谈技术、莫论政事!(点击见详情) | 互相尊重、友善交流、切勿过度反应、玻璃心。胡乱输入灌水等操作将会被封禁ID。
发表于 2008-5-8 03:44 | 显示全部楼层
dnsmasq是dns缓存,有利于加速网址的访问,不建议关闭
只谈技术、莫论政事!(点击见详情) | 互相尊重、友善交流、切勿过度反应、玻璃心。胡乱输入灌水等操作将会被封禁ID。
回复

使用道具 举报

发表于 2008-8-3 22:58 | 显示全部楼层
想请问一下kamikaze的openwrt有没有WEB界面 可以登陆的,我想通过openwrt刷其它的固件,但是死活搞不出WEB界面
只谈技术、莫论政事!(点击见详情) | 互相尊重、友善交流、切勿过度反应、玻璃心。胡乱输入灌水等操作将会被封禁ID。
回复

使用道具 举报

发表于 2008-8-4 05:29 | 显示全部楼层
默认没有,可以装x-wrt。
不过从openwrt刷固件不需要web页面啊,直接tftp就行。
只谈技术、莫论政事!(点击见详情) | 互相尊重、友善交流、切勿过度反应、玻璃心。胡乱输入灌水等操作将会被封禁ID。
回复

使用道具 举报

发表于 2008-8-4 05:29 | 显示全部楼层
默认没有,可以装x-wrt。
不过从openwrt刷固件不需要web页面啊,直接tftp就行。
只谈技术、莫论政事!(点击见详情) | 互相尊重、友善交流、切勿过度反应、玻璃心。胡乱输入灌水等操作将会被封禁ID。
回复

使用道具 举报

发表于 2008-8-4 09:02 | 显示全部楼层
原帖由 awingbird 于 2008-8-4 05:29 发表
默认没有,可以装x-wrt。
不过从openwrt刷固件不需要web页面啊,直接tftp就行。


呵,估计你网络不好,我已经用mtd刷了。其实openwrt装了X-wrt也挺强大的。还是爱好用界面的方式配置呀。
只谈技术、莫论政事!(点击见详情) | 互相尊重、友善交流、切勿过度反应、玻璃心。胡乱输入灌水等操作将会被封禁ID。
回复

使用道具 举报

发表于 2009-3-27 23:22 | 显示全部楼层
赞啊, 都是精华帖
只谈技术、莫论政事!(点击见详情) | 互相尊重、友善交流、切勿过度反应、玻璃心。胡乱输入灌水等操作将会被封禁ID。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /2 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2026-8-24 00:27

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 电话:13506125623

快速回复 返回顶部 返回列表