时隔两年最近再次折腾opensuse 的一些笔记 - opensuse linux java service shell

opensuse 一些常用命令:
    service xxx start/stop  运行或停止服务
    chkconfig xxx on/off    将服务加入启动,重启后永久生效
    ps -ef 查看所有当前进程
    kill PID 终止某个ID 的进程

修改权限,让普通用户具有 root 权限:
1)修改 /etc/passwd 将用户id 修改成 0

如: hz:x:0:0; huangzhi;; /home/hz/bin/bash

2) 修改 /etc/sudoers 在其中追加:

hz ALL=(ALL) ALL

给自己的某个 jar 包做成 linux 服务,分三步:

1)编写jar 包运行脚本 youservice.sh

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin  
CONNECT_HOME=/usr/local/myproject
cd $CONNECT_HOME

java -server -jar $CONNECT_HOME/my-server-launcher.jar &

2)编写 /etc/init.d/youservice shell脚本

#!/bin/bash  
#  
# Description:  测试  youservice

#  
# Source function library  
 
    . /lib/lsb/init-functions

# END INIT

case "$1" in  
      start)  
         echo "Starting youservice server"  
         #重点注意是  >/dev/null 2>&1 , 这行命令导致终端不会输出信息。
         /bin/bash /usr/local/myproject/youservice.sh >/dev/null 2>&1   
         ;;  
      stop)  
         PID=`ps -ef | grep 'my-server-launcher.jar' | grep -v grep | awk '{print $2}'`  
         echo PID
         echo "Stopping youservice server"  
         if [ ! -z "$PID" ]; then  
        kill -15 $PID  
         fi  
         ;;  
      restart)  
         $0 stop  
         $0 start  
         ;;  
      dump)
     PID=`ps -ef | grep 'my-server-launcher.jar' | grep -v grep | awk '{print $2}'` 
         if [ ! -z "$PID" ]; then
         kill -3 $PID

fi
         if [ $? -ne 0 ]
         then
            echo "Failed to dump youservice."
            exit 1
         else
            echo "Dumped youservice."
        fi
         ;;
      *)  
        echo "Usage: youservice { console | start | stop | restart | status | dump }"
    esac

3)执行 hkconfig youservice on   将服务加入启动

kconfig -a youservice on

服务脚本修改后,最好执行一下 systemctl --system daemon-reload 可能是用来刷新的

时隔两年最近再次折腾opensuse 的一些笔记 - opensuse linux java service shell的更多相关文章

  1. 时隔3年,再次折腾BlackBerry 8830!

    2010年手头换得8830,之后就是好几番刷机.解SPC.倒腾各种软件..算软件注册码..那个时候记得最难弄的注册码就是crunchSMS.需要运行虚拟机来从内存地址读取注册码..不过黑莓真的很经得起 ...

  2. 安装opensuse的笔记-重庆linux开源组织

    mate: 伙伴 matey: 融洽的, 易于亲近的. get matey with sb. poison: a. 有毒的, n.毒药/毒酒v. 下毒, 破坏, 污染 slander [ 撕烂的~~] ...

  3. Java执行shell脚本并返回结果两种方法的完整代码

    Java执行shell脚本并返回结果两种方法的完整代码 简单的是直接传入String字符串,这种不能执行echo 或者需要调用其他进程的命令(比如调用postfix发送邮件命令就不起作用) 执行复杂的 ...

  4. 2019.11.13课堂实验之用Linux下的shell脚本完成两文本交替输出

    有两个文本如下,实际中并不知道两文本各有多少行: 文本1.txt aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ccccccccccccccccccccccccccc ...

  5. 时隔两个月再写的Echarts(Enterprise Charts,商业级数据图表)一文

    简介 ECharts,缩写来自Enterprise Charts,商业级数据图表,一个纯Javascript的图表库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE6/7/8/9/10 ...

  6. 简单的两数之和再次乱入<< Add Two Numbers >>

    请看题目描述: You are given two linked lists representing two non-negative numbers. The digits are stored ...

  7. android:首页点击返回键,两秒内再次点击退出系统

    //记录用户首次点击返回键的时间 private long firstTime = 0; /** * 通过监听keyUp 实现双击返回键退出程序 * @param keyCode * @param e ...

  8. 时隔两天,三星再称GalaxyFold已准备就绪,王自如的脸还好吗?

    编辑 | 禾斗 出品 | 于见(mpyujian) 据消息人士透露,三星已经完成对其有缺陷的折叠智能手机进行了重新设计,Galaxy Fold准备适时再度推出,但问题是,作为消费者,我们准备好了吗? ...

  9. 无U盘安装Linux openSUSE(通过硬盘安装Linux)

    一.说明 为什么会想着用硬盘安装Linux?只是因为我陆陆续续买了两个U盘,然后它们都丢了,就没再买了.然而现在又想装个openSUSE,没有U盘,只能想办法通过硬盘安装. 记录自己走过的弯路,同时也 ...

随机推荐

  1. PAT 1001. 害死人不偿命的(3n+1)猜想 (15)

    卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半.这样一直反复砍下去,最后一定在某一步得到 n=1.卡拉兹在1950年的世界 ...

  2. ssh IP打通,hadoop启动失败

    ssh ip 无密码打通,hadoop启动失败 报错为:host'主机名' can't be established. 纠结了接近一个多小时 之后必须ssh 主机名 , yes一下,发现hadoop能 ...

  3. java 动态编译

    public class Main { public static void main(String[] args) { System.out.println("Hello World!&q ...

  4. 在django中使用自定义标签实现分页功能

    效果演示: github地址:https://github.com/mncu/django_projects/tree/master/django_projects/pagination_test 本 ...

  5. mysql 查询去除空格字符然后倒入新表

    /* 导入数据的时候,有空白字符,去除一下然后导出. 四年前干的事,现在再干一遍. */ $dbhost= '127.0.0.1'; $dbuser= 'root'; $dbpass= '123456 ...

  6. web初学之jdbc连接数据库

    一直没有找到bug,初次接触jdbc找问题也是比较生疏.. 抛出异常: 出错点是没有在build path下导入mysql驱动jar包,发现问题,导入,成功解决问题.

  7. 在MS SQLSERVER中如何最快的速度清空所有用户表的数据

    有时候我们需要清空数据库中所有用户表的数据,如果一张表一张表的清空的话,遇到一个庞大的数据系统估计得崩溃了.  用游标加上用变量来引用表名就可以做到这一点. 用变量来引用表名对表操作可以用在存储过程中 ...

  8. js灵活打印web页面区域内容的通用方法

      我们做网站,经常需要打印页面指定区域的内容,而网上关于这块的说法很多,各种各样的打印控件也不少.但许多打印方案都不怎么好,至少我不喜欢,要么封装复杂,要么难以维护.正好现在的项目也需要用到 ...

  9. JAVA学习<六>

    1.Java中的局部变量和成员变量: 2.变量同名,优先方法的局部变量. 3. 4.构造方法: 5.Java 中的 static 使用之静态变量: Java 中被 static 修饰的成员称为静态成员 ...

  10. 简单的jquery插件写法之一

    http://jsfiddle.net/kyu0hdmx/embedded/#HTML