Linux 中进程有哪几种状态?在 ps 显示出来的信息中,分别用什么符号表示的?
答案:
(1)、不可中断状态:进程处于睡眠状态,但是此刻进程是不可中断的。不可中断, 指进程不响应异步信号。
(2)、暂停状态/跟踪状态:向进程发送一个 SIGSTOP 信号,它就会因响应该信号 而进入 TASK_STOPPED 状态;当进程正在被跟踪时,它处于 TASK_TRACED 这个特殊的状态。
“正在被跟踪”指的是进程暂停下来,等待跟踪它的进程对它进行操作。
(3)、就绪状态:在 run_queue 队列里的状态
(4)、运行状态:在 run_queue 队列里的状态
(5)、可中断睡眠状态:处于这个状态的进程因为等待某某事件的发生(比如等待 socket 连接、等待信号量),而被挂起
(6)、zombie 状态(僵尸):父亲没有通过 wait 系列的系统调用会顺便将子进程的尸体(task_struct)也释放掉
(7)、退出状态
D 不可中断 Uninterruptible(usually IO)
R 正在运行,或在队列中的进程
S 处于休眠状态
T 停止或被追踪
Z 僵尸进程
W 进入内存交换(从内核 2.6 开始无效)
X 死掉的进程
问题十八:
怎么使一个命令在后台运行?
答案:
一般都是使用 & 在命令结尾来让程序自动运行。(命令后可以不追加空格)
问题十九:
利用 ps 怎么显示所有的进程? 怎么利用 ps 查看指定进程的信息?
答案:
ps -ef (system v 输出)
ps -aux bsd 格式输出
ps -ef | grep pid
问题二十:
哪个命令专门用来查看后台任务?
答案:
job -l
问题二十一:
把后台任务调到前台执行使用什么命令?把停下的后台任务在后台执行起来用什么命令?
答案:
把后台任务调到前台执行 fg
把停下的后台任务在后台执行起来 bg
问题二十二:
终止进程用什么命令? 带什么参数?
答案:
kill [-s <信息名称或编号>][程序] 或 kill [-l <信息编号>]
kill-9 pid
问题二十三:
怎么查看系统支持的所有信号?
答案:
kill -l
问题二十四:
搜索文件用什么命令? 格式是怎么样的?
答案:
find <指定目录> <指定条件> <指定动作>
whereis 加参数与文件名
locate 只加文件名
find 直接搜索磁盘,较慢。
find / -name "string*"
问题二十五:
查看当前谁在使用该主机用什么命令? 查找自己所在的终端信息用什么命令?
答案:
查找自己所在的终端信息:who am i
查看当前谁在使用该主机:who
问题二十六:
使用什么命令查看用过的命令列表?
答案:
history
问题二十七:
使用什么命令查看磁盘使用空间? 空闲空间呢?
答案:
df -hl
文件系统 容量 已用 可用 已用% 挂载点
Filesystem Size Used Avail Use% Mounted on /dev/hda2 45G 19G 24G 44% /
/dev/hda1 494M 19M 450M 4% /boot
问题二十八:
使用什么命令查看网络是否连通?
答案:
netstat
问题二十九:
使用什么命令查看 ip 地址及接口信息?
答案:
ifconfig
问题三十:
查看各类环境变量用什么命令?
答案:
查看所有 env
查看某个,如 home: env $HOME
问题三十一:
通过什么命令指定命令提示符?
答案:
\u:显示当前用户账号
\h:显示当前主机名
\W:只显示当前路径最后一个目录
\w:显示当前绝对路径(当前用户目录会以~代替)
$PWD:显示当前全路径
\$:显示命令行’$'或者’#'符号
\#:下达的第几个命令
\d:代表日期,格式为week day month date,例如:"MonAug1"
\t:显示时间为24小时格式,如:HH:MM:SS
\T:显示时间为12小时格式
\A:显示时间为24小时格式:HH:MM
\v:BASH的版本信息 如export PS1=’[\u@\h\w\#]\$‘
问题三十二:
查找命令的可执行文件是去哪查找的? 怎么对其进行设置及添加?
答案:
whereis [-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...]
补充说明:whereis 指令会在特定目录中查找符合条件的文件。这些文件的烈性应属于原始代码,二进制文件,或是帮助文件。
-b 只查找二进制文件。