详解ubuntu14.04搭建(迁移)hustoj记录
程序员文章站
2023-10-31 23:25:04
进入系统之后更新系统,个人比较喜欢vim编辑器,所以首先下载vim编辑器。
sudo apt-get update
sudo apt-get install v...
进入系统之后更新系统,个人比较喜欢vim编辑器,所以首先下载vim编辑器。
sudo apt-get update sudo apt-get install vim #编辑器 看个人喜好 sudo apt-get install openssh-server #远程连接工具
更改国内下载源:
######阿里云源: deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
######中科大源: deb http://debian.ustc.edu.cn/ubuntu/ trusty main multiverse restricted universe deb http://debian.ustc.edu.cn/ubuntu/ trusty-backports main multiverse restricted universe deb http://debian.ustc.edu.cn/ubuntu/ trusty-proposed main multiverse restricted universe deb http://debian.ustc.edu.cn/ubuntu/ trusty-security main multiverse restricted universe deb http://debian.ustc.edu.cn/ubuntu/ trusty-updates main multiverse restricted universe deb-src http://debian.ustc.edu.cn/ubuntu/ trusty main multiverse restricted universe deb-src http://debian.ustc.edu.cn/ubuntu/ trusty-backports main multiverse restricted universe deb-src http://debian.ustc.edu.cn/ubuntu/ trusty-proposed main multiverse restricted universe deb-src http://debian.ustc.edu.cn/ubuntu/ trusty-security main multiverse restricted universe deb-src http://debian.ustc.edu.cn/ubuntu/ trusty-updates main multiverse restricted universe
######清华源: deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty main restricted universe multiverse deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-security main restricted universe multiverse deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-updates main restricted universe multiverse deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-backports main restricted universe multiverse deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-proposed main restricted universe multiverse deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty main restricted universe multiverse deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-security main restricted universe multiverse deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-updates main restricted universe multiverse deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-backports main restricted universe multiverse deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-proposed main restricted universe multiverse
修改下载源:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak #备份 sudo vim /etc/apt/sources.list #修改 sudo apt-get update #更新列表
由于安装的桌面版本的ubuntu14.04,这里卸载掉几乎不用的软件:
sudo apt-get remove --purge libreoffice* sudo apt-get remove unity-webapps-common sudo apt-get remove thunderbird totem rhythmbox empathy brasero simple-scan gnome-mahjongg aisleriot gnome-mines cheese transmission-common gnome-orca webbrowser-app gnome-sudoku landscape-client-ui-install sudo apt-get remove onboard deja-dup
这样系统就比较干净了。
安装脚本(由于我这是将原有的项目移植并采用nginx环境,脚本根据张浩斌老师的脚本改编):
#将原有的项目都打包到judge.tar文件里面 #judge下面有:data etc judgeonline log run0 run1 run2 run3 #!/bin/bash dbuser=root dbpass=root printf "input database(mysql) username:" read tmp if test -n "$tmp" then dbuser="$tmp" fi printf "input database(mysql) password:" read tmp if test -n "$tmp" then dbpass="$tmp" fi #解压文件 tar -xvf judge.tar #更新源 sudo apt-get install update #编译环境 sudo apt-get install mono-mcs subversion sudo apt-get install make flex g++ clang libmysqlclient-dev libmysql++-dev #java等其他编译环境下载 sudo apt-get install ruby2.0 -y sudo apt-get install fpc -y sudo apt-get install openjdk-7-jdk -y sudo apt-get install perl -y sudo apt-get install mono-gmcs -y #lnmp环境 sudo apt-get install nginx mysql-server php5-fpm php5-mysql php5-gd php-xml-* php-cli php-mbstring redis-server php-redis sudo mkdir /judgeonline sudo cp -r ./judge/judgeonline/* /judgeonline sudo chown -r www-data /judgeonline sudo chmod -r 711 /judgeonline sudo mysql -h localhost -u$dbuser -p$dbpass < ./jol.sql #重启nginx sudo service php5-fpm restart sudo service nginx restart #取出judged源文件编译安装 sudo svn checkout https://github.com/zhblue/hustoj/trunk/trunk hustoj-read-only cd hustoj-read-only/core/ sudo ./make.sh cd ../.. #创建judge用户以及根目录 sudo /usr/sbin/useradd -m -u 1536 judge #拷贝文件到judge家目录下 这个根据自己情况 sudo cp -r ./hustoj /home/judge #更改文件夹权限 sudo chown -r www-data /home/judge sudo chown -r root /home/judge/log /home/judge/etc /home/judge/run? sudo chmod 711 /home/judge /home/judge/data sudo chgrp judge /home/judge/run? sudo chmod 771 /home/judge/run? sudo chmod -r 000 /home/judge/etc
然后修改 /etc/nginx/sites-available/default 文件。
sudo vim /etc/nginx/sites-available/default
将原有的server模块修改如下:
server{ listen 80 ; listen [::]:80 ipv6only=on; root /judgeonline; index index.php index.html index.htm; server_name localhost; error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param script_filename $document_root$fastcgi_script_name; include fastcgi_params; } }
重启nginx:
sudo service nginx restart
登录hustoj后台进行数据库更新。然后做个题试试,如若没有问题就大功告成了。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。