重点回顾
- 程序 (program):通常为 binary program ,放置在储存媒体中 (如硬盘、光盘、软盘、磁带等),为实体文件的型态存在;
- 程序 (process):程序被触发后,运行者的权限与属性、程序的程序码与所需数据等都会被加载内存中,操作系统并给予这个内存内的单元一个识别码 (PID),可以说,程序就是一个正在运行中的程序。
- 程序彼此之间是有相关性的,故有父程序与子程序之分。而 Linux 系统所有程序的父程序就是 init 这个 PID 为 1 号的程序。
- 在 Linux 的程序呼叫通常称为 fork-and-exec 的流程!程序都会藉由父程序以复制 (fork) 的方式产生一个一模一样的子程序,然后被复制出来的子程序再以 exec 的方式来运行实际要进行的程序,最终就成为一个子程序的存在。
- 常驻在内存当中的程序通常都是负责一些系统所提供的功能以服务使用者各项任务,因此这些常驻程序就会被我们称为:服务 (daemon)。
- 在工作管理 (job control) 中,可以出现提示字节让你操作的环境就称为前景 (foreground),至於其他工作就可以让你放入背景 (background) 去暂停或运行。
- 与 job control 有关的按键与关键字有: &, [ctrl]-z, jobs, fg, bg, kill %n 等;
- 程序管理的观察命令有: ps, top, pstree 等等;
- 程序之间是可以互相控制的,传递的信息 (signal) 主要透过 kill 这个命令在处理;
- 程序是有优先顺序的,该项目为 Priority,但 PRI 是核心动态调整的,使用者只能使用 nice 值去微调 PRI
- nice 的给予可以有: nice, renice, top 等命令;
- vmstat 为相当好用的系统资源使用情况观察命令;
- SELinux 当初的设计是为了避免使用者资源的误用,而 SELinux 使用的是 MAC 委任式存取配置;
- SELinux 的运行中,重点在於主体程序 (Subject) 能否存取目标文件资源 (Object) ,这中间牵涉到政策 (Policy) 内的守则,以及实际的安全性本文类别 (type);
- 安全性本文的一般配置为:『Identify:role:type』其中又以 type 最重要;
- SELinux 的模式有: enforcing, permissive, disabled 三种,而启动的政策 (Policy) 主要是 targeted
- SELinux 启动与关闭的配置档在: /etc/selinux/config
- SELinux 的启动与观察: getenforce, sestatus 等命令
- 重设 SELinux 的安全性本文可使用 restorecon 与 chcon
- 在 SELinux 有启动时,必备的服务至少要启动 setroubleshoot 这个!
- 若要管理默认的 SELinux 布林值,可使用 getsebool, setsebool 来管理!