在 Linux/Solaris 环境下,最好的办法是对每一个服务进行安装和配置(包括 Confluence),同时配置这些服务权限为他们所在用户需要的服务权限即可,

  1. 为实例创建一个 Confluence,使用下面的命令:

    sudo useradd --create-home -c "Confluence role account" confluence
  2. 来为 Confluence 的安装创建一个目录。在这个例子中,我们使用 /usr/local/confluence。
    sudo mkdir /usr/local/confluence
    sudo chown confluence: /usr/local/confluence
  3. 以 Confluence 用户进行登录后安装 Confluence:
    sudo su - confluence
    cd /usr/local/confluence/
    tar zxvf /tmp/confluence-5.6.4.tar.gz
    ln -s confluence-5.6.4/ current
  4. 编辑 <<CONFLUENCE_INSTALL_DIRECTORY>>/confluence/WEB-INF/classes/confluence-init.properties 文件,同时设置 confluence.home=/usr/local/confluence/<Confluence_Data_Home> (请确定你已经删除到语句前面的 '#')
  5. 然后返回到 root 用户,创建 /etc/init.d/confluence 文件(文件所需要的代码如下所示),这个代码将会允许 Confluence 在操作系统重启后再次自动启动(或者手动启动)。
     如果你正在运行的是 Ubuntu Jaunty (或者后续版本),你不需要这个操作。请直接使用本页面下面的 instructions 。
    #!/bin/sh -e
    # Confluence startup script
    #chkconfig: 2345 80 05
    #description: Confluence
     
    # Define some variables
    # Name of app ( JIRA, Confluence, etc )
    APP=confluence
    # Name of the user to run as
    USER=confluence
    # Location of Confluence install directory
    CATALINA_HOME=/usr/local/confluence/current
    # Location of Java JDK
    export JAVA_HOME=/usr/lib/jvm/java-7-oracle
     
    case "$1" in
      # Start command
      start)
        echo "Starting $APP"
        /bin/su -m $USER -c "$CATALINA_HOME/bin/start-confluence.sh &> /dev/null"
        ;;
      # Stop command
      stop)
        echo "Stopping $APP"
        /bin/su -m $USER -c "$CATALINA_HOME/bin/stop-confluence.sh &> /dev/null"
        echo "$APP stopped successfully"
        ;;
       # Restart command
       restart)
            $0 stop
            sleep 5
            $0 start
            ;;
      *)
        echo "Usage: /etc/init.d/$APP {start|restart|stop}"
        exit 1
        ;;
    esac
     
    exit 0
  6. 修改文件权限使其可以执行
    sudo chmod +x /etc/init.d/confluence
  7. 设置文件为正确的可以运行级别。例如,使用 sudo chkconfig --add (Confluence 运行在 redhat 为基础的操作系统), sudo update-rc.d (Confluence 运行在 Debian 为基础的系统)。
  8. 你现在应该可以使用 Confluence 的初始化脚本来启动 Confluence了。一个成功的启动输出信息如下所示:
    $ sudo /etc/init.d/confluence start
    Starting Confluence:
    If you encounter issues starting up Confluence, please see the Installation guide at http://confluence.atlassian.com/display/DOC/Confluence+Installation+Guide
    Using CATALINA_BASE: /usr/local/confluence/current
    Using CATALINA_HOME: /usr/local/confluence/current
    Using CATALINA_TMPDIR: /usr/local/confluence/current/temp
    Using JRE_HOME: /usr/lib/jvm/java-1.7.0-oracle
    done.

    你应该可以看到 Confluence 运行在 http://<server>:8090/
     Confluence 运行的端口是定义在 server.xml 文件中的。

为 Ubuntu Jaunty (及其后续版本)添加 Confluence 为服务

为了让 Confluence 能够在 Ubuntu Jaunty(及其后续版本中)以服务的方式进行启动:

  1. 以 Confluence 用户的方式登录 logging in 系统后,进行安装 Confluence,在  /usr/local/confluence 中创建启动和停止脚本。

    启动脚本的示例如下:

    #!/bin/bash
    export JAVA_HOME=/usr/lib/jvm/java-7-oracle-1.7.0.71/
    export JDK_HOME=/usr/lib/jvm/java-7-oracle-1.7.0.71/
    cd /usr/local/confluence/current/bin
    ./startup.sh

    停止脚步示例:

    #!/bin/bash
    export JAVA_HOME=/usr/lib/jvm/java-7-oracle-1.7.0.71/
    export JDK_HOME=/usr/lib/jvm/java-7-oracle-1.6.0.71/
    cd /usr/local/confluence/current/bin
    ./shutdown.sh
  2. 让上面 2 个脚本同时可以执行。例如,通过下面的命令: sudo chmod a+x /usr/local/confluence/start /usr/local/confluence/stop.
  3. Karmic 和后续版本:创建 2 个文件在 /etc/init/ 文件夹中,文件名分别为 confluence-up.conf 和 confluence-down.conf

    confluence-up:

    start on runlevel [2345]
    
    script
    
    	date >> /tmp/confluence-startup.out
    exec sudo -u confluence /usr/local/confluence/start >> /tmp/confluence-startup.out 2>&1 end script

    confluence-down:

    start on runlevel [16]
    
    expect fork
    respawn exec sudo -u confluence /usr/local/confluence/stop >> /tmp/confluence-shutdown.out 2>&1

    ... 同时使这个 2 个文件针对所有用户可读:
    sudo chmod a+r /etc/init/confluence-up.conf /etc/init/confluence-down.conf

  1. Jaunty 之前的版本,创建 2 个文件在 /etc/event.d/ 文件夹中,文件名分别为 confluence-up.conf 和 confluence-down.conf

    confluence-up:

    start on runlevel 2
    start on runlevel 3
    start on runlevel 4
    start on runlevel 5 exec sudo -u confluence /usr/local/confluence/start >> /tmp/confluence-startup.out 2>&1

    confluence-down:

    start on runlevel 1
    start on runlevel 6 exec sudo -u confluence /usr/local/confluence/stop >> /tmp/confluence-shutdown.out 2>&1

    ... 同时使这个 2 个文件针对所有用户可读:
    sudo chmod a+r /etc/event.d/confluence-up /etc/event.d/confluence-down

相关主题

Starting Confluence Automatically on System Startup

https://www.cwiki.us/display/CONF6ZH/Start+Confluence+Automatically+on+Linux

在 Linux 中自动启动 Confluence 6的更多相关文章

  1. Linux中java应用程序的部署,使其开机自动启动

    初步需求:将在Windows/MyEclipse中开发的java应用程序部署到Linux服务器上,使其运行 针对需求,可以参考下面这些文章,但是这些文章很多东西没有提及到,我自己尝试部署运行 在lin ...

  2. Linux中的crontab命令用法

    Crontab 在linux中,crontab的用来设置定期执行指定的命令,我们可以用它来指定一些需要重复的事情,Linux系统的用户只需将想要定期要执行的命令序列加到crontab文件中,操作系统即 ...

  3. 应用Oracle(Linux中的安装)

    Linux中安装Oracle,不同于windows. Linux在安装时,要作些必要的分区配置,以便进行Oracle的安装: 同时需要创建专门的数据库用户和组,并配置环境变量. root登录 使用 r ...

  4. Linux中TCP wrapper的使用

    Linux中TCP wrapper的使用 tcpwrapper的目的是对那些访问控制功能较弱的服务提供访问控制功能要想了解访问控制就必须先知道服务监听的概念: 服务监听的两种方式: listen    ...

  5. Linux中samba服务器的搭建

    使用的vmware12虚拟机安装的centos6.8和物理机上的windows10,实现在windows10 上访问CentOs上的samba服务. 一.先查看系统中是否安装有samba服务相关的软件 ...

  6. Linux中DHCP服务器的简单配置

    我安装了两台linux系统,一个作为服务器,一个客户端 两个都有3个网卡, 后两个网卡聚合为zhi一个网卡:Linux 网卡聚合 两台电脑都一样. 那么如何为这个聚合网卡进行DHCP的分配呢? 1.由 ...

  7. Linux 中的定时处理 cron服务

    cron服务 在LINUX中,周期执行的任务一般由cron这个守护进程来处理 当安装完操作系统后默认会安装此服务工具并且会自动启动crond,该进程会每分钟定期检查是否有要执行的任务,若有则执行. c ...

  8. Linux中systemctl命令详细介绍

    Linux Systemctl是一个系统管理守护进程.工具和库的集合,用于取代System V.service和chkconfig命令,初始进程主要负责控制systemd系统和服务管理器.通过Syst ...

  9. 树莓派进阶之路 (027) - 在Linux中增加swap空间

    原贴地址:http://blog.csdn.net/chinalinuxzend/article/details/1759593  在Linux中增加swap空间 在安装Linux的时候,不知道swa ...

随机推荐

  1. volatile的使用场景

    单词解释: 乱序执行:指CPU对代码的执行顺序进行乱序优化,但保证各执行代码单元的顺序按指令顺序排列.以达到充分利用处理器的各处理单元的目的.(可以理解成:一个任务有不同的执行单元,这些单元之间有一定 ...

  2. 使用Python批量修改文件名

    使用os.rename(fold,newfilename)对文件重命名 # coding:utf-8 import os filename_list = os.listdir('./') for fi ...

  3. 第25月第26天 dispatch_group_t dispatch_semaphore_t

    1. dispatch_group_enter(group); dispatch_group_leave(group); dispatch_group_notify(group1, queue1,bl ...

  4. 出题人的手环(牛客练习赛38D 离散化+树状数组)

    题目链接(https://ac.nowcoder.com/acm/contest/358/D) 题目描述 出题人的妹子送了出题人一个手环,这个手环上有 n 个珠子,每个珠子上有一个数. 有一天,出题人 ...

  5. JDK自带的LinkedHashMap来实现LRU算法

    1 代码如下 public class LRULinkedHashMap<K, V> extends LinkedHashMap<K, V> { private final i ...

  6. 【css】正确的让文本换行

    通常文本换行我们会使用word-break属性,有两个值供我们选择 word-break: break-all; word-break: break-world; 那么如何区分这两个值呢,我们看图说话 ...

  7. 最全的jquery datatables api 使用详解

    学习可参考:http://www.guoxk.com/node/jquery-datatables http://yuemeiqing2008-163-com.iteye.com/blog/20069 ...

  8. Spring整合Web项目原理-理解不了,忽略

  9. Javascript - ExtJs - GridPanel组件 - 编辑

    GridPanel组件 - 编辑 Ext.grid.plugin.Editing 如果要对表格使用列编辑器控件,则需要完成以下几步 1.将columns中需要编辑的列设为editor并提供编辑列时所要 ...

  10. 微信小程序获取手机验证码

    一种比较常见的功能获取手机验证码 先看效果图: 其实这个功能实现起来很简单,主要就是调取第三方接口,拿到返回值验证的问题 直接上代码吧: wxml页面: <view class='changeI ...