РЕШЕНИЕ Установка jimbot на сервер VDS

cerber

Местный инквизитор
Команда форума
Администратор
статьи конечно же есть,но все статьи разные,тут я расскажу на личном примере,что и как,и с обновленной информацией,есть некоторые хосты,которые предоставляют предустановленные java и mysql,тут я расскажу,как всё поставить,если у вас чистый сервер,на котором установлен только apache и так приступаем
у нас имеется сервер,у нас имеется ip и данные доступа,подключаемся к серверу по ssh и начинаем
проверяем работу апача,если он установлен,если нет,то вводим команду
Код:
sudo apt-get install apache2
затем установим php командой
Код:
sudo apt-get install php5
проверим правильность установки и в web каталоге создадим файлик с именем info.php
Код:
sudo touch /var/www/html/info.php
со следующим содержимым
PHP:
<?php phpinfo(); ?>
записываем всё командой
Код:
 sudo nano /var/www/html/info.php
в открывшемся редакторе пишем нашу строчку и сохраняем комбинацией клавиш crtl+O,и выходим ctrl+X,перезапускаем апач командой
Код:
 sudo service apache2 restart
и переходим в браузере по нашему IP нам должно выдать такую страничку
Снимок экрана от 2015-08-04 15:04:08.png
вроде работает,теперь переходим к установке mysql и phpmyadmin
пишем в консоле команду
Код:
sudo apt-get install mysql-server mysql-client
нам предложит ввести пароль от супераользователя,вводим его дважды
на этом установку mysql можно считать оконченой
далее устанавливаем phpmyadmin,вводим команду
Код:
sudo apt-get install phpmyadmin
пакет загружается,и мы видим такую картину
Выделение_001.png
тут нам надо выбрать,какой web сервер использовать,так как у нас apache,то пробелом отмечаем его и жмём ввод....ожидаем окончания установки
далее нас просит создать бд phpmyadmin,соглашаемся
Выделение_002.png
дважды вводим пароль суперпользователя
Выделение_003.png
ожидаем окончания установки и проверяем
Снимок экрана от 2015-08-04 15:12:47.png
как видим,работает,теперь приступаем к установке java
для начала добавим репозиторий
Код:
sudo add-apt-repository ppa:webupd8team/java
обновим список пакетов
Код:
sudo apt-get update
и устанавливаем,предпочтительнее устанавливать более новую версию java
Код:
sudo apt-get install oracle-java8-installer
во время устнавки нам придётся согласиться с лицензионным соглашением
и подождать,пока загрузится и установится весь пакет
вроде всё,теперь подключаемся по ftp к серверу,и загружаем бота в наш каталог
и так,бот загружен,запускаем его,как обычно командой
Код:
 java -jar name*.jar &
символ & нужен для того,что бы бот остался висеть "в трее",и мы могли свободно отключиться от нашего сервера,но что делать,если сервер будет перезагружен???не очень то и удобно,для этого выполним следующее,
возьмём скрипт
Код:
#! /bin/sh
JAVA=/usr/bin/java
JAR_HOME=/home/user/bot
JAR=jImBot.jar
PID=$JAR_HOME/bot.pid
STATE=$JAR_HOME/state
d_start() {
if [ -f $PID ]; then
PID_VALUE=`cat $PID`
if [ ! -z "$PID_VALUE" ]; then
PID_VALUE=`ps ax | grep $PID_VALUE | grep -v grep | awk '{print $1}'`
if [ ! -z "$PID_VALUE" ]; then
exit 1;
fi
fi
fi
PREV_DIR=`pwd`
cd $JAR_HOME
exec $JAVA -Xmx50m -jar $JAR &
echo $! > $PID
cd $PREV_DIR
}
d_stop() {
if [ -f $PID ]; then
PID_VALUE=`cat $PID`
if [ ! -z "$PID_VALUE" ]; then
PID_VALUE=`ps ax | grep $PID_VALUE | grep -v grep | awk '{print $1}'`
if [ ! -z "$PID_VALUE" ]; then
echo "Stop" > $STATE;
WAIT_TIME=0
while [ `ps ax | grep $PID_VALUE | grep -v grep | wc -l` -ne 0 -a "$WAIT_TIME" -lt 20 ]
do
sleep 1
WAIT_TIME=$(expr $WAIT_TIME + 1)
done
if [ `ps ax | grep $PID_VALUE | grep -v grep | wc -l` -ne 0 ]; then
kill -9 $PID_VALUE
fi
fi
fi
rm -f $PID
fi
}
case "$1" in
start)
d_start
;;
stop)
d_stop
;;
restart)
d_stop
d_start
;;
*)
echo "Usage: $0 {start|stop|restart}" >&2
exit 1
;;
esac
exit 0
поместим его в папочку с ботом и назовём
start.sh
Код:
sudo touch /home/user/bot/start.sh
и даём ему права на запуск и исполнение
Код:
chmod +x /home/user/bot/start.sh
теперь добавим наш скрипт в автозагрузку
создадим ещё один файлик и назовём его 1
Код:
sudo touch /home/user/bot/1
со следующим содержимым
PHP:
*/10 * * * * /home/user/bot/srart.sh start >/dev/null 2>&1
* */23 * * * /home/user/bot/start.sh restart >/dev/null 2>&1
в первой строчке указываем время,через которое бот запустится после рестартра сервера,в нашем примере это 10 минут,во второй,время,когда бот будет перезапускаться каждые 23 часа
добавляем данные в автозагрузку
Код:
crontab /home/user/bot/1
проверяем
Код:
crontab -l
как видим,задание появилось,теперь запускаем бота
переходим в дирректорию с ботом и пишем команду
Код:
./start.sh start
должен получится примерно такой лог
Выделение_004.png
далее переходим в админку по IP и настраиваем бота
Снимок экрана от 2015-08-04 15:54:56.png
статью написал cerber специально для форума WORLDJB.RU
на основе статей Дмитрия Пролубниква
1 и 2
 

cerber

Местный инквизитор
Команда форума
Администратор
после выполнения операций в ubuntu 16.04 можем получить кучу ошибок в phpmyadmin,из-за более обновлённого php,устанавливается немного иначедля начала установим утилиту
Код:
sudo apt-get install tasksel
затем ставим сам сервер
Код:
sudo tasksel install lamp-server
для решения проблем выполняем команду
Код:
sudo apt-get install php-mbstring php7.0-mbstring php-gettext
и перезапускаем web сервер
Код:
sudo service apache2 restart
 
Сверху Снизу