Linux 进程管理笔记

进程管理命令

  ps 显示进程信息 (ps 只显示当前终端看到的进程

    -e 显示不同终端的所有进程 (可用ps -e | more分页显示

    -ef 显示进程信息的同时包含父进程 PPID

    -eLf 显示进程信息的同时包含线程信息NLWP 即为轻量级线程数

    PID为是进程唯一标识符 (进程可以重名) TTY为执行进程终端 pts/0为虚拟终端 tty0为字符终端

    UID为启动进程的用户 进程可以更改自己的所属组

  pstree 显示进程树 (根据进程的PPID 组成的一个进程树

  top 动态显示进程信息

    -p 只显示指定进程信息

    s 更改进程信息刷新时间

    1 将cpu信息合并/分散显示

进程控制 包括调整进程优先级进程作业控制

  调整优先级 :优先级从-20到19 值越小优先级越高

    nice 以指定优先级运行进程 nice -n num ./cmd 以num为优先级运行cmd

    renice 重置正在运行进程的优先级 renice -n num PID 修改PID的优先级为num

  进程作业控制 终端可以分前台后台 前台就是我们输入命令的界面 进程也可以运行在终端后台

    后台运行: 在运行的命令后面加&符号

    调回前台: 使用jobs 可以查看后台运行的命令 然后使用 fg i 可以将任务i调回前台

    暂停任务: ctrl-z 临时暂停并调回后台 但没有结束进程 可使用jobs查看任务列表 使用 fg i 将任务i调回前台运行 使用 bg i将任务调去后台运行.

进程通信: 信号

  kill -l 查看所有信号

  kill -9 PID 结束进程PID (编号为9的信号为SIGKILL

特殊进程:脱离终端运行的进程

  守护进程(daemon)

    特点:1 用户登录之前就启动的进程 2输出结果放到日志文件 3占用根目录

  nohub命令(启动的进程)

    特点:1 会忽略挂起信号 2关闭终端也会继续运行 3忽略输入将输出放到nohub.out 4终端关闭后父进程为1(孤儿进程)

screen 第三方工具 终端关闭时运行的任务会挂起但不会结束  防止因网络错误而影响与服务器的连接

    screen 进入screen运行环境

    ctrl-a d 退出screen环境\

    screen -ls 查看screen会话

    screen -r PID 恢复PID会话

服务管理工具

  service centos6版本的服务管理命令 启动脚本在/etc/init.d/ 需要自己编写启动终止脚本(复杂)

    启动分不同级别 init 0 关机 init 1 单用户启动 init 2 不带网络的多用户启动 init 3 字符多用户 init 5 图形多用户 init 6 重启

    service 服务名称 start

  systemctl centos7版本的服务管理命令 启动脚本放在/usr/lib/systemd/system/*.service 启动脚本简单的多 ([unit] 启动顺序 [service] 提供的服务

    也分不同级别 runlevel[0-6].target  代表含义与init类似

    systemctl start | stop | restart | reload(加载配置文件) | enable(开机运行) | disable 服务名称

    systemctl get-default 获得当前启动级别 

    systemctl set-default  修改默认启动级别

SELinux 安全增强的Linux版本  强制访问控制 进程用户文件 都打上标签 用ps -Z id -Z ls -Z 查看标签

  会降低性能 在生产服务器中通常关闭

  getenforce 查看SELinux 状态  有enforcing permissive disabled三个取值

  setenforce 更改SELinux 状态 但只是临时的

  可修改 /etc/seliux/config 更改设置 持久性的

 

你可能感兴趣的:(Linux 进程管理笔记)