zoukankan      html  css  js  c++  java
  • 015 Linux中常用的信号、HUP信号

    设置进程的nice值

    # 设置进程的优先级
    nice -n -11 bash test.sh
    
    -n : 设置优先级
    	普通用户:(0~19)
    	超级用户:(-20~19)
    	
    # 给指定进程设置优先级
    renice [设置优先级] pid
    
    

    Linux常用系统信号

    Signal Name Single Value Effect
    SIGHUP 1 重载
    SIGINT 2 中断信号
    SIGKILL 9 发出杀死信号
    SIGTERM 15 发出终止信号
    SIGSTOP 17, 19, 23 停止进程
    SIGCONT 18 恢复进程
    中断信号
    	ctrl + c(中断)
    	ctrl + z(杀死)
    
    	INT(2) : 
    		kill -[信号名称|信号ID] pid
    		
    		kill -SIGINT  PID
    		kill -INT     PID
    		kill -2       PID 
    
    退出信号:
    	ctrl + d
    
    暂停信号:将进程暂停
    	SIGTSTP(20)
    		kill -20 PID 
    		kill -SIGTSTP PID 
    		kill -TSTP PID
    
    杀死进程信号
    	SIGKILL
    		kill -9 PID 
    		kill -SIGKILL PID
    		kill -KILL PID
    注:不能够被捕捉
    
    终止信号
    	SIGTREM
    		kill -15 PID 
    		kill -SIGTERM PID
    		kill -TERM PID
    
    注:优雅终止进程
    
    暂停和恢复信号
    	SIGCONT : 恢复
    	SIGSTOP :暂停
    
    重载信号
    	SIGHUP(1)
    

    关于HUP信号

    如果想让我们的进程在后台一直运行,不要因为用户注销(logout)而去结束掉所有的子进程

    nohup

    后台启动,会在当前目录生成一个nohub.out文件,用于执行的命令的输出。

    #格式
    nohup [执行的命令] &
    
    #例
    nohup ping baidu.com &
    

    setsid

    原理与nohop类似,实际上是开了一个孤儿进程

    #例
    setsid ping baidu.com &
    

    在shell中提交任务

    (ping baidu.com &)
    

    screen

    原理分析:开了一个新的shell全屏窗口,screen程序会帮我们管理运行命令,退出screen,我们的命令依旧会运行,如果关闭掉screen所在的终端,screen程序的ppid会变成1,所以screen不会被杀死,对应着它帮我们管理的命令也不会退出。

    yum install screen -y
    
    #screen常用参数
    -S	创建screen会话时为会话指定的一个名字
    -d	启动一个开始就处于断开模式的会话
    -r	重新连接一个断开的会话
    

    后台管理进程

    [root@aliyun ~]# sleep 1000 &
    [1] 21981
    [root@aliyun ~]# sleep 2000 &
    [2] 21982
    [root@aliyun ~]# jobs
    [1]-  Running                 sleep 1000 &
    [2]+  Running                 sleep 2000 &
    [root@aliyun ~]# fg %1
    sleep 1000
    
    
    #jobs查看后台运行的程序
    #fg %1 将1编号的程序拉取到前端运行
    
    
  • 相关阅读:
    Linux下vsftpd的安装,Java上传文件实现。
    springboot整合shiro、redis及相关优化
    spring boot 配置文件
    spring boot 解决跨域访问
    spring-boot与spring-data-JPA的简单整合
    QQ空间里的“可能认识的人”深层思考????
    unix
    linux
    Linux中fork()函数详解
    word is too tall: try to use less letters, smaller font or bigger background 报错 java程序 验证码不显示
  • 原文地址:https://www.cnblogs.com/zhaokunhao/p/14573716.html
Copyright © 2011-2022 走看看