snooper 发表于 2009-8-14 19:54:21

请教一CentOs下双CPU指定内核

请教一CentOs下双CPU指定内核问题,服务器2个XEON 3.06 超线程关闭,怎么样一个F指定使用一个F呢?比如27015 指定为 CPU 0,27016指定为CUP 1?

wujianchong 发表于 2009-8-24 15:18:48

用 taskset 命令来指定.

snooper 发表于 2009-8-24 15:46:46

2# wujianchong


能具体点吗?谢谢了

wujianchong 发表于 2009-8-25 16:06:24

http://www.cyberciti.biz/tips/setting-processor-affinity-certain-task-or-process.html

nopain 发表于 2009-8-25 17:39:30

请参见我的这段脚本:#!/bin/bash
# HLDS所存放的目录
export HLDS_BASE=/usr/games/

if [ -z "$1" ] || [ -z "$2" ]; then
        # 语法格式:cs.sh 要操作的服务器(1、2、3、4、5号服务器或全部) 要执行的操作(开始、停止、重启、查看控制台)
        echo "Usage:"
        echo "        cs.sh 1|2|3|4|5|allstart|stop|restart|view"
        exit 1
fi

CMD=""
NAME=""

case "$1" in
1)
        # 操作1号服务器
        cd $HLDS_BASE/1F
        NAME="server1"
        CMD="screen -A -m -d -S "$NAME" taskset -c 2 ./hlds_run -tos -binary ./hlds_i686 -timeout 3 -pingboost 2 -game cstrike+ip 0.0.0.0 -port 27015 +map de_dust2 +maxplayers 32 -insecure +sv_lan 0 -nojoy -noipx"
        ;;
2)
        # 操作2号服务器
        cd $HLDS_BASE/2F
        NAME="server2"
        CMD="screen -A -m -d -S "$NAME" taskset -c 3 ./hlds_run -tos -binary ./hlds_i686 -timeout 3 -pingboost 2 -game cstrike+ip 0.0.0.0 -port 27016 +map de_dust2 +maxplayers 30 -insecure +sv_lan 0 -nojoy -noipx"
        ;;
3)
        # 操作3号服务器
        cd $HLDS_BASE/3F
        NAME="server3"
        CMD="screen -A -m -d -S "$NAME" taskset -c 4 ./hlds_run -tos -binary ./hlds_i686 -timeout 3 -pingboost 2 -game cstrike+ip 0.0.0.0 -port 27017 +map cs_bloodstrike +maxplayers 18 -insecure +sv_lan 0 -nojoy -noipx"
        ;;
4)
        # 操作4号服务器
        cd $HLDS_BASE/4F
        NAME="server4"
        CMD="screen -A -m -d -S "$NAME" taskset -c 5 ./hlds_run -tos -binary ./hlds_i686 -timeout 3 -pingboost 2 -game cstrike+ip 0.0.0.0 -port 27018 +map de_dust2 +maxplayers 32 -insecure +sv_lan 0 -nojoy -noipx"
        ;;
5)
        # 操作5号服务器
        cd $HLDS_BASE/5F
        NAME="server5"
        CMD="screen -A -m -d -S "$NAME" taskset -c 6 ./hlds_run -tos -binary ./hlds_i686 -timeout 3 -pingboost 2 -game cstrike+ip 0.0.0.0 -port 27019 +map de_dust2 +maxplayers 32 -insecure +sv_lan 0 -nojoy -noipx"
        ;;
all)
        # 操作所有服务器
        if [ "$2" = "view" ]; then
                screen -ls
                exit 0
        fi
        $0 1 $2
        $0 2 $2
        $0 3 $2
        $0 4 $2
        $0 5 $2
        exit 0
        ;;
*)
        # 如果第一个参数不是以上几个则打印使用帮助
        echo "Usage:"
        echo "        cs.sh 1|2|3|4|5|hltv|allstart|stop|restart|view"
        exit 3
esac

case "$2" in
start)
        echo "Starting "$NAME" ..."
        screen -ls | grep $NAME | grep tached
        if [ $? -eq 0 ]; then
                echo ERROR: $NAME has already started!
                exit 2
        else
                $CMD
        fi
        ;;
stop)
        echo "Shutdown "$NAME" ..."
        screen -dr $NAME -X quit
        ;;
restart)
        echo "Restart "$NAME" ..."
        screen -dr $NAME -X quit
        $CMD
        ;;
view)
        echo "View "$NAME" console ..."
        screen -dr $NAME
        ;;
*)
        # 如果第二个参数不是start、stop、restart、view则打印使用帮助
        echo "Usage:"
        echo "        cs.sh 1|2|3|4|5|hltv|allstart|stop|restart|view"
        exit 4
esac

exit 0

snooper 发表于 2009-8-26 20:53:27

好的,谢谢大家了!
页: [1]
查看完整版本: 请教一CentOs下双CPU指定内核