用SSH在linux下安装JDK和Tomcat

时间:2022-08-20 16:38:10

用SSH在linux下安装JDK和Tomcat

一,安装JDK

1,首先下载jdk安装文件jdk-1_5_0-linux-i586-rpm.bin,下载地址见文章尾。

    然后在用ssh工具自带FT文件传输工具,将bin文件上传到linux服务器上去。放到这个文件中去(/usr/local/);

2. 然后在ssh上运行下命令:(注:"#"表示命令最左端,相当ssh中的"#"不用输入,其后面才是我们需要输入的命令。)

# cd /usr/local

修改权限使其具有执行权限

#chmod a+x jdk-1.6.0_01-linux-i586.bin

  

# ./jdk-1_5_0-linux-i586-rpm.bin

****安装程序运行****

稍等一下,安装完成。个人感觉jdk在linux下安装比windows下快,呵呵。

# cd /usr

# ls

输入上面的命令,你会发现我们安装成功的java文件(/usr/java),至此我们jdk安装完毕。比想象中简单吧,呵呵。

  

二. 配置环境变量

    呵呵,java在windows下安装是需要配环境变量,linux也不另外。linux下环境变量是放在根目录下一个文件中(bashrc),如果需要修改环境变量什么的,只需要修改这个文件就行了。

# cd ~

# vim .bashrc 

输入上面的命令进入环境变量编辑文件中,注意".bashrc"中的不可以上少,也不要写成"./bashrc".然在该文件中添加下面几行代码,然后保存退出(vim命令是":wq"),这样我们的java环境变量就设置好了。

  

//下面是设置java的环境变量,其中的"export"命令可以理解为windows下的"set"命令

export JAVA_HOME=/usr/java/jdk1.5.0

export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin

//以下是设置的tomcat的环境变量,先写在这,后面安装tomcat也需要设置环境变量

export CATALINA_BASE=/usr/local/apache-tomcat-5.5.26

export CATALINA_HOME=/usr/local/apache-tomcat-5.5.26

注意以上设置环境变量中具体路径需要要根据你的实际安装路径来修改。

  

三.部署Tomcat

1.下载Tomcat安装文件,我用的是apache-tomcat-5.5.26.zip免安装版本。然后用ssh的文件传输工具,将其上传linux上服务器上。我将放在这个文件下(/usr/local).

2.运行下面命令来进行解压

# cd /usr/local

# unzip apache-tomcat-5.5.26.zip

*******解压中******

解压成功了,然后参考步骤二,设置下tomcat的环境变量。如果已经设置过了,看一下路径对不对(/usr/local/apache-tomcat-5.5.26).

输入下面命令来启动tomcat

# cd /usr/local/apache-tomcat-5.5.26/bin

# ./sartup.sh

**** Tomcat 启动 ****

3.然后在windows下浏览器中输入你服务器的IP地址url,如http://IP地址:8080

出现tomcat的首页 说明tomcat安装成功了。

  

四.安装过程中遇到的问题和解决方法

如果输入上面url访问失败,即tomcat启动失败,请用下面的方法来尝试处理

(1).权限问题,用户权限和文件是否有可执行权限。

a.普通用户权限一般不足,请Google命令给用户加权限,我是用root用户来进行安装的,因此没有遇到这个问题。

b.文件的权限不够,大部分时候是没有可执行权限。我在安装过程中失败后,给下面文件(/usr/local/apache-tomcat-5.5.26/bin)文件夹中所有文件赋予了可执行权限。可用下面的命令。

# cd /usr/local/apache-tomcat=5.5.26/bin

# chmod 777 "文件名" (如:#chmod 777 startup.sh)

  

(2)防火墙和端口问题 查看tomcat的8080端是否开启

首先确定是不是防火墙问题,可以运行下面命令将防火墙服务关闭,然后再访问看是否正常。如果正常,说明是防火墙问题,我安装过程就是遇到这个问题,后来发现时防火墙问题,用下面方法解决掉了。

关闭服务器的防火墙服务命令

# service iptables stop

开启服务器的防火墙服务命令

# service iptables start

编辑和开启防火墙相应端口命令

# vim  /ect/sysconfig/iptables

查看端口是否被占用,查看端口命令

# netstat -pan|gerp 8080

查看所有进程命令

# ps -ef

杀死一个进程命令

# kill 进程id  (注:呵呵,感觉比windows下简单多了,kill you, hehe)

查看系统初始所有服务命令

# cd /etc/rc.d/init.d

# ls

挂载服务,删除服务,服务列表可以通过下面命令查看到

# chkconfig -h

  

  

五.整个安装过程需要用到的软件及其版本号

   你可以上网下载,如果下不到可以和我联系。

1.SSH    --   F-SECURE.SSH.CLIENT.V5.4.34.REG.rar

  

2.JDK    --   jdk-1_5_0-linux-i586-rpm.bin

http://www.javaresearch.org/members/jross/jdk/jdk-1_5_0-linux-i586-rpm.bin

  

3.TOMCAT --   apache-tomcat-5.5.26.zip

  

源文档 <http://hikin.javaeye.com/blog/413576>

  

从网站上下载Tomcat,我这里下载的是5.5版本的。

使用"gzip -d apache-tomcat-5.5.28.tar.gz"解压文件,解压出一个文件夹名为为"apache-tomcat-5.5.28.tar"

使用"tar -xvf apache-tomcat-5.5.28.tar"解压文件,屏幕将显示解压信息。

使用"ls -l"显示出TomCat文件夹"apache-tomcat-5.5.28"

使用"mv apache-tomcat-5.5.28 /usr/"把文件夹移动到其usr目录下

使用" mv apache-tomcat-5.5.28 tomcat5"修改目录名为"tomcat5"

进入到"tomcat5/bin"目录下,"startup.sh"和"catalina.sh"两个文件能启动Tomcat

使用"./startup.sh"启动服务,包如下错误

"[root@localhost bin]# ./startup.sh

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"

这是由于没有设置JAVA_HOME变量,

使用"JAVA_HOME=/usr/java/jdk1.6.0_16"和"export JAVA_HOME"设置变量

再执行"./startup.sh",显示如下信息

"Using CATALINA_BASE:   /usr/tomcat5

Using CATALINA_HOME:   /usr/tomcat5

Using CATALINA_TMPDIR: /usr/tomcat5/temp

Using JRE_HOME:        /usr/java/jdk1.6.0_16

Using CLASSPATH:       /usr/tomcat5/bin/bootstrap.jar"

使用"ps -ef |grep tomcat"可以显示tomcat已启动

使用"wget http://localhost:8080"测试本地是否能上网

如果不能则先关闭防火墙" service iptables stop"

"./shutdown.sh"结束Tomcat服务

也可以使用"kill PID"杀死Tomcat进程

  

下面把把Tomcat添加到自启动,修改/etc/rc.local文件

再最后添加如下内容

JAVA_HOME=/usr/java/jdk1.6.0_16

export JAVA_HOME

/tomcat5/bin/startup.sh

  

源文档 <http://www.javaeye.com/topic/505552>

  

  

使用命令:

ps -aux | grep tomcat

发现并没有8080端口的Tomcat进程。

使用命令:netstat –apn

查看所有的进程和端口使用情况。发现下面的进程列表,其中最后一栏是PID/Program name 

发现8080端口被PID为9658的Java进程占用。

进一步使用命令:ps -aux | grep java,或者直接:ps -aux | grep pid 查看

就可以明确知道8080端口是被哪个程序占用了!然后判断是否使用KILL命令干掉!

  

  

方法二:直接使用 netstat   -anp   |   grep  portno

即:netstat –apn | grep 8080

  

源文档 <http://www.blogjava.net/hankchen/archive/2010/05/16/321079.html>

  

  

  

配置JAVA_HOME

JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.20

export JAVA_HOME

查看JAVA_HOME

echo $JAVA_HOME