① 3台linux-centos机器的无秘钥ssh配置都完成了,都安装了jdk,但是ssh xxx jps无效!
通过SSH直接执行远程命令和脚本
这种方式会使用Bash的non-interactive + non-login shell模式,它会创建一个shell,执行完脚本之后便退出,不再需要与用户交互。
no-login shell,顾名思义就是不是在登录Linux系统时启动的(比如你在命令行提示符上输入bash启动)。它不会去执行/etc/profile文件,而会去用户的HOME目录检查.bashrc并加载。
系统执行Shell脚本的时候,就是属于这种non-interactive shell。Bash通过BASH_ENV环境变量来记录要加载的文件,默认情况下这个环境变量并没有设置。如果有指定文件,那么Shell会先去加载这个文件里面的内容,然后再开始执行Shell脚本。
解决方案:
在将要登陆的主机的用户目录下修改.bashrc文件,新增
export java_HOME=/soft/ln/jdk
export PATH=$PATH:$JAVA_HOME/bin
保存退出后
source .bashrc
然后在重新使用ssh命令登陆
② linux 查看zookeeper是否启动
③ linux命令里的jps是什么意思
jps 是java提供的一个显示当前所有java进程pid的命令,适合在linux/unix平台上简单察看当前java进程的一些简单情况。
④ linux命令里的jps是什么意思
jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况。
⑤ linux怎么查看jvm正在使用的哪个垃圾回收器
搜一下jps和jmap命令,是JDK提供的,jps能显示出jvm的进程号,然后用jmap显示jvm的配置和信息
⑥ jdk-7u67-linux-x64中包含jps吗
我的也是这样的,貌似是没有把java的bin文件夹位置写入到 /etc/profile中,你可以直接使用/(java_home)/bin/jps,我现在就是这么办的
⑦ Linux下查看一个进程占用了哪个端口的方法
时候需要在Linux下查看一个进程占用了那个端口,但是只知道进程大致的名称,比如要查看hadoop的namenode在哪个端口上运行,以便在eclipse中连接。
首先用ps命令查看进程的id:
复制代码代码如下:
$ ps -ef | grep Name
其中每一行(很长的时候会占用若干行)的第二个字段就是进程的id。
当然,对于在java虚拟机中运行的进程,比如hadoop的守护进程,可以直接用jsp命令查看:
$ jps | grep Name
或者已经知道进程的确切名称,可以用pidof查看:
$ pidof Name
查看到进程id之后,使用netstat命令查看其占用的端口:
$ netstat -nap | grep pid
⑧ linux服务器占用CPU过高
web应用部署到Linux服务器上,CPU占用过高
公司项目部署到Linux服务器上后,过了一段时间,CPU过高,开始寻找原因
有这么几步:
1.通过top命令(top之后再按shift+H可以显示线程)查看CPU使用率高的线程;
2.将这个线程号转换为16进制;
3.使用jps查看服务器的Java进程号;
4.使用jstack [进程号] 打印当前的进程堆栈;
5.从打印的信息中,找到第2步得到的线程号,看看这个线程在做什么。
不一定一次就能抓准线程状态,可以第1步时多记几个线程。
希望可以帮到你:www.linuxdby.com
⑨ linux系统下用jps命令查看java进程,提示process information unavailable是为什么
一般kill进程是这样的:
比如你要杀掉top进程,
ps-ef|greptop查看top进程因为显示出进程数太多使用grep过滤,
kill-9杀掉top进程,
ps-ef|greptop查看top进程有没杀掉,如图已杀掉