1. Linux系统中某个可执行文件属于root并且有setid,当一个普通用户 mike运行这个程序时,产生的进程的有效用户和实际用户分别是?
- A. root mike
- B. root root
- C. mike root
- D. mike mike
- E. deamon mike
- F. mike deamon
答案:A
解析:setuid 位是让普通用户可以以 root 用户的角色运行只有 root 帐号才能运行的程序或命令。因此当程序设置了 setid 权限位时,普通用户会临时变成 root 权限,但实际用户任然是原来的mike。
调用 setid 使进程成长为一个会话组长,setid 调用成功后,进程成为新的会话组长和进程组长,并与原来的登陆会话和进程组脱离,由于会话过程对控制终端的独占性,进程同时与控制终端脱离。这也是在创建 daemon 程序时,经常用到的一个步骤。
2. 执行指令find / -name “test.c”,按ctrl+z后的提示有[1] 166,可以继续执行的方式有()
- A. kill 166
- B. Ctrl+h
- C. fg 1
- D. bg 1
答案:D
解析:可以 继续执行 的方式有()这题问的已经很明显了。答案A肯定不对啊。
- CTRL+Z 就是挂起一个进程,暂停的意思
- fg 是将进程放到前台并唤醒
- bg 是将进程放到后台并唤醒
- CTRL+H 在 shell 就是向左删除的作用