时隔两年最近再次折腾opensuse 的一些笔记 - opensuse linux java service shell
时隔两年最近再次折腾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的更多相关文章
- 时隔3年,再次折腾BlackBerry 8830!
2010年手头换得8830,之后就是好几番刷机.解SPC.倒腾各种软件..算软件注册码..那个时候记得最难弄的注册码就是crunchSMS.需要运行虚拟机来从内存地址读取注册码..不过黑莓真的很经得起 ...
- 安装opensuse的笔记-重庆linux开源组织
mate: 伙伴 matey: 融洽的, 易于亲近的. get matey with sb. poison: a. 有毒的, n.毒药/毒酒v. 下毒, 破坏, 污染 slander [ 撕烂的~~] ...
- Java执行shell脚本并返回结果两种方法的完整代码
Java执行shell脚本并返回结果两种方法的完整代码 简单的是直接传入String字符串,这种不能执行echo 或者需要调用其他进程的命令(比如调用postfix发送邮件命令就不起作用) 执行复杂的 ...
- 2019.11.13课堂实验之用Linux下的shell脚本完成两文本交替输出
有两个文本如下,实际中并不知道两文本各有多少行: 文本1.txt aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ccccccccccccccccccccccccccc ...
- 时隔两个月再写的Echarts(Enterprise Charts,商业级数据图表)一文
简介 ECharts,缩写来自Enterprise Charts,商业级数据图表,一个纯Javascript的图表库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE6/7/8/9/10 ...
- 简单的两数之和再次乱入<< Add Two Numbers >>
请看题目描述: You are given two linked lists representing two non-negative numbers. The digits are stored ...
- android:首页点击返回键,两秒内再次点击退出系统
//记录用户首次点击返回键的时间 private long firstTime = 0; /** * 通过监听keyUp 实现双击返回键退出程序 * @param keyCode * @param e ...
- 时隔两天,三星再称GalaxyFold已准备就绪,王自如的脸还好吗?
编辑 | 禾斗 出品 | 于见(mpyujian) 据消息人士透露,三星已经完成对其有缺陷的折叠智能手机进行了重新设计,Galaxy Fold准备适时再度推出,但问题是,作为消费者,我们准备好了吗? ...
- 无U盘安装Linux openSUSE(通过硬盘安装Linux)
一.说明 为什么会想着用硬盘安装Linux?只是因为我陆陆续续买了两个U盘,然后它们都丢了,就没再买了.然而现在又想装个openSUSE,没有U盘,只能想办法通过硬盘安装. 记录自己走过的弯路,同时也 ...
随机推荐
- PIC32MZ tutorial -- Watchdog Timer
Watchdog is a very necessary module for embedded system. Someone said that embedded system operates ...
- Hadoop MapReduce编程 API入门系列之压缩和计数器(三十)
不多说,直接上代码. Hadoop MapReduce编程 API入门系列之小文件合并(二十九) 生成的结果,作为输入源. 代码 package zhouls.bigdata.myMapReduce. ...
- sqoop job 踩过的坑
sqoop 执行可以以job形式 也可以执行用命令执行,再用sqoopjob时,踩了几个坑,分享一下 1.服务器重启 由于服务器增加硬盘,需要重启后,发现sqoop job 无法执行,报连接数据库IO ...
- python2.7 爬虫_爬取小说盗墓笔记章节及URL并导入MySQL数据库_20161201
1.爬取页面 http://www.quanshu.net/book/9/9055/ 2.用到模块urllib(网页下载),re正则匹配取得title及titleurl,urlparse(拼接完整ur ...
- 移动端WEB开发,click,touch,tap事件浅析
一.click 和 tap 比较 两者都会在点击时触发,但是在手机WEB端,click会有 200~300 ms,所以请用tap代替click作为点击事件. singleTap和doubleTap 分 ...
- php 解决json_encode中文UNICODE转码问题
用PHP的json_encode来处理中文的时候, 中文都会被编码, 变成不可读的, 类似"\u***"的格式,如果想汉字不进行转码,这里提供三种方法 1.升级PHP,在PHP5. ...
- 实现textarea限制输入字数(包含中文只能输入10个,全ASCII码能够输入20个)
document.getElementById("<%=textBox1.ClientID %>").value 实现textarea限制输入字数(包含中文只能输入10 ...
- MySql生日闰月处理
1. 科普下润年: ①.非整百年能被4整除的为闰年.(如2004年就是闰年,2100年不是闰年) ②.整百年能被400整除的是闰年.(如2000年是闰年,1900年不是闰年) 2. 例: 例如:当 ...
- Android之ADB指令
Android打包过程 aapt Android应用打包工具 adb Android调试桥 下面打包过程,eclipse帮我们自动打包好run as->Android application r ...
- 获取datagrid选择行
var rows = $('#dg').datagrid('getChecked'); var ids = ''; for (var i = 0; i < rows.length; i ...