时间:2023-06-02 16:16:41 来源: 人气:
&背景工作做符, ctrl+ z 暂停, ctrl + c 停止, jobs [-l(list) , r(running jobs) ,-s(stop jobs)] 观察背景工作的状态, fg %jobnumber 将背景工作拿到前景执行, bg %jobnumber 让工作在背景的状态变成运作中(被ctrl暂停在背景的工作), =========================================================, kill -l ===>列出q能够使用的signal有哪些, 常用的kill的signal, -1 重新读取一次参数的排位置文件(类似reload), -2 与ctrl的的i一样, -9 立即强制停止一个工作( .filename.swap 文件会被遗在系统中), -15 正常停止一个工作, kill signal PID或者[%jobnumber] (给该进程发送一天命令), ====================================, 上面的求导背景中去的工作都是你登陆是派生出来的子孙进程,在退出登陆后劲不能继续执行了, 脱机管理, 如果工作需要很长时间,你不能直到它执行完才下机,可以用at来处理, at是将工作放置到系统背景下,而与终端机无关, ====================, 程序管理, 找出最耗系统的程序, 找出内存中又问题的程序, 设置程序的优先级, 程序的观察, ps 将某个时间点得进程运作情况获取下来, ps 不加-a 或者-A参数仅仅列出与自己相关的process信息, aux 观察系统中所有进程的数据, -A 所有process都显示出来 与-e一样, -a 不与terminal有关的所有程序, -u 有效使用者(effective user )的相关process, -l 列出叫详细的信息,包括pid, ===============================================, [root@Sweety /]# ps -l, F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD, 4 S 0 2685 2683 0 80 0 - 27117 wait pts/1 00:00:00 bash, 4 S 0 3232 1 0 80 0 - 27050 wait pts/1 00:00:00 mysqld_safe, 4 R 0 3647 2685 0 80 0 - 27033 - pts/1 00:00:00 ps, F : 代表这个程序的旗标(flag) ,说明这个程序的总结权限, 4代表root, S: 代表程序的状态, R(Running), S(sleep), T(stop), Z(Zombie), C: 代表Cup的使用率, ADDR(address) : 是kernel function 指出程序在内存中的那个部分如果是running的程序,一般会显示 -, SZ (size) : 程序用掉的内存, WCHAN : 表示程序是否在运行中 - 表示正在运行, TIME+: 使用的cpu累加时间, CMD : 触发进程的命令, RSS : 进程占用固定内存的大小, =================================================, top: 动态观察程序的变化, -d 数字 动态更新的时间差, -b : 以批次的方式执行top(通常搭配重定向和-n使用), -n : 与-b一起使用, 意义是需要执行几次top 输出的结果, -p 进程的pid : 观察指定pid的进程, top在执行过程中可以使用按键, ? : 显示可以在top中输入的按键指令, P : 以cpu占用率排序(默认), M: 以Memory的使用排序, N: 以pid来排序, T : 以该process占用的cpu积累时间排序, r : 给PID重新定一个nice值 (按下r 然后输入要修改的pid号码), 1 : 切换查看不同cpu的负载率, q : 离开, =====================================================, pstree, -u : 同时列出每个process的PID, -p : 同时列出每个process的所属账号, ======================================================, priority 和nice, PRI值是有核心动态调整的用户无法直接调整PRI的值;如果用户想调整PRI 的值,就得透过nice的值,一般来说,PRI和NI 的相关性如下, PRI(new) = PRI(old) + nice(可以是-20~19之间), 不过,如果原本饿PRI得值是50 ,并不是我们给一个nice=5 就会让PRI变成55 ,因为PRI是系统动态决定的,nice的值可以影响PRI,但最终的PRI值仍是要经过系统分析后才决定的;(nice的值有正负 郑表示降低优先级,符表示增加优先级), 一般用户只可以调整自己的process的nice值,且只能调高nice的值, 调整process的优先级就是调整process的nice值, 如何调整某个程序的nice值, 1一开始执行程序就给予一个特定的nice值: 用nice指令, nice -n 数值 命令(启动程序的命令), -n 后面接一个数值 (-20~ 19), 2已经存在的进程的nice重新调整(或者top) : renice, renice 数值(需要调整到饿nice值) PID(调整的process的PID), ==========================================================, 我们可以使用top观察到很多的系统资源和状态,还有其他的一些工具也可以查看系统资源, free [-m 以M为单位显示], ===========================================================, uname : 查看系统的核心相关信息, -a : all 所有, -s : 系统核心名(Linux), -r : 核心版本 ( 2.6.32-358.el6.x86_64 ), -p : cpu类型 ( x86_64 ), -i : 硬件平台 (x86_64), ==========================================================, uptime : 观察系统启动时间与负载工作 (其实酒红色显示出top命令的第一行), ==========================================================, netstat : 追踪网络或插槽文件, -a : 所有, -t : 列出tcp网络封包的数据, -u : 列出UDP蒸包的数据, -l : 列出目前正在监听的服务, -p 显示PID, ==========================================================, ------第一部分----相关字段意义----------, proto : 网络封包协议 ,主要为tcp何udp, Recv-Q : 由非远程主机链接到此socket的复制的中bytes数, Send-Q : 非远程主机传送过来的acknowledged 总bytes数, Local Address : 本地端的IP:port情况, Foreign Adresses :远程主机的IP:Port情况, state : 联机状态 ,主要有建立(ESTABLISHED) 和监听(LISTEN), /proc/* 代表的意义, 进程都是在内存中的,而内存当中的数据有都是写到/proc/*这个目录下的,所以我们可以直接观察/proc这个目录当中的档案, ==========================================================, fuser: 找出正在使用该档案的程序, 有时候我们想知道一个程序在这次启动过程中到底开启了多少档案,可以利用fuser来擦看, example : fuser -uvm /proc ==>查看偶遇多少程序在进行/proc文件系统的存取, ===========================================================, lsof : 列出被程序开启的档案文件名, ===========================================================, pidof : 列出某个正在执行的程序的pid, pidof [-sx] program_name, -s : 仅列出一个PID而不是列出所有, -x : 同时列出program name 可能的PPID 那个程序的PID,