您的位置:首页 > 运维架构 > Linux

centos 服务器配置Java环境

2016-05-27 17:40 585 查看
连续玩了好几天服务器昨天在centos6.5下装完了oracle,又一台新的要配,所以做个全面的记录.

主要跑微信公众号服务,Java环境,需要安装的软件服务

Java jdk

tomcat

nginx

执行java -version 看看

[root@template ~]# java -version
java version "1.7.0_45"
OpenJDK Runtime Environment (rhel-2.4.3.3.el6-x86_64 u45-b15)
OpenJDK 64-Bit Server VM (build 24.45-b08, mixed mode)


卸载自带的OpenJDK

[root@template home]#  rpm -qa | grep java
libvirt-java-0.4.9-1.el6.noarch
java-1.6.0-openjdk-devel-1.6.0.0-1.66.1.13.0.el6.x86_64
tzdata-java-2013g-1.el6.noarch
libvirt-java-devel-0.4.9-1.el6.noarch
java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64
java-1.7.0-openjdk-devel-1.7.0.45-2.4.3.3.el6.x86_64
java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64
[root@template home]# rpm -e --nodeps libvirt-java-0.4.9-1.el6.noarch
[root@template home]# rpm -e --nodeps libvirt-java-devel-0.4.9-1.el6.noarch
[root@template home]# rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64
[root@template home]# rpm -e --nodeps java-1.7.0-openjdk-devel-1.7.0.45-2.4.3.3.el6.x86_64
[root@template home]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64
[root@template home]#  rpm -qa | grep java
java-1.6.0-openjdk-devel-1.6.0.0-1.66.1.13.0.el6.x86_64
tzdata-java-2013g-1.el6.noarch
[root@template home]# rpm -e --nodeps java-1.6.0-openjdk-devel-1.6.0.0-1.66.1.13.0.el6.x86_64
[root@template home]# rpm -e --nodeps tzdata-java-2013g-1.el6.noarch
[root@template home]# rpm -qa | grep java
[root@template home]#


卸载干净之后(rpm -qa | grep java 无输出) 获取jdk 所谓的Linux下安装JDK其实就是解压后配置个环境变量。

[root@weixinht ~]# cd /tmp/

[root@weixinht setupfiles]# wget http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz?AuthParam=1472442374_1853e614a96ab3620711bf6f1a4e3101[/code] 
如果下载不了,办法还是有的,本地下载再用winscp传到服务器

这里给出下载地址jdk1.7

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

End of Public Updates for Oracle JDK 7

jdk1.8

http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html

这里下载完后用winSCP上传到tmp目录下

linux命令解压到指定目录下/usr/local/

解压jdk
[root@template tmp]# tar -zvxf jdk-7u79-linux-x64.tar.gz -C /usr/local/
解压nginx
[root@template tmp]# tar -zxvf nginx-1.9.15.tar.gz -C /usr/local/
解压tomcat
[root@template tmp]# tar -zxvf nginx-1.9.15.tar.gz -C /usr/local/


添加环境变量

vim /etc/profile
追加
JAVA_HOME=/usr/local/jdk1.7.0_79 #具体看解压出来的文件名也可以自己重命名路径正确就好
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH


修改生效

[root@admin local]# source /etc/profile   //使修改立即生效
[root@admin local]#        echo $JAVA_HOME   //查看


跑一下java -version 验证一下

[root@template local]# java -version
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)


安装tomcat 这部分参考这篇比较好 centos安装tomcat设置开机启动

tomcat解压就能用 之前已经从tmp目录解压到/usr/local了

解压
[root@template tmp]# tar -zxvf nginx-1.9.15.tar.gz -C /usr/local/
启动 注意这里我重命名了解压出来的文件夹名apache-tomcat-7.0.69为tomcat7
[root@template local]# mv apache-tomcat-7.0.69 tomcat7
[root@template bin]# cd /usr/local/tomcat7/bin/
[root@template bin]# ./startup.sh
关闭
[root@template bin]# ./shutdown.sh

设置开机启动


增加开机启动服务 从安装oracle开机启动学的

具体编辑脚本

vim /etc/init.d/tomcat7 #创建新文件
tomcat7是我自己取得名字
#!/bin/bash
# oracle: Start/Stop tomcat7
# chkconfig: 345 90 10
# description: tomcat .

JAVA_HOME=/usr/local/jdk1.7.0_79
JRE_HOME=$JAVA_HOME/jre
. /etc/rc.d/init.d/functions
LOCKFILE=/var/lock/subsys/tomcat7flag
TOMCAT_HOME=/usr/local/tomcat7/
TOMCAT_USER=root
case "$1" in
'start')
if [ -f $LOCKFILE ]; then
echo $0 already running.
exit 1
fi
echo -n $"Starting tomcat!  "
/usr/local/tomcat7/bin/startup.sh
touch $LOCKFILE
;;
'stop')
if [ ! -f $LOCKFILE ]; then
echo $0 already stopping.
exit 1
fi
echo -n $"Stopping tomcat!  "
/usr/local/tomcat7/bin/shutdown.sh
rm -f $LOCKFILE
;;
'restart')
$0 stop
$0 start
;;
'status')
if [ -f $LOCKFILE ]; then
echo $0 started.
else
echo $0 stopped.
fi
;;
*)
echo "Usage: $0 [start|stop|status]"
exit 1
esac
exit 0


修改/etc/init.d/tomcat7服务文件权限

[root@CentOS init.d]# chmod 755 /etc/init.d/tomcat7

#chkconfig --add tomcat7


说明 如果脚本没写好 可能出现

service myservice does not support chkconfig

解决办法

vim /etc/init.d/tomcat7
添加下面两句到 #!/bin/bash 之后。
# chkconfig: 2345 10 90
# description: myservice ....


设置为开机启动

如果提示

[root@template sbin]# service tomcat7 stop
Stopping tomcat!  Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program


tomcat中需要做如下修改

vim /usr/local/tomcat7/bin/startup.sh
添加如下环境变量
export JAVA_HOME=/usr/local/jdk1.7.0_79
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export PATH=$PATH:$JAVA_HOME/bin
export CATALINA_HOME=/usr/local/tomcat7


[root@CentOS ~]# chkconfig tomcat7 on

进行service tomcat7 start/stop/restart测试

还有一种简单的办法 直接在启动文件中加启动命令

在/etc/rc.d/rc.local中加入:

/usr/local/tomcat7/bin/startup.sh

安装nginx 链接 nginx学习笔记

wget http://nginx.org/download/nginx-1.9.15.tar.gz 解压到指定目录
[root@template tmp]# tar -zxvf nginx-1.9.15.tar.gz -C /usr/local/
安装依赖
yum install pcre pcre-devel
cd /usr/local/nginx-1.9.15
./configure --prefix=/usr/local/nginx #安装到/usr/local/nginx目录
make && make install  编译安装
注:如果需要添加https支持建议使用参数编译,动态增加模块有时间再写个新的日志
./configure --prefix=/usr/local/nginx --with-http_ssl_module

cd /usr/local/nginx/sbin/
./nginx  启动
netstat -lnp|grep 80  查看80端口


注: 无网络环境下安装pcre依赖参考此篇

pcre的安装包下载地址:http://sourceforge.net/projects/pcre/files/pcre/

设置nginx开机启动 最简单的办法

vim /etc/rc.d/rc.local
追加一行
/usr/local/nginx/sbin/./nginx


复杂一点增加开机启动服务参考上篇tomcat设置开机启动

Nginx的信号控制
TERM, INT   Quick shutdown
QUIT    Graceful shutdown  优雅的关闭进程,即等请求结束后再关闭
HUP Configuration reload ,Start the new worker processes with
a new configuration Gracefully shutdown the old worker processes
改变配置文件,平滑的重读配置文件
USR1    Reopen the log files 重读日志,在日志按月/日分割时有用
USR2    Upgrade Executable on the fly 平滑的升级
WINCH   Gracefully shutdown the worker processes 优雅关闭旧的进程(配合USR2来进行升级)


具体语法:

Kill -信号选项 nginx的主进程号(/logs/nginx.pid文件中)

Kill -HUP 4873

Kill -信号控制
cat /usr/local/nginx/logs/nginx.pid


Kil; -USR1
cat /usr/local/nginx/logs/nginx.pid


“`
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息