开机自启动,将要执行的语句写入/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. Linux设备驱动模型之I2C总线

    一.I2C子系统总体架构 1.三大组成部分 (1)I2C核心(i2c-core):I2C核心提供了I2C总线驱动(适配器)和设备驱动的注册.注销方法,提供了与具体硬件无关的I2C读写函数. (2)I2 ...

  2. 误差曲线(Matlab)

    loglog(dof(:),errorestimate(:),:),errorestimate1(:),);hold on; loglog(dof(:),eigvalue(:)-[);%[13.086 ...

  3. Two Pointers Day

    (1)Reverse String 解题思路简单明了,但是要注意时间复杂度问题!!! 代码如下:(声明一个与字符串等长的char数组,然后倒序区字符串中的字符,放入数组即可.) public clas ...

  4. ASP.Net MVC3安全升级导致程序集从3.0.0.0变为3.0.0.1

    开发环境一般引用的是本机 C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies下的System.Web.Mvc.dll,当 ...

  5. Android 4.0 源代码结构

    Android源码的第一级目录结构   Android/abi (abi相关代码.ABI:application binary interface,应用程序二进制接口)   Android/bioni ...

  6. easyui 中datagrid 点击行的事件

    $('#datagrid 的ID').datagrid({                onClickRow:function(index,data)                {        ...

  7. oracle函数应用

    ----Oracle中的函数 oracle中函数的分类: --第一种:日期函数 --第二种: 字符函数 --第三种: 数学函数 --第四种: 转换函数 --第五种: 分析函数 ------------ ...

  8. js高级选择器querySelector和querySelectorAll

    querySelector 和 querySelectorAll 方法是 W3C Selectors API规范中定义的.他们的作用是根据 CSS 选择器规范,便捷定位文档中指定元素. 目前几乎主流浏 ...

  9. TCP、UDP协议间的区别(转)

    一.TCP/IP协议是一个协议簇.里面包括很多协议的.UDP只是其中的一个.之所以命名为TCP/IP协议,因为TCP,IP协议是两个很重要的协议,就用他两命名了. TCP/IP协议集包括应用层,传输层 ...

  10. css 清除浮动最佳方法!

    .clear:after{content:'\0020';display:block;height:0;clear:both} .clear{*zoom:1}