所需:就用了台普通电脑做为web以及数据库端,两台数据库实验室提供的服务器拿来作评测机。php
根据提示将三台都装上hustoj html
固然我是用以前比赛遗留下来的judgelinux
{nginx
能够用如下来代替git
1 wget https://raw.githubusercontent.com/zhblue/hustoj/master/trunk/install/install-ubuntu16+.shgithub
2 sudo bash install-ubuntu16+.sh web
}sql
而后我用的是以下数据库
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,看是否出现主页的画面。ubuntu
没有的话检查一下是不是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