精华内容
下载资源
问答
  • 2022-03-18 10:03:45

    问题描述

    使用jps查看Java程序(hadoop、hbase、storm)进程时,进程没有正常结束,(如:占用资源过大挂掉、没有结束就进程就直接重启服务器)原有进程会变成--process information unavailable这样的空值。有时过一段时间后可以自动消失,手动清理方法:


    解决方案:

    cd /tmp进入/tmp目录,ll查看内容可以发现很多hersperfdata_{用户名}这样的目录。是因为进程虽然在内存中关闭了,但是Linux还会在/tmp下寻找这些临时文件,而此时临时文件并没有没正常删除。
    执行rm -rf hersperfdata_{用户名}清楚指定的残留进程即可。

    更多相关内容
  • 文章目录Process简单认识几个关于Linux Process的重要角色细心地,有个问题:psnicekillbg&fg Process简单认识 进程就是被执行的程序。 每个进程都是一个运行的实体, 都有自己的地址空间,并占用一定的系统...


    Process简单认识

    • 进程就是被执行的程序。
    • 每个进程都是一个运行的实体,
      都有自己的地址空间,并占用一定的系统资源。

    口说话地说:
    就好比, 写了一份活动策划书(程序代码),
    然后 ,让相关人员(比如操作系统) 按照策划书,有条不紊地举行活动(进程)


    换专业一点点的说:
    程序,是人类用编程语言编写的,可实现一定功能,并且可执行的代码集合。
    而进程是正在执行中的程序。
    当程序被执行时,执行人的权限和属性,以及程序的代码都会被加载入内存,
    同时, 操作系统给这个进程分配一个 ID,称为 PID(processID)。


    于是,

    A process is created
    every time you run an external command
    and is removed after the command finishes its execution
    看到的懂吗🤡🤡
    就是说,执行一个Linux命令,就一个Linux Process被创建,
    当命令执行完,这个process也就被终结 / 移除(removed)了


    几个关于Linux Process的重要角色

    角色任务
    Processor Scheduler(处理器调度器?)The operating system code that implements the CPU scheduling algorithm——用来实现CPU调度的操作系统代码
    Dispatcher (调度器?)The OS code that takes the CPU away from the current process and hands it over to the newly scheduled process——用来将当前进程占用的CPU 调离到(分发到) ,被调度的进程的操作系统代码
    Process’s Priority(进程优先级)进程的优先级值是通过Nice值和CPU使用率计算的
    Nice value (Nice值)Nice value is a integer between -20 and 19(Nice值越小,优先级越高-20最高)

    进程的nice值不是进程的优先级,
    但是进程nice值会影响到进程的优先级变化。


    细心地,有个问题:

    Dispatcher 和 Scheduler 的中文都译作调度器。
    那二者的区别何在?

    知乎上的回答
    我从这两个词对应的名词上来解释
    schedule:scheduler
    dispatch:dispatcher
    scheduler强调:调度。
    dispatcher强调:分发。
    两者的不同点在于,调度会按照事先设计好的逻辑(定时策略,延时策略)去执行。
    而分发在于,按照一定的策略,将任务派发给具体的执行器(如cpu)去执行。


    we may consider a dispatching system as a scheduling system with a zero planning horizon. (引自某一篇调度综述文章)


    Shell命令的执行

    大致有两种命令:

    Shell内置命令internal (built-in) command扩展命令 external command
    命令代码是shell进程的一部分代码在文件中;文件的内容可以是二进制代码或shell脚本
    bg, cd,continue, echo, execgrep,more ,cat, mkdir, rmdir, ls

    使用 type + [命令] 可以查看命令类型:
    在这里插入图片描述
    在这里插入图片描述

    For executing an external binary command

    执行一个扩展的二进制命令

    1. UNIX进程可以使用fork系统调用来创建另一个进程
      比如在bash下执行grep命令。bash就forking了一个子进程。
    2. 将子进程变成命令,然后被执行
      于是就用到exec系统调用
      可执行代码覆盖一个(子)进程使之成为一条可执行命令

    在这里插入图片描述
    看图说话:

    1. 执行外部命令,创建子进程,父进程等待。
    2. 此时,内核把程序loads到main memory,覆盖(exec)这个子进程。
    3. 执行完毕后,父进程被唤醒。

    更具体一点,Take an external command sort for example
    在这里插入图片描述


    And Take the execution of a shell script file for example
    在这里插入图片描述

    小结:
    shell串联使用fork和exec系统调用来执行外部二进制命令。


    下面介绍与进程相关的几个命令

    ps

    先看一条命令:查看当前登录,产生了哪些进程
    ~$ ps - l
    

    在这里插入图片描述
    字段解释:

    字段含义
    UID执行者的身份
    PID进程ID
    PPID父进程的代号
    PRI可被执行的优先级,其值越小越早被执行
    NInice值
    TTY该进程是在哪个终端运行的。pts/0 ~ 255 代表虚拟终端,一般是远程连接的终端,第一个远程连接占用 pts/0,第二个远程连接占用 pts/1,依次増长。
    TIME占用 CPU 的运算时间,注意不是系统时间
    CMD产生此进程的命令名。

    常用参数

    参数名意义
    a显示一个终端的所有进程,除会话引线外;
    u显示进程的归属用户及内存的使用情况;
    x显示没有控制终端的进程;
    -l长格式显示更加详细的信息;
    -e显示所有进程;

    “ps -l” 只能看到当前 Shell 产生的进程;

    举例

    在这里插入图片描述


    nice

    每个进程都有一个介于 [-20,19] 之间的 nice 值。
    默认,进程nice值为 0。

    1. 可以给要启动的进程赋予 NI 值,
    2. 不可以修改已运行进程的 NI 值。

    命令格式

    [root@localhost ~] $ nice [-n NI值] 命令
    

    举例

    在这里插入图片描述


    kill

    《杀死进程》

    1. 从本质上讲,kill命令向进程发送一个信号
      至于这个信号是什么,是用户指定的。
    2. 然后系统内核收到的信号类型,对指定进程进行相应的操作。

    格式

    root@localhost ~$ kill [信号] PID
    
    信号信号名意义
    0EXIT程序退出时收到该信息。
    1HUP挂掉电话线、终端连接的挂起信号,
    2INT结束进程,非强制。 “Ctrl+C” ,就是一个 kill -2 的信号。
    3QUIT退出
    9KILLSure kill 必然杀死进程
    11SEGV段错误。
    15TERM默认信号。正常结束进程

    bg&fg

    几点说明:

    1. bg&fg:backgrond and foreground Process
    2. 在后台运行进程:在命令行后面附加一个&符号
    3. CTRL + Z:暂停前台进程
    4. Display all jobs status:jobs
    5. Background -> Foreground :fg [%jobnum] 让后台进程到前台运行
    6. suspended -> Background :bg [%jobnum] 让暂停进程到后台运行

    如图:
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    UNIX Daemons
    Daemons(守护进程)是在后台运行的系统进程
    责任:
    1.向用户提供各种类型的服务
    2. 处理系统管理任务

    展开全文
  • node中常用的到的环境变量是NODE_ENV,首先查看是否存在 echo $NODE_ENV 如果不存在则添加环境变量 export NODE_ENV=production ...删除环境变量 unset NODE_ENV 显示所有的环境变量 env

    配置临时变量 

    以下配置是临时变量,关闭命令行窗口后之前设置的环境变量都会失效

    node中常用的到的环境变量是NODE_ENV,首先查看是否存在

    echo $NODE_ENV

    如果不存在则添加环境变量

    export NODE_ENV=production

     删除环境变量

    unset NODE_ENV

    显示所有的环境变量

    env

    配置永久变量

    展开全文
  • 本人今天配置hadoop,在查看hadoop服务状态的时候,jps报了process information unavailable的信息,在这里提出解决方案。 详情截图: 分析缘由: 使用jps命令查看java进程,经常出现类似"1850 – process ...

    本人今天配置hadoop,在查看hadoop服务状态的时候,jps报了process information unavailable的信息,在这里提出解决方案。

    详情截图:

    在这里插入图片描述
    分析缘由:
    使用jps命令查看java进程,经常出现类似"1850 – process information unavailable",可能有两点原因:
    1.1850这个PID存在,原因为当前ID为其他用户启动,该用户没有查看权限。
    2.1850这个PID不存在。

    解决方案:
    1.首先使用ps -ef 命令查看该进程是否存在

    [root@vmmaster sbin]# ps -ef|grep 1850
    root       5600   1748  0 11:55 pts/0    00:00:00 grep --color=auto 1850
    

    在这里插入图片描述

    2如果不存在,首先去/目录下的tmp目录下去查找hsperfdata开头的目录,再分别到/tmp/hsperfdata_用户名 目录下查看
    在这里插入图片描述

    (注意:/tmp/hsperfdata_用户名 我这里是zc用户)

    [root@vmmaster /]# cd /tmp/hsperfdata_zc/
    [root@vmmaster hsperfdata_zc]# ls
    1850
    

    在这里插入图片描述

    3.删除残留进程,根据PID找出对应的文件并且删除即可。

    [root@vmmaster hsperfdata_zc]# rm -rf 1850
    [root@vmmaster hsperfdata_zc]# cd /opt/bigdata/hadoop/hadoop260/sbin/
    [root@vmmaster sbin]# jps
    4912 SecondaryNameNode
    5059 ResourceManager
    5507 JobHistoryServer
    4759 DataNode
    5337 NodeManager
    4639 NameNode
    5663 Jps
    

    在这里插入图片描述

    问题解决,可以发现1850不存在了!

    展开全文
  • linux删除用户出现user xxx is currently used by process xxx的解决方案 当我们想要删除或更改某个用户名时发现user xxx is currently used by process xxx这个报错,错误的原因可能是因为创建user1再登录到user1后...
  • 使用Linux的朋友一定都会遇到这种错误,非常简单也非常常见 造成该错误的原因主要是:在对用户进行删除操作之前,创建并切换了要删除的用户账号,导致该账号还有进程在占用,无法删除。 userdel: user xxx is ...
  • 造成该进程的主要原因是在不同用户下启动的进程未删除 (process information unavailable)进程信息不可用
  • linux系统中,使用su root命令从其它用户切换到root用户后,使用userdel命令删除用户时,显示userdel:user xxx is currently used by process 2651 原因: 切换用户后并没有退出登录,某些进程还占用着刚才登陆的...
  • Linux中使用userdel命令删除用户时出现错误 “userdel: user XXX is currently used by process XXX” [root@localhost ~]# userdel wqd userdel: user wqdis currently used by process 10479 删除不成功 **出现...
  • 其实 userdel 命令实际上是修改了系统的用户账号文件 /etc/passwd、/etc/shadow 以及 /etc/group 文件,这与 Linux 系统“一切操作皆文件”的思想正好吻合。 值得注意的是,如果有该要删除用户相关的进程正在运行,...
  • linux process management

    千次阅读 2014-10-16 14:55:37
    CREAT PROCESS fork() | clone(参数,决定父子函数的共享内容) | do_fork() | copy_process() | dup_task_struct() 创建子进程的内核堆栈,复制父进程的进程描述符(task_struct) 进程描述符...
  • 很多时候Linux用久了打开JPS查看进程就会发现有很多不明来历的空白的进程或者名叫【-- process information unavailable】的进程,放着不管也没关系,但是每次打开JPS难免会强迫症发作。。。。。所以今天就分享一下...
  • 今天在使用搭建的hadoop集群的时候,出现了2724 – process information unavailable的情况。 下面是出错原因和解决方案:(我是第二种情况,删除掉对应的文件再次jps查看该进程不存在) 2724这个PID存在,但该PID...
  • 原因是你切换过多次用户,要么退出重进(或者 ctrl + D 来退出当前用户,直到最后一个)
  • 一般情况下是自己运存被占用过多,使用的程序调用的需求超出了。 查看内存使用 free -h ...删除SZ列下,数字最大的进程 ...一般视情况删除部分进程,然后就可以继续调用你刚刚报错的指令。 ...
  • 如何改变文本的样式 强调文本 强调文本 加粗文本 加粗文本 标记文本 删除文本 引用文本 H2O is是液体。 210 运算结果是 1024. 插入链接与图片 链接: link. 图片: 带尺寸的图片: 居中的图片: 居中并且带尺寸的图片: ...
  • 实验环境 Kernel Version: 4.15.0-109-generic Operating System: Ubuntu 18.04.5 LTS ...Before looking at the Linux implementation, first a general Unix description of threads, processes
  • Linux 无法使用userdel 删除用户和组的解决方案 简述: 今天在看书的时候,看到有个实例,手痒痒的跟着做了起来。。。但是,出现问题了。。测试的用户和组不能删除。。 情况: 一般我们移除,都是先把用户从组中...
  • linux服务器jps报process information unavailable **  在Linux下执行 jps 是快速查看Java程序进程的命令,一般情况下hadoop,hbase,storm等进程都是通过jps查看,有些时候因为进程没有被正常结束,比如资源占用过...
  • 1.process-exporter下载 wget https://github.com/ncabatoff/process-exporter/releases/download/v0.7.5/process-exporter-0.7.5.linux-amd64.tar.gz ...tar -xf process-exporter-0.7.5.linux-amd64
  • 一开始直接用:userdel -r xxx 出现错误:userdel: user xxx is currently used by ...找到需要删除的用户那行,按dd删掉,:wq强制保存退出 [root@ home]#vipw -s 找到用户所属组,也dd删掉,保存:wq或者:wq! ...
  • sudo killall -TERM -u xxxxx, xxxxx对应报错信息里面的进程号, sudo userdel -r XXX XXX表示你要删除的用户名。
  • 导读今天给大家介绍的是一款免费且...Process Hacker项目地址官方网站:https://processhacker.sourceforge.io/GitHub:https://github.com/processhacker/processhacker系统要求:Windows7及以上版本,支持32位或6...
  • Java中执行Linux文件删除命令 rm -rf

    千次阅读 2021-12-17 09:28:52
    Process p; InputStreamReader inputStreamReader = null; BufferedReader br = null; String co = "rm -rf " + destDirPath; try { p = Runtime.getRuntime().exec(co); inputStreamReader = new ...
  • linux删除目录命令If you want to remove several subdirectories within another directory using the command line in Linux, generally you have to use the rm command several times. However, there is a ...
  • linux彻底删除nginx

    千次阅读 2021-05-14 13:36:31
    卸载 删除 nginx1.删除nginx,–purge包括配置文件sudo apt-get --purge remove nginx12.自动移除全部不使用的软件包sudo apt-get autoremove13.罗列出与nginx相关的软件dpkg --get-selections|grep nginx1执行结果:...
  • Linux 删除用户时 ‘userdel: user hm is currently used by process 241935’我们在linux上管理用户时经常遇到删除用户的情况, 我们通常使用userdel删除用户 但是会遇到用户被占用的情况 只需要把占用的进程号kill...
  • Linux下执行 jps 是快速查看Java程序进程的命令,一般情况下hadoop,hbase,storm等进程都是通过jps查看,有些时候因为进程没有被正常结束,比如资源占用过大时挂掉或者没有结束进程就直接重启计算机,会导致原有...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 115,145
精华内容 46,058
关键字:

linux process 删除