Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

2 страниц V   1 2

Ошибки в консоле сервера

Статус пользователя empy
сообщение 23.4.2012, 8:14
Сообщение #1
Стаж: 18 лет

Сообщений: 219
Благодарностей: 10
Полезность: < 0

Linux debian 6

в консоле кс сервера появляется

Цитата
BFD: Warning: /home/empy/csserv/27021/core is truncated: expected core file size >= 118038528, found: 1032192.
Cannot access memory at address 0xb77748e4
Cannot access memory at address 0xbffec5a4
/home/empy/csserv/27021/debug.cmds:3: Error in sourced command file:
Cannot access memory at address 0xb77748e4
email debug.log to linux@valvesoftware.com


после этого сервер перезагружается
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Grape Fruit
сообщение 23.4.2012, 8:27
Сообщение #2


Стаж: 16 лет

Сообщений: 505
Благодарностей: 286
Полезность: 802

У тебя ограничение на размер core файла.

В консоли пропиши
Код
ulimit

и глянь, какой размер выдает. В идеале должно быть unlimited.

На диске вообще место есть? Не думаю, что сервер из-за этого падает. Это мессага по факту ошибки дебаге, который должен срабатывать при падении.

Отредактировал: Grape Fruit, - 23.4.2012, 8:29
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя empy
сообщение 23.4.2012, 8:33
Сообщение #3
Стаж: 18 лет

Сообщений: 219
Благодарностей: 10
Полезность: < 0

Цитата(Grape Fruit @ 23.4.2012, 8:27) *
У тебя ограничение на размер core файла.

В консоли пропиши
Код
ulimit

и глянь, какой размер выдает. В идеале должно быть unlimited.

На диске вообще место есть? Не думаю, что сервер из-за этого падает. Это мессага по факту ошибки дебаге, который должен срабатывать при падении.


unlimited
сервер перезагружается постоянно. но иногда бывает и работает
на диске местам навалом

Щас по русски стало писать вообще:
Цитата
BFD: Предупреждение: /home/empy/csserv/27021/core усечён: ожидался размер ядра файла >= 118038528, найдено: 1032192.
Cannot access memory at address 0xb77748e4
Cannot access memory at address 0xbffec5a4
/home/empy/csserv/27021/debug.cmds:3: Error in sourced command file:
Cannot access memory at address 0xb77748e4
email debug.log to linux@valvesoftware.com
Пнд Апр 23 10:35:57 MSK 2012: Server restart in 10 seconds


Отредактировал: empy, - 23.4.2012, 8:37
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Grape Fruit
сообщение 23.4.2012, 9:01
Сообщение #4


Стаж: 16 лет

Сообщений: 505
Благодарностей: 286
Полезность: 802

empy,
Процессор AMD?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя empy
сообщение 23.4.2012, 12:07
Сообщение #5
Стаж: 18 лет

Сообщений: 219
Благодарностей: 10
Полезность: < 0

Цитата(Grape Fruit @ 23.4.2012, 9:01) *
empy,
Процессор AMD?


Intel® Xeon™ CPU 2.40GHz
двухпроцессорный

----------

на сколько я понял у меня сервер использует hlds_amd для запуска сервера

Отредактировал: empy, - 23.4.2012, 12:27
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя empy
сообщение 23.4.2012, 12:46
Сообщение #6
Стаж: 18 лет

Сообщений: 219
Благодарностей: 10
Полезность: < 0

порылся в системе и нарыл,
кс сервер использует hlds_amd для запуска сервера, хотя процессор xeon
правда он видимо старенький т.к. на него не удалось установить x64 систему
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Grape Fruit
сообщение 23.4.2012, 14:46
Сообщение #7


Стаж: 16 лет

Сообщений: 505
Благодарностей: 286
Полезность: 802

empy,
Это ты как определил? Через top показывает hlds_amd, вместо hlds_i686?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя empy
сообщение 23.4.2012, 14:56
Сообщение #8
Стаж: 18 лет

Сообщений: 219
Благодарностей: 10
Полезность: < 0

Цитата(Grape Fruit @ 23.4.2012, 14:46) *
empy,
Это ты как определил? Через top показывает hlds_amd, вместо hlds_i686?


через команду lsof -i:27021

у меня два сервера
на том котором все супер работает эта команда выдала в строке hlds_i686_27021
а на том где щас эта ошибка показывает hlds_amd
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Grape Fruit
сообщение 23.4.2012, 15:11
Сообщение #9


Стаж: 16 лет

Сообщений: 505
Благодарностей: 286
Полезность: 802

empy,
Через скрипт запускаешь? Попробуй напрямую запустить через ./hlds_run и глянь, что и как. Самый простой вариант - сохранить cstrike и откопировать от рабочего сервера всю платформу.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя empy
сообщение 23.4.2012, 15:27
Сообщение #10
Стаж: 18 лет

Сообщений: 219
Благодарностей: 10
Полезность: < 0

поотключал разные плагины по очереди
после отключения amxbans все заработало
но какже быть без бан листа

и очень интересует, почему сервер использует hlds_amd

Отредактировал: empy, - 23.4.2012, 15:28
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Grape Fruit
сообщение 23.4.2012, 15:51
Сообщение #11


Стаж: 16 лет

Сообщений: 505
Благодарностей: 286
Полезность: 802

empy,
Наверняка что-нибудь не откопировал.

Или же какие-то настройки у двух серверов пересекаются.

Попробуй первый сервер офнуть и запустить второй. Проверь - i или amd будет. Проверь скрипты запуска. Или сделай, как я сказал: откопируй первый сервер, закинув в него cstrike от второго.

*первый, который у тебя рабочий.
**второй amd
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя empy
сообщение 23.4.2012, 16:06
Сообщение #12
Стаж: 18 лет

Сообщений: 219
Благодарностей: 10
Полезность: < 0

на второй машине щас стоит всего один сервер
скопирывал с первой машины сервер и запустил на второй с тем-же скриптом запуска что и на первом
ошибка все таже, пока не отключишь амхбан
а сервер2 так и использует hlds_amd
различие а бан листе на двух магинах, в том что на первой где все работает бан лист локальный, а на второй он подключается через инет к первой машине...
возможно из-за этого и выдавало ошибку в консоле, буду ставить банлист на локальную машину

но все-же до сих пор интересует, почему сервер использует hlds_amd и самое главное почему он работает на hlds_amd
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя c0rax
сообщение 23.4.2012, 16:22
Сообщение #13


Стаж: 18 лет

Сообщений: 1077
Благодарностей: 530
Полезность: 884

Код
-binary hlds_i686
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя empy
сообщение 23.4.2012, 19:39
Сообщение #14
Стаж: 18 лет

Сообщений: 219
Благодарностей: 10
Полезность: < 0

Цитата(c0rax @ 23.4.2012, 16:22) *
Код
-binary hlds_i686


если добавить в строку запуска то выдает

Цитата
root@server2:~# start_27021 start
[xx.xx.xx.xx:27021] Starting war3ft server
taskset (util-linux-ng 2.17.2)
usage: taskset [options] [mask | cpu-list] [pid | cmd [args...]]
set or get the affinity of a process

-p, --pid operate on existing given pid
-c, --cpu-list display and specify cpus in list format
-h, --help display this help
-V, --version output version information

The default behavior is to run a new command:
taskset 03 sshd -b 1024
You can retrieve the mask of an existing task:
taskset -p 700
Or set it:
taskset -p 03 700
List format uses a comma-separated list instead of a mask:
taskset -pc 0,3,7-11 700
Ranges in list format can take a stride argument:
e.g. 0-31:2 is equivalent to mask 0x55555555


и сервер не запускается
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Grape Fruit
сообщение 23.4.2012, 21:56
Сообщение #15


Стаж: 16 лет

Сообщений: 505
Благодарностей: 286
Полезность: 802

Покажите свой скрипт запуска.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя empy
сообщение 23.4.2012, 22:31
Сообщение #16
Стаж: 18 лет

Сообщений: 219
Благодарностей: 10
Полезность: < 0

скрипт


#!/bin/bash
#
# authors: LeXiKoN & Puma http://eqline.ru & https://c-s.net.ua
# version: 1.09
# Source function library.
#. /lib/lsb/init-functions

VERSION="1.09"

#####################################################
# Configuration
#####################################################

server_name="war3ft server"
screen_name="serv21"
use_user="root"
path="/home/empy/csserv/27021"
hlds_ip="x.x.x.x"
hlds_port="27021"
hlds_players="18"
hlds_map="de_dust2_2x2_hama"
hlds_options1="-pingboost 3 -debug"
condebug="1"
priority="-10"
usecore="0,1,2,3"
allcore="0,1,2,3"
hlds_pid="hlds27021.pid"
screen_pid="$screen_name-screen.pid"
clear_logs="0"
clear_cache="1"
start_cmd="/usr/bin/screen -AmdS $screen_name"
checker_cmd="$path/quakestat"
hlds_pid_num=`cat $path/$hlds_pid`

#####################################################
# End of configuration
#####################################################

succes="[ ОК ]"
failed="[ FAIL ]"
status_on="[ Online ]"
status_off="[ Offline ]"
title="[$hlds_ip:$hlds_port]"

if [ $condebug = 1 ]; then
hlds_options2="-condebug"
fi

if [ ! -x $path/hlds_27021 ]; then
printf "$title Check run privileges of hlds_27021 "
exit 1
fi

clear_logs() {
if [ $use_user == root ]; then
rm -f $path/debug.log
rm -f $path/cstrike/qconsole.log
rm -f $path/cstrike/logs/*.log
rm -fr $path/cstrike/addons/amxmodx/logs/*.log
else
sudo -u $use_user rm -f $path/debug.log
sudo -u $use_user rm -f $path/cstrike/qconsole.log
sudo -u $use_user rm -f $path/cstrike/logs/*.log
sudo -u $use_user rm -fr $path/cstrike/addons/amxmodx/logs/*.log
fi
printf "$title Log Cleared\n"
}

prestart_check() {
if [ -f $path/$hlds_pid ] && [ -f $path/$screen_pid ]; then
ch=`ps -ef | grep SCREEN | grep $hlds_port`
if [ -n "$ch" ]; then
printf "$title $server_name already its working (!!)\n"
exit 1
else
cd $path
rm -rf $path/$screen_pid
rm -rf $path/$hlds_pid
fi
fi
}

start() {
prestart_check
cd $path
if [ $clear_logs == 1 ]; then
clear_logs
fi
if [ $use_user == root ]; then
if [ $clear_cache == 1 ]; then
echo 3 > /proc/sys/vm/drop_caches
fi
$start_cmd ./hlds_27021 -game cstrike +maxplayers $hlds_players +map $hlds_map +ip $hlds_ip +port $hlds_port $hlds_options1 $hlds_options2 -pidfile $hlds_pid
ps -ef | grep SCREEN | grep "$hlds_port" | grep -v grep | awk '{ print $2}' > $path/$screen_pid
printf "$title Starting $server_name\n"
sleep 1
hlds_pid_num=`cat $path/$hlds_pid`
taskset -pc $usecore $hlds_pid_num
renice -n $priority -p $hlds_pid_num
else
$start_cmd sudo -u $use_user ./hlds_27021 -game cstrike +maxplayers $hlds_players +map $hlds_map +ip $hlds_ip +port $hlds_port $hlds_options1 $hlds_options2 -pidfile $hlds_pid
ps -ef | grep SCREEN | grep "$hlds_port" | grep -v grep | awk '{ print $2}' > $path/$screen_pid
printf "$title Starting $server_name\n"
sleep 1
hlds_pid_num=`cat $path/$hlds_pid`
sudo taskset -pc $usecore $hlds_pid_num
sudo renice -n $priority -p $hlds_pid_num
fi
}

stop() {
if [ $use_user == root ]; then
if [ -f $path/$hlds_pid ] && [ -f $path/$screen_pid ]; then
kill `cat $path/$screen_pid`
sleep 1
rm -rf $path/$screen_pid
rm -rf $path/$hlds_pid
printf "$title Stopping of $server_name\n"
else
printf "$title Cannot stop $server_name, server not started\n"
fi
else
if [ -f $path/$hlds_pid ] && [ -f $path/$screen_pid ]; then
sudo -u $use_user kill `cat $path/$screen_pid`
sleep 1
sudo -u $use_user rm -rf $path/$screen_pid
sudo -u $use_user rm -rf $path/$hlds_pid
printf "$title Stopping of $server_name\n"
else
printf "$title Cannot stop $server_name, server not started\n"
fi
fi
}

status() {
printf "$title Status of $server_name\n\n"
if [ $use_user == root ]; then
$checker_cmd -retry 10 -interval 2 -a2s $hlds_ip:$hlds_port
else
sudo -u $use_user $checker_cmd -retry 10 -interval 2 -a2s $hlds_ip:$hlds_port
fi
}

console() {
if [ -f $path/$screen_pid ]; then
printf "$title Connecting to $server_name\n"
printf " For exit from console press Ctrl+A,D\n"
printf " Dont press Ctrl+C\n"
printf " Please wait...\n"
sleep 1
if [ $use_user == root ]; then
/usr/bin/screen -wipe
/usr/bin/screen -d `cat $path/$screen_pid`
/usr/bin/screen -R `cat $path/$screen_pid`
else
sudo -u $use_user /usr/bin/screen -wipe
sudo -u $use_user /usr/bin/screen -d `cat $path/$screen_pid`
sudo -u $use_user /usr/bin/screen -R `cat $path/$screen_pid`
fi
else
printf "$title Cannot connect to $server_name, server not running"
fi
}

checker() {
checktag="[HLDS-Checker]"
checkdown=`$checker_cmd -retry 10 -interval 2 -a2s $hlds_ip:$hlds_port | grep DOWN`
checknoresp=`$checker_cmd -retry 10 -interval 2 -a2s $hlds_ip:$hlds_port | grep response`
checkup=`$checker_cmd -retry 10 -interval 2 -a2s $hlds_ip:$hlds_port | grep cstrike`
hlds_pid_num=`cat $path/$hlds_pid`
check_allcore=`sudo taskset -pc "$hlds_pid_num" | grep $allcore`
check_usecore=`sudo taskset -pc $hlds_pid_num | grep $usecore`
time=`date +%X`
date=`date +%D`
if [ -n "$checkdown" ]; then
printf "$checktag $server_name *[DOWN]*\n"
printf "[$time - $date] *[DOWN]* $checkdown\n" >> $path/checker.log
stop
sleep 1
start
sleep 1
echo ----------------ATTENTION---------------- >> $path/checker.log
printf "StartUP $server_name:" >> checker.log
ch=`ps -ef | grep SCREEN | grep $screen_name`
if [ -n "$ch" ]; then
printf " *[OK]* \n" >> checker.log
else
printf " *[FAILED]* \n" >> checker.log
fi
echo ----------------------------------------- >> $path/checker.log
exit 1
fi
if [ -n "$checknoresp" ]; then
printf "$checktag $server_name *[NO RESPONSE]*\n"
printf "[$time - $date] *[NO RESPONSE]* $checknoresp\n" >> $path/checker.log
stop
sleep 1
start
sleep 1
echo ----------------ATTENTION---------------- >> $path/checker.log
printf "StartUP $server_name:" >> checker.log
ch=`ps -ef | grep SCREEN | grep $screen_name`
if [ -n "$ch" ]; then
printf " *[OK]* \n" >> checker.log
else
printf " *[FAILED]* \n" >> checker.log
fi
echo ----------------------------------------- >> $path/checker.log
exit 1
fi
if [ -n "$checkup" ]; then
printf "$checktag $server_name *[OK]*\n"
printf "[$time - $date] *[OK]* $checkup\n" >> $path/checker.log
fi
if [ $usecore == $allcore ]; then
if [ $use_user == root ]; then
renice -n $priority -p $hlds_pid_num
else
sudo renice -n $priority -p $hlds_pid_num
fi
exit 1
else
if [ -n "$check_allcore" ]; then
printf "$checktag *[BAD PRIORITY]*\n"
if [ $use_user == root ]; then
taskset -pc $usecore $hlds_pid_num
renice -n $priority -p $hlds_pid_num
else
sudo taskset -pc $usecore $hlds_pid_num
sudo renice -n $priority -p $hlds_pid_num
fi
printf "[$time - $date] *[PRIORITY & AFFINITY RESETED]*\n" >> $path/checker.log
exit 1
fi
if [ -n "$check_usecore" ]; then
printf "$checktag *[GOOD PRIORITY]*\n"
exit 1
fi
fi
}

case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
sleep 2
start
;;
status)
status
;;
console)
console
;;
checker)
checker
;;
*)
echo "How to use: $0 {start|stop|restart|status|console|checker}"
start
exit 1
esac





скрипт брал из этой темы https://c-s.net.ua/forum/topic27162.html
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя empy
сообщение 24.4.2012, 8:22
Сообщение #17
Стаж: 18 лет

Сообщений: 219
Благодарностей: 10
Полезность: < 0

сервер продолжает падать с той же ошибкой, но после отключения бан листа это происходит реже
подскажите последнюю стабильную версию линукс сервер

Отредактировал: empy, - 24.4.2012, 21:52
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя empy
сообщение 25.4.2012, 9:40
Сообщение #18
Стаж: 18 лет

Сообщений: 219
Благодарностей: 10
Полезность: < 0

ответы закончились? проблема все еще не решена.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Legenda
сообщение 25.4.2012, 12:44
Сообщение #19


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

подобные ошибки бывает когда сервер не может получить каких-либо данных

например бывает смена карта на не рабочею, т.е. на карту для которой отсутствует какая-либо модель
что приводит к падению сервера, при попытке дебага и будет выдавать
либо просто при запуске сервера с плагинами, которые не могут прикешировать нужную модель за ее отсутствием.
пример:
Код
FATAL ERROR (shutting down): Mod_NumForName: models/parachute.mdl not found
BFD: Warning: core.25169 is truncated: expected core file size >= 78348288, found: 1077248.
Cannot access memory at address 0xf77bf8e4
Cannot access memory at address 0xffa717bc
/home/data/srv/srv31454/debug.cmds:3: Error in sourced command file:
Cannot access memory at address 0xf77bf8e4
email debug.log to linux@valvesoftware.com


Цитата
FATAL ERROR (shutting down): Mod_NumForName: models/parachute.mdl not found
- сама ошибка
все что ниже ее - дебаг уже.
он в принципе ни чего не говорит

так что стоит сначала отключить полностью amxmodx
оставить только dproto и метамод
проверить работу всех карт присутствующих на сервере

только потом включить amxmodx
и снова проверить работоспособность всех карт

Отредактировал: Legenda, - 25.4.2012, 12:46
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя empy
сообщение 25.4.2012, 20:15
Сообщение #20
Стаж: 18 лет

Сообщений: 219
Благодарностей: 10
Полезность: < 0

спасибо за ответ!

еще интересует ответ на вопрос: Почему у меня Intel Xeon процессор, а скрипт использует hlds_amd ?
заранее спасибо.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: