OS第1次实验报告:熟悉使用Linux命令和剖析ps命令
姓名:胡家揆
班级:计算1811
学号:201821121023
1. 实验环境介绍
- 操作系统:Ubuntu 18.04.4 LTS
- 平台:VMware Workstation Pro
- 用户名:hujiakui
2. 常用命令使用
man:
su -help
sudo su:进入特权模式
reboot:重启
logout:登出
exit:退出
3. 剖析ps命令
命令参数: a 显示所有进程 -a 显示同一终端下的所有程序 -A 显示所有进程 c 显示进程的真实名称 -N 反向选择 -e 等于“-A” e 显示环境变量 f 显示程序间的关系 -H 显示树状结构 r 显示当前终端的进程 T 显示当前终端的所有程序 u 指定用户的所有进程 -au 显示较详细的资讯 -aux 显示所有包含其他使用者的行程 -C<命令> 列出指定命令的状况 --lines<行数> 每页显示的行数 --width<字符数> 每页显示的字符数 --help 显示帮助信息 --version 显示版本显示
1)ps -ef
-e:显示系统内的所有进程信息。与-A选项功能相同。
-f:使用完整的(full)格式显示进程信息。还会打印命令参数,当与-L一起使用时,将添加NLWP(线程数)和LWP(线程ID)列。
字段描述:
UID:启动该进程的用户的ID号。
PID:代表该进程的父进程的ID号。
PPID:表示该进程的唯一ID号。
C:进程的CPU处理器利用率。
STIME:表示进程的启动时间。
TTY:启动进程的终端名。
TIME:该进程使用CPU的累计时间。
CMD:该进程所运行的命令。
2)ps -aux
u:使用以用户为主的格式输出进程信息。
x:显示当前用户在所有终端下的进程信息。
字段描述:
USER: 进程拥有者
%CPU: 占用的 CPU 使用率
%MEM: 占用的记忆体使用率
VSZ: 占用的虚拟记忆体大小
RSS: 占用的记忆体大小
STAT: 该行程的状态,linux的进程有5种状态:
– D 不可中断 uninterruptible sleep (usually IO)
– R 运行 runnable (on run queue) – S 中断 sleeping
– T 停止 traced or stopped – Z 僵死 a defunct (”zombie”) process
– 注: 其它状态还包括W(无驻留页), <(高优先级进程), N(低优先级进程), L( 内存锁页).
START: 进程程开始时间
3)ps -eF
-F:在-f选项基础上显示额外的完整格式的进程信息。包含SZ、RSS和PSR这三个字段
字段描述:
SZ:映射到内存中物理页面的大小, 包括文本,数据和堆栈空间。这些页面仅由进程单独使用. 进程实际占用的内存数。
RSS:resident size,进程所使用的真实常驻内存(物理内存)的大小(以千字节KB为单位)。
PSR:当前分配给该进程的处理器,即进程在哪颗CPU上运行。
4) ps axjf
f:以ASCII字符显示进程层次树结构。
j:BSD风格控制格式输出进程信息。
字段描述:
PGID:进程组ID,或者等效的进程组组长的进程ID。
SID:显示进程的登录会话ID
TPGID:进程连接到的tty(终端)上的前台进程组的ID,如果进程未连接到tty,则为-1。
5)ps -efL
-L:显示线程信息,包含LWP(线程ID)列和NLWP(线程数)
字段描述:
LWP:轻量级进程(线程)的ID号。
NLWP:进程中内核的lwps(线程)数。 NLWP,就是线程组中LWP的个数
6) ps -auxZ
Z:添加一列安全上下文。 与-M选项功能(对于SELinux)相同。
字段描述:
LABEL:安全标签,最常用于SELinux上下文数据。 用于在高安全系统上发现的强制访问控制(“MAC”)。
SELinux的安全上下文包括:用户:角色:类型:级别
4. 通过该实验产生新的疑问及解答
问题:无法使用logout命令
解答:logout是用于退出一个login的shell。现在这个shell是已login的用户开出来的,不能用于logout这个用户。使用exit退出终端。