测验:运行中系统的运维
即使我发送了kill -9,该进程也不会从列表中消失。 如果ps的状态是D,是什么原因?
- 应用程序已注册 SIGKILL 处理程序并忽略它。
- 由于它是不可中断的等待状态,因此直到内核完成 I/O 后才会处理信号。
- 该进程已经死亡并且尚未被其父进程回收
- 由于权限不足,信号未发出。
如果启动命令是用 shell 格式编写的,为什么应用程序在容器中停止时会毫无优雅地终止?
- 因为shell格式总是以SIGKILL开头
- 这是因为 shell 变为 PID 1 并且不会将 SIGTERM 传递给其子级。
- 因为容器运行时不知道shell进程。
- 这是因为 shell 设置为忽略所有信号处理程序。
关于好的价值观,以下哪项是正确的?
- 范围为0~39,值越大优先级越高。
- 范围为-20~19,值越大优先级越高。
- 范围是-20到19。值越低优先级越高,一般用户不能降低。
- 普通用户可以像root一样自由上传、卸载。
我应该将StartLimitIntervalSec和StartLimitBurst放在哪一部分,以防止服务因配置错误而反复崩溃时无限重启?
- [服务]
- [单元]
- [安装]
- [重新启动]
为什么ExecStart=/opt/app/bin/server | tee /var/log/app.log不起作用?
- 因为tee默认没有安装
- 由于标准输出已连接到日志,因此无法创建管道。
- 这是因为 systemd 直接运行而不经过 shell,因此管道作为参数传递。
- 因为 ExecStart 仅采用一个参数。
/etc/cron.d/下面的文件格式和用户crontab有什么区别?
- 没有什么区别。只是地点不同
- 只有用户 crontab 才有日期字段。
- /etc/cron.d 文件在时间字段之后还包含一个执行用户字段。