1、 top
top命令会定时刷新显示系统当前正在运行的进程,并按照资源占用率进行排序列出;
其中NI表示nice值,标志这进程的的优先级,可意在top命令中按“R”来修改本进程的nice值;
PR表示进程的优先级,内核是基于优先级来调度作业的。
修改nice值可以在保证不结束进程的情况下缓和系统压力。
更多可见:man renice
根用户可以修改任意进程的nice值,-20<nice<20,值越小代表优先级越高,20代表只有在系统空闲时才执行该进程;0表示默认的优先级调度;其他用户只能更改其本身拥有的进程,并且只能降低它的优先级,也就是增加nice值。
2、ps
显示某个用户的所有进程:
ps -ef | grep username
********* simple selection ********* ********* selection by list *********
-A all processes -C by command name
-N negate selection -G by real group ID (supports names)
-a all w/ tty except session leaders -U by real user ID (supports names)
-d all except session leaders -g by session OR by effective group name
-e all processes -p by process ID
T all processes on this terminal -s processes in the sessions given
a all w/ tty, including other users -t by tty
g OBSOLETE -- DO NOT USE -u by effective user ID (supports names)
r only running processes U processes for specified users
x processes w/o controlling ttys t by tty
*********** output format ********** *********** long options ***********
-o,o user-defined -f full --Group --User --pid --cols --ppid
-j,j job control s signal --group --user --sid --rows --info
-O,O preloaded -o v virtual memory --cumulative --format --deselect
-l,l long u user-oriented --sort --tty --forest --version
-F extra full X registers --heading --no-heading --context
********* misc options *********
-V,V show version L list format codes f ASCII art forest
-m,m,-L,-T,H threads S children in sum -y change -l format
-M,Z security data c true command name -c scheduling class
-w,w wide output n numeric WCHAN,UID -H process hierarchy(按层次结构列出进程之间的关系)
3、贪占磁盘者
df -h查看磁盘使用情况;
然后切换到root用户,运行
du -s -B 1024K /home/* | sort -n
du命令可以评估文件所占用的磁盘空间,-s表示位home下的每一个目录都生成一个汇总,并用1024K的块显示每个目录的磁盘使用情况,然后使用管道传送给sort,-n表示按照数字排序。
4、贪占带宽
依赖于一条可以追溯几十年的关于类UNIX系统的真理:所有的都是文件。
lsof -i -P | sort -k3
lsof可以列出所有的已打开文件,list open files
An open file may be a regular file, a directory, a block special file, a character special file, an executing text reference, a library, a stream
or a network file (Internet socket, NFS file or UNIX domain socket.)
-i:只选择和网络有关的文件;
-P:指定显示端口号,而不是把端口号映射为服务名。
sort -k3 表示按照第三个域即用户名排序。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~``
使用日志文件系统减少系统重启时间
当在引导过程中挂接文件系统时,文件系统被标记为在使用中(“脏的”)。当系统正常关闭时,磁盘上所有文件系统在卸载时都标记为“干净的”。当系统启动时标记为干净的文件系统就不会再进行一致性检查,节省大量时间。如果为“不干净”则进行大量的检查。
ubuntu10.10 ext4可以使用fsck来检查文件系统的完整性。
tune2fs可以对文件系统进行修改或者进行转换。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
用systcl理解和优化系统
不直接与/proc文件交互,用sysctl命令迅速获得和设置内核选项。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
用/proc剖析系统
/proc文件系统包含了丰富的信息,并且这些信息都很可靠。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
正确的杀死进程
为了防止产生僵尸进程,我们最好先杀死子进程,在杀死父进程。
我们可以先用ps -ef来找出目标进程的父进程PPID。
kill -1 23454
-1选项告诉kill命令用好像启动进程的用户已经注销的方式结束进程,这时kill也试图杀死他的子进程,但并不能总是成功。
kill -TERM 2343
给父进程发送一个TERM信号,试图杀死它和它的子进程。
也可以考虑使用下一条替代语句
killall httpd
停止和重启进程
kill -HUP 323423
最后一招
kill -9 21323
可以突然终止进程,但是进程占用的资源不会被释放。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
�����������������������������������������������������������������