开机自启动,将要执行的语句写入/etc/rc.local。

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing. # source /etc/environment
source /etc/profile
locale >> /home/cnic/locale.txt
/usr/tomcat/apache-tomcat-8.0./bin/startup.sh
echo "tomcat started--." exit

在/etc/profile中要有JAVA_HOME的设置,缺少必要的环境变量,是无法启动tomcat的。也可以环境变量的设置放在rc.local中而不用 source /etc/profile

JAVA_HOME=/usr/java/jdk1..0_79
...

为分析rc.local是否成功运行,可以在 /var/log/boot.log中查看开机启动时的输出信息。

如上设置后,开机启动了tomcat, 但页面上的中文全是乱码,在rc.local中加上语句

locale >> /home/cnic/locale.txt

让语言配置信息在开机时输出到文件中,可以看到开机时的locate输出:

LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=

手动输入locate输出一下内容:

LANG=en_US.UTF-
LANGUAGE=
LC_CTYPE=en_US.UTF-
LC_NUMERIC=en_US.UTF-
LC_TIME=en_US.UTF-
LC_COLLATE=en_US.UTF-
LC_MONETARY=en_US.UTF-
LC_MESSAGES=en_US.UTF-
LC_PAPER=en_US.UTF-
LC_NAME=en_US.UTF-
LC_ADDRESS=en_US.UTF-
LC_TELEPHONE=en_US.UTF-
LC_MEASUREMENT=en_US.UTF-
LC_IDENTIFICATION=en_US.UTF-
LC_ALL=

可以看出在rc.local运行时,没有语言编码相关的设置,导致中文输出乱码。

如何在rc.local开机运行时设置LC_ALL等参数,未找到解决方法。

参照网上相关文献,在tomcat/bin/catalina.sh中添加以下语句:

...
export JAVA_OPTS="-Dfile.encoding=UTF-8 -Duser.language=en_US"
...

重新启动后,tomcat可开机启动,且中文显示正常。

最终的解决方案,不更改tomcat/bin/catalina.sh, 只在rc.local中多加几条语句。#!/bin/sh -e

#
# rc.local
# source /etc/profile
#source /etc/default/locale # 只写export或只写update-local都还是乱码,两个都写了才能正确显示中文,具体原因还是不清楚,但问题解决了。
export LANG="en_US.UTF-8"
export LANGUAGE="en_US:en_GB:en"
export LC_ALL="en_US.UTF-8"
update-locale LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8" LANGUAGE="en_US:en_GB:en"
/usr/tomcat/apache-tomcat-8.0./bin/startup.sh exit

系统环境为:ubuntu 14, 英文

ubuntu 14 中tomcat的开机启动设置的更多相关文章

  1. 服务器安装ubuntu 14.04 server,开机启动屏幕不停滚动错误WRITE SAME failed. Manually zeroing

    昨天给服务器上安装了一个Ubuntu-14.04-server系统,安装完成后系统可以正常启动,但屏幕上一直滚动着一个错误,sda1:WRITE SAME failed. Manually zeroi ...

  2. Tomcat开机启动设置

    omcat开机启动设置 1.修改/etc/rc.d/rc.local,使用vi /etc/rc.d/rc.local 命令2.在/etc/rc.d/rc.local文件最后添加下面两行脚本 expor ...

  3. Ubuntu 14 中给 APACHE2安装 SSL 模块 Enable SSL site on Ubuntu 14 LTS, Apache 2.4.7:

    Ubuntu 14 中给 APACHE2安装 SSL 模块 Enable SSL site on Ubuntu 14 LTS, Apache 2.4.7: 参考 http://blog.csdn.ne ...

  4. [ubuntu][deepin]系统增加自定义开机启动项

    [ubuntu][deepin]系统增加自定义开机启动项 进行配置 cd /etc/init.d/ ls vim myScript nginx实例 #! /bin/sh # chkconfig: # ...

  5. eclipse中tomcat能正常启动,在浏览器中不能打开问题

    问题原因:没有在eclipse中tomcat的server location设置到tomcat的安装目录. 解决办法:1.选择server点击右键,选择Open选项,然后在server locatio ...

  6. Ubuntu 14 中,SecureCRT、SecureFX个性化设置

    [SecureCRT 个性化设置] 打开设置路径:菜单栏 -> Opions -> Global Options -> General -> Default Session - ...

  7. [ 手记 ] 关于tomcat开机启动设置问题

    今天尝试将tomcat设置为开机启动,大家都知道只需要将启动脚本添加到/etc/rc.local下面开机就会自动执行. /usr/local/tomcat8./bin/startup.sh >& ...

  8. CenterOS中安装Redis及开机启动设置

    Redis安装 从官方下载最新Redis进行安装,官网地址:http://redis.io/download $ wget http://download.redis.io/releases/redi ...

  9. Win7 + Ubuntu 14.04 +tomcat + mysql 搭建测试环境手册

    一.Win7下做安装ubuntu 下载ununtu14.04和EasyBCD软件 Win7下要腾出一个盘来安装ubuntu.我是格式化掉F盘,然后回到桌面,右键点击计算机-->管理-->存 ...

随机推荐

  1. Python 操作FTP

    import sys, os, ftplib, socket CONST_HOST = "FTP服务器地址" CONST_USERNAME = "FTP用户名" ...

  2. Java学习基础1

    Java 平台: Java API JVM  特点:可跨平台  Java 运行机制:           编译                         运行 Java文件-------> ...

  3. MonoDev 冷门而好用的功能

    [MonoDev 冷门而好用的功能] 1.Ctrl + B.跳转到对应的{}.(). 2.View -> Editor Layout -> 2 Columns.双屏工作. 3.Editr ...

  4. java环境基础步骤 jdk tomcat eclipse

    1.下载jdk,安装jdk 2.设置环境变量 1)打开我的电脑--属性--高级--环境变量 2)系统变量→新建 JAVA_HOME 变量 变量值填写jdk的安装目录(本人是 D:\java\jdk1. ...

  5. HDU 4833 Best Financing (DP)

    Best Financing Time Limit: 20000/10000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  6. linux crontab

    概念: Linux 工作排程的种类:at, cron at 是个可以处理仅执行一次就结束排程的指令,不过要执行 at 时, 必须要有 atd 这个服务支持. crontab 这个指令所设定的工作将会循 ...

  7. poj 2594 Treasure Exploration (二分匹配)

    Treasure Exploration Time Limit: 6000MS   Memory Limit: 65536K Total Submissions: 6558   Accepted: 2 ...

  8. C/C++入门基础----指针(1)

    指针其实就是一个变量, 和其他类型的变量一样.在32位计算机上, 指针占用四字节的变量.指针与其他变量的不同就在于它的值是一个内存地址,指向内存的另外一个地方, 指针能够直接访问内存和操作底层的数据, ...

  9. Hibernate持久化类属性映射

    Hibernate充当应用程序和数据库之间的中间件,实现二者之间的交互操作,他对JDBC进行了封装,以完全面向对象的方式来操作数据. 适用于有多个数据源的情况下,不必去考虑不同数据源的操作差异. Hi ...

  10. Noip2016提高组 组合数问题problem

    Day2 T1 题目大意 告诉你组合数公式,其中n!=1*2*3*4*5*...*n:意思是从n个物体取出m个物体的方案数 现给定n.m.k,问在所有i(1<=i<=n),所有j(1< ...