linux进程管理

来源:互联网 发布:厦门瑶池集庆骗局知乎 编辑:程序博客网 时间:2024/04/29 15:24

1,进程和进程控制的概念
    查看进程状态
            w查看个别用户的进程  :w username
                  
                 JCPU:所有消耗时间
                 PCPU 执行该程序所消耗的时间
                 WHAT  执行的程序
                 from
                 IDLE
                 load average
        ps -aux 
               -a 显示所有用户的进程
               -u 显示用户名和启动时间
               -x 显示没有控制终端的进程(系统自启)
        ps -el   
               -e 显示所有进程,包括有控制终端进程
               -l 以格式显示

        PID : 进程号
        PPID:父进程的进程号 
        TTY:进程启动的终端         
        STAT:
             s:休眠
             D:不可中断的休眠
             R:正在运行
             Z:僵死状态
             T:停止
         NI:进程优先级
         TIME:
         CMD/COMMAND    
         START
         

          ps -aux(-l) --sort pid(TIME,PID,UID)  排序进程
          ps -axu|grep xxx(要查的内容) 管道传输到文件
                  grep 查找出与xxx相同的字符串
    进程的挂起和恢复
    杀死或重新启动进程
    改变进程的运行优先级      

 

2,进程状态的查看与控制
         杀死进程
         为什么要杀死进程
          
         kill 结束进程命令
         kill 进程号

         kill -s 信号 进程号
         kill -l 列出所有的信号
         
         killall 进程名(CMD)
         
         xkill 在图形界面杀死进程

         改变进程的优先级(-20 19)
          
    nice -n command & 指定程序运行优先级

    renice npid     改变一个正在运行的进程的优先级

    top可以实时展现改变的进程
        默认每5秒刷新一次(动态的显示)
     top -d 3 指定时间刷新
     top -c 显示整个命令行而不仅只是显示命令名
     -q 立刻更新所显示的信息
      
       进入top界面之后
       top :
           u:查看用户状态
           k: 杀死进程
           h: ?
           r:重新设置优先级
           s:重改时间间隔


       挂起可以 ctrl+z 如果开启时可以在后面使用&

        command & 后台运行
        
        command
        ctrl+c终止  ctrl+z挂起
                      
         jobs
         fg 4 拿到前台来
      
         bg 4 恢复到后台
                
      
3,一次性安排进程任务

at     安排作业在某一时刻执行一次
batch   安排作业在系统负载不重时执行一次

第一:开启
      atd  service adt start
      
      at 时间
           1.绝对计时法
                
              midnight noon teatime
              
              HH:MM[today]
              HH:MM tomorrow
              HH:mm 星期

              HH:MM mm/dd/yyyy
            2.相对计时方法
 
                 now + n minutes
                 now + n hours
                 now + n day

             例 今天下午5:30(现在是中午12:30)
                     at 5:30pm
                     at 17:30
                     at 17:30 today
                     at now +5hours                 
                     at now + 300 minutes
                     at 17:30 16.9.2009
                     at 17:30  9/16/2009

      内容:在某个时间点执行某个程序(命令)
      at -l   atq查看   
     
      例:
         at 10:56
         >/bin/cp -r /root/*/home/lijian  //命令和目录都要他的路径,即权格式
         >/bin/echo"*********">root/one.txt 输出*******到one

         ctrl +D 返回
       
         先查看atq
         后at -d 或 atrm 删除
       
         使用命令文件(同于shell编程,先将所有的命令先写入文件,然后设定时间,一次性执行)
         at -f 文件 时间点
         
          at
                        
       at的执行结果和配置文件
               at的结果 通过邮件寄给提交这个命令的用户


       at 配置文件:限制用户使用at命令
             /etc/at.allow
             列在此文件德尔用户可以使用at
              不存在则查/etc/at.deny
               
            /etc/at.deny

            列在此文件德尔用户不可以使用at

             两文件都没有,则只有root可以使用root

             两文件都有且为空,则所有用户都可以使用at


   
4,周期性安排进程任务

    crond
    1,service crond start

    crond 进程搜索crontab文件并载入内存
  
   crontab文件即/var/spool/cron/目录下以用户名命名的文件
  
   crond首先检查crontab文件,如没有此文件,则休眠,释放资源。
   crond每分钟醒来一次,查看crontab文件决定当前是否有需要执行的命令
  执行后,将通过邮件发给crontab的用户
    crontab -e编辑此文件,结束时,会自动安装
    cronatb -l将使在标准输出中输出显示当前的crontab
    crontab -r删除此文件

此文件由6部分组成
     minute: 一小时的哪一分钟[0--59]
     hour :一天中的哪一个小时[0--23]
     day-of-month:一个月中的哪一天[1--31]
     month-of-year :一年的哪一月[1--12]
     day-of-week:一周中的哪一天[0--6]

     commands:执行的命令,也可以使用券路径 /bin/cp 不能是cp
注意:不能为空,可以使用通配符 * ,每个字段可以指定多个值逗号隔开
     命令给出绝对路径,用户得具有运行的权限。     

15 3 * * 1-5 /bin/find $HOME -name core 2> /dev/null|rm-f
每周一到五的3:15

crond 配置文件:限制用户使用crond命令
             /etc/crond.allow
             列在此文件的用户可以使用at
              不存在则查/etc/crond.deny
               
            /etc/crond.deny

            列在此文件的用户不可以使用crond

             两文件都没有,则只有root可以使用root

             两文件都有且为空,则所有用户都可以使用crond

 

 

 

 

 

 

0 0
原创粉丝点击