Jump to content

Сборка сервера на Centos 7


Evolutin

Recommended Posts


  • Group:  Members
  • Topic Count:  5
  • Topics Per Day:  0.00
  • Content Count:  18
  • Reputation:   0
  • Joined:  03/09/16
  • Last Seen:  

Подскажите пожалуйста. Раньше работал с виндой и особо проблем никаких не было. Но решил перейти на centos и столкнулся с проблемой. При компиляции выскакивает очень много предупреждений такого плана:

Spoiler

../../3rdparty/yaml-cpp/include/yaml-cpp/node/detail/node.h: В функции-члене «void YAML::detail::node::set_style(YAML::EmitterStyle::value)»:
../../3rdparty/yaml-cpp/include/yaml-cpp/node/detail/node.h:90:45: предупреждение: декларация «style» перекрывает элемент класса, на который указывает 'this' [-Wshadow]
   void set_style(EmitterStyle::value style) {


Серв запускается но при попытке конекта крашится. Ставлю на centos mini.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  30
  • Topics Per Day:  0.01
  • Content Count:  149
  • Reputation:   35
  • Joined:  04/01/13
  • Last Seen:  

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  5
  • Topics Per Day:  0.00
  • Content Count:  18
  • Reputation:   0
  • Joined:  03/09/16
  • Last Seen:  

Я по этой инструкции и ставлю, с созданным файлом fedora.repo вообще ничего не могу установить. С этим файлом при команде

yum install gcc-c++ --enable-repo=fedora23 получаю в ответ следующее:

Spoiler

 

[root@localhost ~]# yum install gcc-c++ --enable-repo=fedora23
Загружены модули: fastestmirror
Usage: yum [options] COMMAND

List of Commands:

check          Проверка проблем в базе данных RPM
check-update   Проверка доступных обновлений пакетов
clean          Удаление кэшированных данных
deplist        Отображение зависимостей пакета
distribution-synchronization Обновить установленные пакеты до новейших доступных версий
downgrade      откат к предыдущей версии пакета
erase          Удаление пакета(ов) из системы
fs             Acts on the filesystem data of the host, mainly for removing docs/lanuages for minimal hosts.
fssnapshot     Creates filesystem snapshots, or lists/deletes current snapshots.
groups         Отображать и использовать данные о коллекциях
help           Отобразить подсказку к использованию
history        Отобразить (или использовать) журнал операций
info           Отобразить информацию о пакете или о коллекции пакетов
install        Установка пакета(ов) в систему
list           Вывести список пакетов или коллекций пакетов
load-transaction загрузить сохранённый сценарий из файла
makecache      Создание кэша метаданных
provides       Найти пакет по заданному значению
reinstall      переустановка пакета
repo-pkgs      Treat a repo. as a group of packages, so we can install/remove all of them
repolist       Отобразить сконфигурированные репозитории ПО
search         Поиск информации о пакете по заданной строке
shell          Запуск интерактивной командной оболочки Yum
swap           Simple way to swap packages, instead of using shell
update         Обновление пакета(ов) в системе
update-minimal Works like upgrade, but goes to the 'newest' package match which fixes a problem that affects your system
updateinfo     Acts on repository update information
upgrade        Обновить пакеты, учитывая недействительные
version        Отображает версию для вашей архитектуры и/или доступные репозитории.


Ошибка команды: no such option: --enable-repo

 


вот не пойму что ему надо, система чистая и обновленная до последней версии. До этого удалось установить без файла fedora.repo и ключа --enable-repo=fedora23 но это вызвало кучу предупреждений.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  3
  • Topics Per Day:  0.00
  • Content Count:  17
  • Reputation:   0
  • Joined:  10/12/14
  • Last Seen:  

Установи:

yum groupinstall "Development tools" -y

yum install gcc pcre-devel zlib-devel -y

yum install cmake mysql-community-devel -y

 

После чего компилируй!

 

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  5
  • Topics Per Day:  0.00
  • Content Count:  18
  • Reputation:   0
  • Joined:  03/09/16
  • Last Seen:  

Все установил, но все равно ничего не выходит. Так же куча предупреждений. Мб чего-то еще не хватает в centos... Понять бы почему не проходит установка с --enable-repo=fedora23. 

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  3
  • Topics Per Day:  0.00
  • Content Count:  17
  • Reputation:   0
  • Joined:  10/12/14
  • Last Seen:  

Вам не нужно устанавливать репозиторий от федоры, это очень и очень плохая идея. 

Используйте стандартные репозитории, epel (yum install epel-release -y) и репозиторий для MySQL (rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm).

 

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  5
  • Topics Per Day:  0.00
  • Content Count:  18
  • Reputation:   0
  • Joined:  03/09/16
  • Last Seen:  

Да я уже понял. Даже нашел относительно не старый гайд. Но все равно не получается... 

Spoiler


//============================
1)Preliminary Note
//============================
VPS name is: (given VPS name) or IP// provided by the host site where you bought it ex.vps12345.vps.ovh.ca by ovh site 

Username:  root
Password:  (given password)//also provided by the host site//note:in putty most of the passwords won't appear and your actually typing your password
                        //to copy highlight the word copy and by pasting it on putty.exe just right-click it
                        //do it per line in copying and pasting in using putty.exe
yum update
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
yum -y install epel-release
//============================
2)Installing MySQL / MariaDB
//============================
yum -y install mariadb-server mariadb
systemctl start mariadb.service
systemctl enable mariadb.service

mysql_secure_installation
/*
Enter current password for root (enter for none): <--ENTER
Set root password? [Y/n] <--Enter
New password: <--yourmariadbpassword            (password A)
Re-enter new password: <--yourmariadbpassword    (password A)
Remove anonymous users? [Y/n] <--ENTER
Disallow root login remotely? [Y/n] <--ENTER
Remove test database and access to it? [Y/n] <--ENTER
Reload privilege tables now? [Y/n] <--ENTER
*/
//============================
3)Installing Apache2
//============================
yum -y install httpd
systemctl start httpd.service
systemctl enable httpd.service
//============================
4)Installing PHP5
//============================
yum -y install php
systemctl restart httpd.service
//============================
5)Testing PHP5 / Getting Details About Your PHP5 Installation
//============================
/*
put the the given info.php using winscp in /var/www/html/
*/
systemctl restart httpd.service
//============================
6)Getting MySQL Support In PHP5
//============================
yum search php
yum -y install php-mysql
yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel
systemctl restart httpd.service
//============================
7)phpMyAdmin installation
//============================
yum install phpMyAdmin
///Yes to all configuration
/*
put the given phpMyAdmin.conf using winscp in /etc/httpd/conf.d/
*/
///change the authentication in phpMyAdmin from cookie to http:
/// /etc/phpMyAdmin/config.inc.php
/// $cfg['Servers'][$i]['auth_type']     = 'http';    // Authentication method (config, http or cookie based)?
systemctl restart  httpd.service
/*
Afterwards, you can access phpMyAdmin under http://(your-VPS-IP-address)/phpmyadmin/
*/
//============================
8)Installing Compiler and Git Support
//============================
yum groupinstall "Development tools"
///Yes in config
yum install gcc make mysql mysql-devel mysql-server pcre-devel zlib-devel
///Yes in config
yum -y install git

//============================
9)Create a non-root Linux user
//============================
useradd --create-home --shell /bin/bash (custom username)

passwd (custom username)

///then it will ask to type your new password for your custom username (password B)
//============================
10)Configure MySQL
//============================
mysql --user=root -p
//enter your password:<--yourmariadbpassword (password A)
//============================
11)Create SQL database for rAthena
//============================
CREATE DATABASE customdatabase;/// i prefer putting logs and and main in one database since i am configuring my logs also through script
//============================
12)Setup a MySQL user for rAthena
//============================
CREATE USER '(custom username)'@'localhost' IDENTIFIED BY '(custom password)'; (password A)
GRANT ALL ON customdatabase.* TO '(custom username)'@'localhost';
//============================

close your putty.exe

//============================
13)Securing and adjusting your Git files
//============================
///before we proceed make sure you have github and gitlab account(must have the same email on both git sites)
first: fork the rathena git on github
second: import the rathena git into gitlab
third: clone your rathena git into github application
edit the following:
.gitignore
enable import folders


//============================
14)making establishment to VPS,MySQL and to Configured Server  
//============================
copy and change import-tmpl folder to import both conf and db


conf/import/inter_conf.txt
/*
login_server_id: (custom username) //that was set on mysql user for rathena
login_server_pw: (custom password) //that was set on mysql user for rathena
login_server_db: (custom database) //the one the you created on Create SQL database for rAthena
//====================
ipban_db_id: (custom username)
ipban_db_pw: (custom password)
ipban_db_db: (custom database)
//====================
char_server_id: (custom username)
char_server_pw: (custom password)
char_server_db: (custom database)
//====================
map_server_id: (custom username)
map_server_pw: (custom password)
map_server_db: (custom database)
//====================
log_db_id: (custom username)
log_db_pw: (custom password)
log_db_db: (custom database)


//====================
item_db_re_db: item_db_re
item_db2_db: item_db2_re
//====================
mob_db_re_db: mob_db_re             <---- on this part if your using renewal you need to copy this part
mob_db2_db: mob_db2_re
//====================
mob_skill_db_re_db: mob_skill_db_re
mob_skill_db2_db: mob_skill_db2_re
*/
conf/import/char_conf.txt
/*
userid: (custom username)// for connecting mysql,char,log,and map server
passwd: (custom password) (password A)
//====================
server_name: (your server name)
wisp_server_name: ragnarok
login_ip: (your VPS ip)
char_ip: (your VPS ip)
//====================// for renewal
start_point: iz_int,97,90
start_point_doram: iz_int,97,90// i set the doram to academy starting point cause the starting point of doram is not done yet
//====================
char_name_letters: abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'space' <--------------for security purpose i dont require you to use other symbols otherwise you have different language
char_del_delay: 0
char_del_option: 1                                                                             
char_del_restriction: 0
//====================
pincode_enabled: no// meh too much
*/
conf/import/map_conf.txt
/*
userid: (custom username)
passwd: (custom password) (password A)
//====================
char_ip: (your VPS ip)
map_ip: (your VPS ip)
*/
///reason why im requiring you to use import folder is to have a fix and clean and no problem in merging updates from rathena

//set your custom packet in db folder
db/import/packet_db.txt
http://www.robrowser.com/prototype/packet-keys/ //i wont teach you on implementing them on client cause it is not my concern :P
//make sure your packets are qualified
/*
packet_db_ver: 54// im using 2015-10-29 if you want the stable one and pre-renewal use 2013-08-07 and change the packet_db_ver to 45
packet_keys_use: 0x(custom packet1),0x(custom packet2),0x(custom packet3)
*/
src/common/mmo.h
/*
// see conf/battle/client.conf for other version

#ifndef PACKETVER
    #define PACKETVER 20151029 //or 20130807 if pre-renewal
*/


sql-files/main.sql

/*
goto to the bottom of table login and top of table mail where you can find the 's1' and 'p1'
and change it into


-- added standard accounts for servers, VERY INSECURE!!!
-- inserted into the table called login which is above

INSERT INTO `login` (`account_id`, `userid`, `user_pass`, `sex`, `email`) VALUES ('1', '(custom username)', '(custom password)', 'S','[email protected]');(password A)
INSERT INTO `login` (`account_id`, `userid`, `user_pass`, `sex`, `email`, `group_id`) VALUES ('2000000', '(gm user)', '(gm password)', 'F','[email protected]', '99');//your GM user

*/

then other files you want to adjust on conf db  or source etc etc...

//============================
14)making preparation for exporting
//============================
after changing them go to github application 'make a commit file to master' //note make sure you check all stuff you want to export to gitlab sites
make some history commits titles like "costumized and secured the server" then define the changes on your rathena server
//============================
15)exporting and updating rathena git file on gitlab
//============================
after making a commit file press the 'sync' on upper right corner of github application
//============================

/*
reopen your putty.exe
*/ 
//============================
16)Accessing your non-root linux
//============================
VPS name is: (given vps name) or IP
Username:  (your non-root linux user)
Password: (your password of non-root linux user)
//============================
17)importing your costumized rathena git into server
//============================
git clone (gitlab link of imported rathena git)~/rAthena
/*
it will ask for your username and password of your gitlab account
*/
//============================
18)importing sql-files into mySQL using putty.exe
//============================
cd rAthena/sql-files/


//for renewal
mysql --user=root -p (customdatabase) < main.sql
//enter your password:<--yourmariadbpassword (password A)
mysql --user=root -p (customdatabase) < item_cash_db.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < item_cash_db2.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < item_db_re.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < item_db2_re.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < mob_db_re.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < mob_db2_re.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < mob_skill_db_re.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < mob_skill_db2_re.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < roulette_default_data.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < logs.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < custom.sql   //it is just an option if you have custom sql file made
//enter your password:<--yourmariadbpassword

//for pre-renewal
mysql --user=root -p (customdatabase) < main.sql
//enter your password:<--yourmariadbpassword (password A)
mysql --user=root -p (customdatabase) < item_cash_db.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < item_cash_db2.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < item_db.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < item_db2.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < mob_db.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < mob_db2.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < mob_skill_db.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < mob_skill_db2.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < roulette_default_data.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < logs.sql
//enter your password:<--yourmariadbpassword
mysql --user=root -p (customdatabase) < custom.sql   //it is just an option if you have custom sql file made
//enter your password:<--yourmariadbpassword


//============================
19)return and compile the server
//============================
cd
cd rAthena
./configure
make sql
make server

//============================
20)Start your server
//============================
chmod a+x athena-start
//To Start

./athena-start start

//To Stop
./athena-start stop

//To Restart
./athena-start restart
//============================
update git 
//============================
if you want to make some changes just go to the your located gitlab file on your local folder where you cloned it edit it
after editing it repeat 14,15,16 step then

cd rAthena
./athena-start stop
//if you made some changes on source file do
make clean 
//then
git pull
//it will ask for your gitlab user and passwd
//again if you made some changes on source file do
make server
//then
./athena-start start
//============================

enjoy and have a nice day :3
by: hanashi
source:
https://github.com/rathena/rathena/wiki/Install-on-Centos
https://www.howtoforge.com/apache_php_mysql_on_centos_7_lamp
https://github.com/rathena/rathena/wiki/Installation_(Debian)_with_MariaDB

У меня все получается кроме компиляции. Даже запущенный на винде сервер работает с базой на центе. 

Edited by Evolutin
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...