четверг, 12 ноября 2015 г.

XDEBUG configuration

xdebug.remote_enable=on
xdebug.remote_log=/srv/log/xdebug.log
xdebug.remote_host=127.0.0.1
xdebug.remote_handler=dbgp
xdebug.remote_port=9000

xdebug.max_nesting_level=250

xdebug.profiler_output_dir = /srv/log/profiler
xdebug.profiler_output_name = %R.log
xdebug.profiler_enable_trigger = 1

xdebug.trace_output_dir = /srv/log/trace
xdebug.trace_output_name = %R.log
xdebug.trace_enable_trigger = 1
xdebug.trace_format = 1

xdebug.var_display_max_data = 65536

суббота, 7 ноября 2015 г.

Steam linux server



Выкачиваем и распаковываем инсталлер

$ wget http://media.steampowered.com/installer/steamcmd_linux.tar.gz;
$ mkdir steam;
$ cd steam;
$ tar xvzf ../steamcmd_linux.tar.gz;


Если необходимо устанавливаем необходимые пакеты

# yum install glibc.i686 libgcc.i686

Запускаем steam, выполняем установку сервера (id можно подсмотреть тут)

$ ./steamcmd.sh
> login anonymous
> force_install_dir /srv/game
> app_update 232370 validate — hl2dm
> app_update 343050 validate — dst
> quit




Немного настройки

$ cd ./steamapps/common/Half-Life\ 2\ Deathmatch\ Dedicated\ Server/
$ vi hl2mp/cfg/server.cfg




hostname "RedPoint"
sv_downloadurl "http://host.name/half-life2"
mp_timelimit 20
mp_flashlight 1
mp_friendlyfire 1
sv_alltalk 1
sm_enablekillprotection 1




Попробуем запустить

./srcds_run -console -game hl2mp -port 27015 +maxplayers 8 +exec server.cfg +map dm_overwatch




Ставим админку

Выкачиваем MetaMod, SourceMod

cd hl2mp;
tar xvzf ~/Downloads/sourcemod-1.6.2-linux.tar.gz;
tar xvzf ~/Downloads/mmsource-1.10.3-linux.tar.gz;




Даем себе права. Там есть куча примеров, я выбрал по Steam_ID

vi addons/sourcemod/configs/admins_simple.ini


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

$ cd hl2mp/maps/
$ mkdir compressed
$ bzip2 *.bsp -k --bes




После директорию можно привязать к символьной ссылкой к хосту, и тянуть сжатые файлы по http

cd /srv/www/host.name/public
ln -s /home/gedweb/hl2/hl2mp/maps/compressed maps

четверг, 5 ноября 2015 г.

Установка lighttp + fpm + mariadb

Установить

yum install lighttpd-fastcgi lighttpd php-fpm mariadb mariadb-server

Создать пользователя и группу host:host

useradd host
usermod -a -G host your_user

Создать директорию хоста и директорию fpm
#mkdir /srv/php-fpm
#mkdir /srv/www
#chmod -R 775 /srv
#chown -R host:host /srv
#chown -R host:host /var/log/lighttpd/
#chown -R host:host /var/lib/php/session

Прописать пользователя и группу в конфигах lighttp, а так же поправить пару параметров

# vi /etc/lighttpd/lighttpd.conf

server.username = "host"
server.groupname = "host"
var.vhosts_dir = "/srv/www"
server.use-ipv6 = "disable"
include_shell "cat /etc/lighttpd/vhosts.d/*.conf"
server.max-fds = 2048
server.max-connections = 1024

Изменяем права лайти на логи:

chown -R host:host /var/log/lighttpd/

Аналогично для php-fpm

# vi /etc/php-fpm.d/www.conf

user = host
group = host

listen = /srv/php-fpm/www.sock

listen.owner = host
listen.group = host
listen.mode = 0660
;listen.acl_users закоментировать

Начиная с PHP 5.6.5 возможно указать несколько пользователей / групп через запятую, что отменяет последние 2 опции выше.

listen.acl_users = host
listen.acl_groups = host

Настраиваем fastcgi в лайти

# vi /etc/lighttpd/conf.d/fastcgi.conf 

fastcgi.server = ( ".php" =>
    ((
        "socket" => "/srv/php-fpm/www.sock",
        "broken-scriptfilename" => "enable",
    ))
)

Включаем необходимые модули и конфигурации

# vi /etc/lighttpd/modules.conf

server.modules = (
  "mod_rewrite",
  "mod_fastcgi",
)

include "conf.d/fastcgi.conf"

Самую малость в php.ini

# vi /etc/php.ini

cgi.fix_pathinfo=0


Ну и создаем виртуальные хосты

# vi /etc/lighttpd/vhosts.d/vhosts.conf

$HTTP["host"] == "gedweb.name" {
    server.name = "blog_prod"
    server.document-root = vhosts_dir + "/gedweb.name/public"
    url.rewrite-if-not-file = (
        "^(.*)$" => "index.php/$1"
    )
}

Для включения CORS в Lighttpd
Раскомментировать mod_setenv в секции modules и добавить строчку в секцию виртуального хоста

setenv.add-response-header = ( "Access-Control-Allow-Origin" => "*" )

Создадим и выберем директорию хранения для MariaDB (MySQL)

mkdir /srv/mariadb

Копируем начальную конфигурацию

# cp /usr/share/mariadb/my-medium.cnf /etc/my.cnf.d/mariadb-server.cnf
# vi /etc/my.cnf.d/mariadb-server.cnf


[mysqld]
thread_cache_size = 1 ; develop mode
datadir = /srv/mariadb

Запускаем

# mysql_install_db
# chown -R mysql:host /srv/mariadb
# chown -R mysql:host /var/log/mariadb

# systemctl start mariadb
# systemctl enable mariadb

# systemctl start lighttpd
# systemctl enable lighttpd

# systemctl start php-fpm
# systemctl enable php-fpm

$ mysql_secure_installation

Даём публичный доступ к 80 порту

# firewall-cmd --get-default-zone
# firewall-cmd --zone=public --add-service=http --permanent
# firewall-cmd --reload
# firewall-cmd --zone=public --list-all

среда, 4 ноября 2015 г.

Nvidia ABI 20 error

Yesterday i upgrade my Fedora 22 to 23 and catch problem with nvidia xorg driver:

This server has a video driver ABI version of 20.0 that this
driver does not officially support.

solve by adding in /etc/X11/xorg.conf

Section "ServerFlags"
 Option "IgnoreABI" "1"
EndSection