CentOS tomcat经过长时间的发展,这里我发表一下个人理解,下面就这就来讲术CentOS tomcat。CentOS tomcat6_jdk1.6_安装配置_开启自动运行,普通用户执行 (转)秀脱linux笔记之CentOS tomcat6实战篇由于前段时间一直在外头出差,没有完成CentOS tomcat以普通用户执行,开机自动运行的文章现在整理好后,包括调试脚本时候出现的错误解决方法

环境:操作系统:centos 4.5_x86数据库oracle 10.2.01_x86_32jvre:1.6:jdk-6u1-linux-i586-rpm.bintomcat6.0:编译好的二进制软件包apache-tomcat-6.0.13.tar.gz

CentOS tomcat6.0 安装路径:/usr/local/tomcat6oracle jdbc:class12.jar软件包存放的路径:/home/xiutuo/software/java安装路径:/usr/java/jdk1.6.0_01使用普通用户:xiutuo来启动CentOS tomcat6tomcat6开机自动启动脚本:/etc/init.d/tomcat

一:安装jre

1.安装jre软件包,

# cd /home/xiutuo/software进入软件包存放目录# chmod a+x jdk-6u1-linux-i586-rpm.bin使它有执行权限# ./jdk-6u1-linux-i586-rpm.bin多敲几个空格,然后看到[yes]的时候输入yes,回车然后在当前目录下就生成了jdk-6u1-linux-i586-rpm# rpm -ivh jdk-6u1-linux-i586-rpm安装jdk如果之前有其他老版本的jdk,卸载掉,如:rpm -e j2sdk-1.4.1-fcs

2.:设置环境变量

仅设置某个用户而不是所有用户可以修改~/.cshrc,~/.bash_profile文件,追加下面一段,如果为所有用户以及以后添加的用户都加上环境变量的话,

追加/etc/profie文件.     ***主意不要在profile和~/.cshrc或~/.bash_profile中重复追加**这里:# vi /etc/profile     //java     //如果你安装的j2sdk的路径不一样,请自行修改JAVA_HOME=/usr/java/jdk1.6.0_01

export JAVA_HOME

CLASSPATH=/usr/java/jdk1.6.0_01/lib:/usr/java/jdk1.6.0_01/jre/lib

export CLASSPATH

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

export PATH

JRE=/usr/java/jdk1.6.0_01/jre

export JRE

3:立即生效//如果你修改的是/etc/profile

# source /etc/profile

//如果你修改的是~/.cshrc

# source ~/.cshrc

//如果你修改的是~/.bash_profile

# source ~/.bash_profile

4:测试成功否# java -version

出现

java version "1.4.2" //这里比较怪,本来是jre是1.6这里居然……

gcj (GCC) 3.4.6 20060404 (Red Hat 3.4.6-8)

Copyright (C) 2006 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.    There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

解决这个问题的方法,# cd /usr/java/# ls -l看看default和latest这俩个文件夹是不是jdk1.6.0_01的软连接如果是就不用修改了,否则删除default和latest,# rm -rf default# rm -ff latest然后# ln -s jdk1.6.0_01 default# ln -s jdk1.6.0_01 latest删除/usr/bin/目录中的java,javac,javaws

# cd /usr/bin

# rm -f java

# rm -f javac

# rm -f javaws

然后:# ln -s /usr/java/default/bin/java /usr/bin/java

# ln -s /usr/java/default/bin/javac /usr/bin/javac

# ln -s /usr/java/default/bin/javaws /usr/bin/javaws

***再//如果你修改的是/etc/profile

# source /etc/profile

//如果你修改的是~/.cshrc

# source ~/.cshrc

//如果你修改的是~/.bash_profile

# source ~/.bash_profile

再执行# java -version    //这回正常了

java version "1.6.0_01"

Java(TM) SE Runtime Environment (build 1.6.0_01-b06)

Java HotSpot(TM) Client VM (build 1.6.0_01-b06, mixed mode, sharing)

二:安装CentOS tomcat6

1.安装tomcat# cd /home/xiutuo/software                     //进入软件包存放目录

# tar -zvxf apache-tomcat-6.0.13.tar.gz        //解压

# mv apache-tomcat-6.0.13 /usr/local/tomcat6 //安装

# cd /usr/local/tomcat6/bin/                  //进入安装目录

# tar xvfz jsvc.tar.gz                        //解压

# cd jsvc-src                                 //进入jsvc-src目录

# autoconf

# ./configure--with-java=/usr/java/jdk1.6.0_01

# configure时切记加java的jdk路径,否则无法使用普通用户开机自动启动tomcat

# make                                        //编译生成jsvc文件

# cp jsvc ..                                  //拷贝jsvc到上级目录

# cd ..                                       //回到上级目录

# cd /usr/local/tomcat6/

//运行下面的命令可以使tomcat以daemon方式运行# ./bin/jsvc -cp ./bin/bootstrap.jar "

-outfile ./logs/catalina.out "

-errfile ./logs/catalina.err "

org.apache.catalina.startup.Bootstrap

2.配置oralce的jdbc//拷贝oracle的jdbc到/usr/local/tomcat6/lib目录下# cp /home/software/class12.jar ./lib/

3.配置CentOS tomcat用户# cd /usr/local/tomcat6/conf# vi tomcat-users.xml内容如下:<?xmlversion ='1.0'encoding='utf-8'?>

请修改CentOS tomcat里所有定义用户的密码:即修改password为自己想要的值。

4.启动停止tomcat服务# cd    /usr/local/tomcat6/bin

# ./start.sh      //启动tomcat

# ./shutdown.sh //停止tomcat查看tomcat的进程:

# ps -e | grep java

出现了java这个进程的话,说明你的tomcat差不多了。

5.让CentOS tomcat开机运行:# cd /usr/local/tomcat6/bin/jsvc-src/native/

# cp Tomcat.sh /etc/init.d/tomcat

# 这里以tomcat4的自动运行脚本来做修改

# vi tomcat

修改后内容如下:

# Linux下该脚本使用方法

#

# 1.configure时切记加java的jdk路径,否则无法使用普通用户开机自动启动tomcat

# ./configure --with-java=/usr/java/jdk1.6.0_01

#

# 2.先为tomcat生成catalina.out,catalina.err日志文件,存放在

#  路径:/usr/local/tomcat6/logs,

#  方便查看脚本调试时候出现的错误信息

# cd /usr/local/tomcat6

# 先进入tomcat6的安装目录,再执行以下命令,生成日志文件!

# ./bin/jsvc -cp ./bin/bootstrap.jar "

#        -outfile ./logs/catalina.out -errfile ./logs/catalina.err "

#        org.apache.catalina.startup.Bootstrap

#

# 3.更改tomcat安装目录权限

# 切记:tomcat安装目录tomcat6文件权限应该属于运行tomcat的用户

# 这里更改整个tomcat6的文件夹及其下的文件为xiutuo用户和xiutuo组!

# chown -R xiutuo:xiutuo /usr/local/tomcat6

# 不放心的话再执行一次

# chown -R xiutuo:xiutuo /usr/local/tomcat6/*

# chmod -R 755 /usr/local/tomcat6

#

# cd /usr/local/tomcat6/bin/jsvc-src/native/

# 4.自动启动脚本编辑、赋权

# cp tomcat5.sh /etc/init.d/tomcat

# chown xiutuo:xiutuo tomcat

# chmod 711 tomcat

#

# 建立软连接

#

# ln -s /etc/init.d/tomcat /etc/rc.d/rc3.d/K01tomcat

# ln -s /etc/init.d/tomcat /etc/rc.d/rc3.d/S99tomcat

# ln -s /etc/init.d/tomcat /etc/rc.d/rc5.d/K01tomcat

# ln -s /etc/init.d/tomcat /etc/rc.d/rc5.d/S99tomcat

#

# 5.如果查看该脚本已经工作了,方法如下:

#  启动脚本:/etc/init.d/tomcat start

# a.通过web浏览器查看能不能访问tomcat的管理页面

# b.通过查看有没有jsvc进程 ps -e | grep jsvc

#   如果看到俩个jsvc进程,恭喜,你成功啦!

#

# 6.脚本无法正常工作的解决方法:

#  启动脚本:/etc/init.d/tomcat start

#  查看/usr/local/tomcat6/logs/目录下的俩个日志文件:

#  catalina.out,catalina.err, 使用cat查看。

#  a.错误

#  Cannot find daemon loader org/apache/commons/daemon/support/DaemonLoader

#  解决:更改tomcat安装目录权限为所有用户可以读,并属于xiutuo用户和xiutuo组

#  命令:chmod -R 755 /usr/locat/tomcat6

#        chown -R xiutuo:xiutuo /usr/locat/tomcat6

#  b.错误

#   Cannot open PID file /var/run/jsvc.pid

#  解决:chown xiutuo:xiutuo /var/run/jsvc.pid

#        chown 744 /var/run/jsvc.pid

JAVA_HOME=/usr/java/jdk1.6.0_01

#改成你java安装目录

CATALINA_HOME=/usr/local/tomcat6/

#改成你CentOS tomcat安装目录

DAEMON_HOME=/usr/local/tomcat6/bin/jsvc-src/

#改成jsvc程序所在目录

TOMCAT_USER=xiutuo

#改成启动CentOS tomcat使用的普通用户

JAVA_HOME=/usr/java/jdk1.6.0_01

#改成你java安装目录

CATALINA_HOME=/usr/local/tomcat6

#改成你CentOS tomcat安装目录

DAEMON_HOME=/usr/local/tomcat6/bin

#改成jsvc程序所在目录,记住该进程是开机tomcat自动启动进程

#测试该脚本时候,使用/etc/init.d/tomcat start

#如果顺利启动的话,通过ps -e可以看到俩个jsvc进程

TOMCAT_USER=xiutuo

#改成启动tomcat使用的普通用户

TMP_DIR=/var/tmp

CATALINA_OPTS=

#这个环境变量不管

CLASSPATH="

$JAVA_HOME/lib/tools.jar:"

$DAEMON_HOME/commons-daemon.jar:"

$CATALINA_HOME/bin/bootstrap.jar

# classpath这个很重要,一定要确保这三个

# tools.jar、commons-daemon.jar、bootstrap.jar

# 的正确路径。

case "$1" in

start)

#

# Start Tomcat

#

$DAEMON_HOME/jsvc "

-user $TOMCAT_USER "

-home $JAVA_HOME "

-Dcatalina.home=$CATALINA_HOME "

-Djava.io.tmpdir=$TMP_DIR "

-outfile $CATALINA_HOME/logs/catalina.out "

-errfile '&1' "

$CATALINA_OPTS "

-cp $CLASSPATH "

org.apache.catalina.startup.Bootstrap

#

# To get a verbose JVM

#-verbose "

# To get a debug of jsvc.

#-debug "

;;

stop)

#

# Stop Tomcat

#

PID=`cat /var/run/jsvc.pid`

kill $PID

;;

*)

echo "Usage tomcat.sh start/stop"

exit 1;;

esac

【编辑推荐】

【责任编辑:鹏程 TEL:(010)68476606】

点赞 0

普通用户无法执行java,CentOS tomcat普通用户执行配置安装相关推荐

  1. Java基础-Tomcat虚拟主机的配置之网站访问的过程和虚拟主机的配置

    Tomcat虚拟主机的配置之网站访问的过程和虚拟主机的配置 网站的访问过程: 虚拟主机的配置: 什么是虚拟主机?  虚拟主机:在电脑上设置一个目录,使用一个名称与该目录进行绑定.这个路径称为是虚拟主机 ...

  2. 命令行执行java程序_命令行执行

    每当您旅行到一个居民说不同寻常的母语的国家时,您都可能会用一些基本的生存短语武装自己,例如"这要花多少钱?","这是哪种肉?"和"哪里在洗手间吗?&q ...

  3. bat执行java文件_.bat文件执行java程序

    脚本: @echo off echo 测试开始,请稍后.... echo path:%~dp0 set base=%~dp0 set class=%base%\classes set libs=%ba ...

  4. windows计划任务启动bat执行java文件

    系统:win7 环境:需要配置好jdk的环境变量 需求:每次开机,用bat批处理执行将一个位于D:\workspace\console目录底下的console.txt重命名的java文件 拿到需求,我 ...

  5. java文件 linux_Linux执行Java文件

    最近学习shell脚本,写个简单java类让linux去执行 java类没别的东西,就引了一个fastjson的jar,写了个main方法 序列化一个User对象 打印 package com.lws ...

  6. linux cron指定用户,Centos下crontab指定执行用户

    Centos下可以通过配置crontab来定时执行任务,执行体可以是一条系统命令或自己写的一个脚本,同时可以指派用户来执行.配置crontab有两种方法. 方法1.使用crontab命令,例如添加一个 ...

  7. linux centos crontab,Centos下crontab 指定执行用户

    Centos下可以通过配置crontab来定时执行任务,执行体可以是一条系统命令或自己写的一个脚本,同时可以指派用户来执行.配置crontab有两种方法.方法1.使用crontab命令,例如添加一个新 ...

  8. Java程序员需要掌握的计算机底层知识(二):操作系统、内核、用户态与内核态、系统调用的执行过程

    操作系统 启动过程 通电 -> bios uefi 工作 -> 自检 -> 到硬盘固定位置加载bootloader -> 读取可配置信息 -> CMOS CMOS 用来存 ...

  9. openjdk怎么执行java命令_Ubuntu 18.04 上使用 OpenJDK 安装并运行 Tomcat

    在Linux上安装与卸载JDK和JRE,两种常用方法: 一.通过 apt-get 命令在线进行安装与卸载(会自动配置好环境变量) 二.通过下载并解压 .tar.gz 包进行手动安装与手动卸载(需要手动 ...

最新文章

  1. 服务API版本控制设计与实践
  2. 静态方法多次调用内存_java虚拟机的内存分析
  3. 用pv操作描述如下前驱图_跟我学PMP | PV、AC、EV…挣值管理的基本概念都是啥?...
  4. Jacobi并行拆解【补充】
  5. rabbitmq中的队列transient和durable的区别
  6. freeswitch的dialplan中condition变量
  7. 2022年国内短信平台大全
  8. C# UDP Socket ReceiveFrom 远程主机强迫关闭了一个现有的连接。
  9. Aix平台打开异步io需要fileset支持
  10. win7命名计算机无法下一步,win7还原系统不能点下一步怎么办(无响应)
  11. android 辅助功能(无障碍)
  12. 自己开发了一个JsonViewer工具--FrogJson
  13. 写作的必备技能,markdown的基本语法
  14. 风控每日一问:合规管理、内部控制和全面风险管理有什么区别?
  15. Android Framework 框架系列之PowerManager
  16. 老挑毛u盘一键装系统计算机意外地,揭谜一键Ghost的“恶”事 大白菜、老毛桃、通用都不干净...
  17. Android中gradle配置项packagingOptions简述
  18. shadow acne(阴影失真)和peter panning(阴影悬浮)
  19. 【实习之路】爱奇艺、追一科技日常实习生面试经历分享——爱奇艺篇
  20. C语言基础篇02:单链表实现学生成绩管理系统

热门文章

  1. java编写管理系统_用java编写学生信息管理系统
  2. PLSQL 查询结果只显示年月日不显示时分秒的解决方法
  3. 加载程序中数据库账号密码加密策略wallet_04
  4. 第4篇:Flowable-Modeler详述之流程概述
  5. Android11vivox21刷机包,vivo x21旧版官方固件rom系统刷机包
  6. java socket数据传输_Java Socket编程(一) Socket传输模式
  7. arcmap创建空间索引_GIS中创建空间索引的一种方法
  8. 关闭word_Word文档如何快速查找?超实用的5个Word技巧教给你
  9. oracle database 11g plsql 程序设计,oracle-database-11g-plsql-编程实战笔记
  10. qt获取当前场景中的所有图形项的层次