实验目的:掌握常用Linux系统管理命令的使用方法,主要包括:进程管理类命令ps、终止进程命令kill、实时监控进程命令top、实时监控内存使用情况命令free、监视虚拟内存使用情况命令vmstat,以及touch、grep和bash等命令,以及这些命令的综合运用示例--杀死恶意进程。
1、查看系统的进程:ps
- -a: 显示所有用户的进程信息
- -u: 显示当前用户名进程信息
- -w: 宽行输出,不截取输出中的命令行
- -l: 按长格形式显示输出
- -x: 显示没有控制终端的进程
- -e: 显示所有的进程。
- USER 进程创建者用户名; PID 进程的ID号;
- %CPU 占用CPU百分比; %MEM 占用内存百分比
- VSZ 占用虚拟内存大小; RSS 内存中页(4K大小)的数量
- TTY 进程所在终端的ID号; STAT 进程运行状态;
- START 进程启动时间; TIME 进程已经占用CPU时间
ps -u 显示当前用户名进程信息
ps -aux 显示所有用户的进程信息
- 查看进程树 pstree
- 进程树以树状图展现进程之间的派生距离
gedit 打开一个新的终端:
pstree 显示用户名称的进程树
- 终止进程命令:kill + 进程号PID号
- 前台进程在运行时,可以用【ctrl+c】键来终止它;
- 后台进程可以使用kill命令向进程发送强制终止信号,以达到终止进程、回收内存的目的。
gedit 你的学号
打开一个新的控制终端
ps -u 查看当前gedit的PID进程号
kill (空格加)进程号
ps -u
- 实时监控进程号命令:top
- top屏幕自动每5秒钟刷新一次,也可以用“top –d 10”,使得top屏幕每10秒钟刷新一次,按q退出。
top
- 实时监控内存使用情况命令: free
free
free -h
回答问题:当前内存总量是多少?可用内存是多少?
- 监视虚拟内存使用情况命令: vmstat
vmstat 默认采用K字节作为单位
vmstat -SM 指定M为虚拟内存单位
- r:在运行队列中等待的进程数 。
- b:在等待io的进程数 。
- swpd:现时可用的交换内存
- free:空闲的内存
- buff: 缓冲去中的内存数
- cache:被用来做为高速缓存的内存数
- swap交换页面
- si: 从磁盘交换到内存的交换页数量
- so: 从内存交换到磁盘的交换页数量
- bi: 发送到块设备的块数,单位:块/秒。
- bo: 从块设备接收到的块数,单位:块/秒。
- in: 每秒的中断数,包括时钟中断。
- cs: 每秒的环境(上下文)切换次数。
- 创建一个空的新文件:touch
touch 你的学号.txt
ls
cat 你的学号.txt
- 重定向:> 和 <
- 输出重定向: >或者>>
- 输入重定向: <或者<<
- 将显示内容输出到文件file.txt:
ls
ls > 你的姓名.txt
cat 你的姓名.txt
将文件file.txt的内容输入命令sort进行排序:
sort < 你的姓名.txt
9. 搜索和寻找文件命令grep,结合管道命令 |
grep -i ubuntu /etc/passwd
在/etc/passwd(用户信息)文件中查找单词“ubuntu”
–i 选项用于忽略大小写,因为 grep 是大小写敏感的。
dpkg -l | grep -i python
运行dpkg -l列出你系统上安装的.deb包。
接着,使用管道将输出结果传输给命令grep -i python,这一步可以简单解释为把结果传输给grep然后过滤出所有含有python的项,并返回结果。
10. 脚本命令bash
touch 你的姓名.sh
gedit 你的姓名.sh
在打开的文件里面输入:
mkdir dd
mkdir ee
ls > ff
cat ff
保存关闭文件
bash 你的姓名.sh
rmdir dd
rmdir ee
sh 你的姓名.sh
- 杀死恶意进程
gedit 你的姓名
在主目录中用文本编辑器创建一个名为badpro的文本文件,包含以下内容:
#! /bin/bash
while echo "I am making files!"
do
mkdir adir
cd adir
touch afile
sleep 2s
done
这是一个shell恶作剧脚本。修改权限,让它在后台执行。
chmod +x 你的姓名
./你的姓名 > 你的姓名.log 后台运行badpro,并将其输出结果重定向到你的姓名.log
打开一个新终端:
cat 你的姓名.log
ps -aux | grep 你的姓名 找到两个进程,第1个是
kill 进程号
ps -aux | grep 你的姓名 再次查看
rm -rf adir 删除恶意程序创建的目录和文件
补充说明:
sudo kill -KILL 进程号 强制关闭进程
sudo kill -9 进程号 强制关闭进程