`
chembo
  • 浏览: 938957 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

linux关闭进程方法大全【转】

阅读更多
杀死进程最安全的方法是单纯使用kill命令,不加修饰符,不带标志。
首先使用ps -ef命令确定要杀死进程的PID,然后输入以下命令:
# kill -pid
注释:标准的kill命令通常都能达到目的。终止有问题的进程,并把进程的资源释放给系统。然而,如果进程启动了子进程,只杀死父进程,子进程仍在运行,因此仍消耗资源。为了防止这些所谓的“僵尸进程”,应确保在杀死父进程之前,先杀死其所有的子进程。
*确定要杀死进程的PID或PPID
# ps -ef | grep httpd

*以优雅的方式结束进程
# kill -l PID
-l选项告诉kill命令用好像启动进程的用户已注销的方式结束进程。当使用该选项时,kill命令也试图杀死所留下的子进程。但这个命令也不是总能成功--或许仍然需要先手工杀死子进程,然后再杀死父进程。

*TERM信号
给父进程发送一个TERM信号,试图杀死它和它的子进程。
# kill -TERM PPID

*killall命令
killall命令杀死同一进程组内的所有进程。其允许指定要终止的进程的名称,而非PID。
# killall httpd

*停止和重启进程
有时候只想简单的停止和重启进程。如下:
# kill -HUP PID
该命令让Linux和缓的执行进程关闭,然后立即重启。在配置应用程序的时候,这个命令很方便,在对配置文件修改后需要重启进程时就可以执行此命令。

*绝杀 kill -9 PID
同意的 kill -s SIGKILL
这个强大和危险的命令迫使进程在运行时突然终止,进程在结束后不能自我清理。危害是导致系统资源无法正常释放,一般不推荐使用,除非其他办法都无效。
当使用此命令时,一定要通过ps -ef确认没有剩下任何僵尸进程。只能通过终止父进程来消除僵尸进程。如果僵尸进程被init收养,问题就比较严重了。杀死init进程意味着关闭系统。
如果系统中有僵尸进程,并且其父进程是init,而且僵尸进程占用了大量的系统资源,那么就需要在某个时候重启机器以清除进程表了。

源地址:http://www.yuanma.org/data/2007/0516/article_2600.htm
分享到:
评论

相关推荐

    Linux守护进程的编程方法.pdf

    ### Linux守护进程的编程方法详解 #### 一、守护进程及其特性 守护进程(Daemon)是一种特殊的进程,它运行在后台,独立于控制终端,并且周期性地执行特定任务或等待处理某些事件。Linux系统中许多重要的服务都是...

    Linux系统下守护进程编程方法

    ### Linux系统下守护进程编程方法 #### 一、守护进程概览 守护进程(Daemons)是Linux系统中一类特殊的服务程序,它们通常在后台运行,没有控制终端,也不依赖于任何登录Shell。守护进程的设计目标是高可靠性,...

    linux进程函数大全

    在Linux操作系统中,进程是程序执行的实例。本篇文章主要探讨了几个与进程管理相关的函数:atexit、execl、execlp以及execv。这些函数允许程序员在程序执行的不同阶段进行控制,如设置程序结束前要调用的函数,或者...

    Linux系统中守护进程的创建方法.pdf

    "Linux系统中守护进程的创建方法" Linux 系统中守护进程是指在后台运行而又无终端或登录 shell 与之相关联的进程。守护进程可以周期性地执行某种任务或等待处理某些特定的事件,是一种很有用的进程。Linux 的...

    编写Linux守护进程

    编写 Linux 守护进程 Linux/Unix 守护进程是指在后台运行的进程,不与控制终端交互,独立于控制终端的输入/输出操作。编写 Linux 守护进程需要了解多个概念,如子进程、进程组、会晤期、信号机制、文件、目录和控制...

    LINUX守护进程介绍

    Linux守护进程是Linux系统中的一种特殊进程,它们在系统启动后独立运行,通常与用户的交互较少,负责执行长期持续的任务,如网络服务、系统监控、定时任务等。这些守护进程在后台持续工作,确保系统的正常运行和服务...

    操作系统实验报告(LINUX进程间通信)

    消息队列是Linux进程间通信的一种高级方法,允许多个进程共享同一个消息队列。每个共享消息队列的进程都可以发送和接收消息,并且可以指定消息的类型和优先级。Linux提供了四个系统调用来操作消息队列:msgget、...

    linux进程间通信ppt

    【Linux进程间通信】是操作系统中进程协作的重要方式,它允许不同的进程共享数据和资源,协同完成任务。在Linux系统中,进程间通信(IPC,Inter-Process Communication)包括多种技术,如管道、信号、信号量、共享...

    Linux创建进程

    ### Linux创建进程:详解与代码实现 在深入探讨如何在Linux环境下使用C语言创建进程之前,我们先简要回顾一下进程的基本概念以及它在操作系统中的重要性。进程是正在执行的程序的一个实例,由程序段、数据段和进程...

    关于Linux的进程管理控制器.zip

    本资料包"关于Linux的进程管理控制器.zip"提供了一个基于C语言实现的简单进程管理系统,具备显示当前运行进程、控制进程执行以及设置定时关机等功能。通过分析这个程序,我们可以深入了解Linux进程管理的相关知识点...

    linux进程监控和进程守护程序

    接着,监控程序需要启动进程,这通常意味着通过系统命令如`nohup`或者`systemd`等来确保进程在后台稳定运行,即使关闭终端也不会影响进程的运行。在进程被启动之后,监控程序就会不断地对其进行监控,查看进程是否...

    Linux下Tomcat的启动、关闭、杀死进程

    ### Linux下Tomcat的启动、关闭、杀死进程 在Linux环境下部署和管理Java Web应用程序时,Apache Tomcat作为一款广泛使用的应用服务器,其操作过程对于系统管理员和开发人员来说至关重要。本文将详细介绍如何在Linux...

    Linux进程间通信

    此外,Linux还提供了其他进程间通信机制,如消息队列、信号量、共享内存、套接字等,这些机制更加复杂但功能更强大,可以根据具体需求选择合适的方法。了解并掌握这些通信方式对于开发高效、可靠的多进程应用程序至...

    Linux 进程间通信

    ### Linux 进程间通信详解 #### 一、管道及有名管道 在深入探讨Linux中的进程间通信(IPC)机制之前,我们先了解一个基本概念:**进程**。进程是程序执行的一个实例,每个进程都有自己的地址空间。当多个进程需要...

    linux多进程编程

    - `fork()`是Linux中创建新进程的主要方法,调用后,父进程和子进程共享大部分资源,但拥有独立的PID和PPID。 - 通过`fork()`创建的子进程可以继续调用`fork()`,形成进程树。 5. **进程的退出**: - 使用`exit...

    【ASP.NET编程知识】.net Core 3.0 WebApi 创建Linux守护进程的方法.docx

    .NET Core 3.0 WebApi 创建 Linux 守护进程的方法 在 Linux 服务器上,直接使用 dotnet <app_assembly.dll> 命令来运行 .NET Core WebApi 应用程序可能会导致应用程序不稳定,关闭终端窗口后应用程序也会停止运行。...

    Linux 守护进程

    ### Linux守护进程(Daemons):编程方法与源码实例解析 #### 一、守护进程的概念与作用 在Linux系统中,守护进程(Daemons)是一类在后台运行且无控制终端的进程,它们通常在系统启动时由init程序启动,并在系统...

Global site tag (gtag.js) - Google Analytics