搭建hustoj现场环境

所需:就用了台普通电脑作为web以及数据库端,两台数据库实验室提供的服务器拿来做评测机。

根据提示将三台都装上hustoj 

当然我是用之前比赛遗留下来的judge

{

可以用以下来代替

 1 wget https://raw.githubusercontent.com/zhblue/hustoj/master/trunk/install/install-ubuntu16+.sh

2 sudo bash install-ubuntu16+.sh 

}

然后我用的是如下

1 sudo cp -r judge/ /home/    拷贝judge文件夹至home下
2 sudo cd /home/judge/src/install  切换路径
3 sudo bash install-ubuntu16+.sh  执行安装脚本
4 sudo cd /home/judge/src/core  切换路径
5 sudo bash make.sh  重新编译

然后试着在浏览器中输入127.0.0.1,看是否出现主页的画面。

没有的话检查一下是否是nginx 的问题,我当时没有出现画面,然后安装了php memchache扩展,重新启动了下php-fpm

 1 sudo apt-get install php-memcache memcached

2 sudo service php7.0-fpm restart 

然后在本地上就出现了主页的画面。

三台都是如此。(都是现场赛的模式:现场赛的模式只能进行登录,啥都没有不能注册admin,所以需要注册一下)

在作为主数据库的机子上,用 https://github.com/zhblue/hustoj/tree/master/trunk 中的web覆盖一下,然后注册完admin的账号后,再用原来的web覆盖掉 /home/judge/src/web

在各个判题机上, /home/judge/etc judge.conf 中

 

 一般是只读类型,需要sudo 更改一下权限。

然后在数据库服务器上的Mysql添加访问权限。

不过,我是一个一个进行加的数据库的权限,比较保险:

grant all privileges on *.* to root@'(判题机ip)' identified by '(数据库密码)' with grant option;

flush privileges;

exit;

在数据传输的时候

在主服务器上 sudo apt-get install openssh-server

从主机向评测机复制data

scp -r /home/judge/data root@评测机IP:/home/judge

然后重启评测机

sudo pkill -9 judged

sudo judged

如果输入三次密码都不行的话,可能是因为judge里面权限不够,如果更改权限后,还不好使就在 /etc/ssh/sshd_config 中的 把 原来的PermitRootLogin用#注销

改为 PermitRootLogin yes

 

https://www.cnblogs.com/linuxws/p/9307187.html

posted @ 2018-06-14 16:43  ouyang_wsgwz  阅读(463)  评论(0编辑  收藏  举报