Day6:程序管理与SELinux

来源:互联网 发布:电脑输入法手写软件 编辑:程序博客网 时间:2024/05/23 00:05

学习笔记:

一、进程

程序:通常为二进制程序放置在存储媒体中,以物理文件的形式存在

进程:程序被触发后,执行者的权限和属性、程序的程序代码和所需数据等都会被加载到内存中,操作系统并给与这个内存的单元一个标识符(PID),可以说,进程就是一个正在运行的程序

1.父进程(PID)和子进程(PPID)

父进程通过 fork -- and -- exec 的方式创建子进程

2.Linux的多用户、多任务环境

二、工作管理(job control)

1.将命令丢到后台去执行---&

2.将目前工作丢到后台暂停 -Ctrl + z

主要适用于vim过程中,出现需要查找的情况

3.查看目前后台的工作情况-- jobs

4.将后台工作拿到前台来处理 -- fg

5.让工作在后台下的状态变成运行中-- bg

6.杀死后台当中的工作-- kill

7.脱机工作管理 -- nohup

三、进程管理

1.进程的查看

1.1 将某个时间点的进程运行情况选取下来 -- ps

1.1.1 仅仅查看自己的bash相关进程 -- ps -l

1.1.2 查看系统所有的进程 -- psaux

在查看过程中,遇到(defunct)表示该进程为僵尸进程

1.2 动态的查看进程的变化 -- top

1.3 以树的形式查看进程 -- pstree

2. 进程的管理 -- kill

3.进程的执行顺序

Priority(优先度):PRI越低代表优先级越高,该值由内核动态调整,用户无法设定

Nice(自己设定):用户通过Nice,来终止PRI。 -- PRI(new) = PRI(old) +nice

通过nice 更改进程的Nice值。

对于已经存在的进程,通过renice进行调整

4.资源的查看

4.1 查看内存的使用情况 -- free

4.2 查看系统与内核的相关信息 -- uname

4.3 查看系统启动时间与工作负载 -- uptime

4.4 跟踪网络 -- netstat

4.5 分析系统内核产生的信息 -- dmesg

4.6 检测系统资源的变化 -- vmstat

四、特殊文件与程序

1.具有SUID/SGID权限的命令执行状态

SUID权限仅对二进制程序有效

执行者对于该程序需要具有x的可执行权限

本权限仅在执行该程序的过程中有效

执行这将具有该程序所有者的权限

2./proc/*的意义 -- P531

3.查询已经打开文件或已经执行程序打开的文件

3.1 通过文件或文件系统找出正在使用该文件的程序 -- fuser  参数  文件

3.2 列出被进程所打开的文件名 -- lsof

3.3 找出某个正在执行的进程的 PID -- pidof

五、SELinux

SELinux是在进行程序、文件等权限设置依据的一个内核模块。由于启动网络服务的也是程序,因此刚好也是能够控制网络服务能否访问系统资源的一道关卡。

1. SELinux运行模式

主体 -- 进程

目标 -- 文件系统

策略 --  1.targeted:针对网络服务限制较多,针对本机限制较少,是默认的策略。2.strict -- 完整的SELinux限制,限制方面比较灵活。

安全上下文 -- ls -Z

身份标识 -- 1.root 2. sysyem_u 3.user_u

角色 -- 1. object_r -- 文件/目录 2.system_r -- 进程

类型 -- 1.type -- 在文件资源上面成为类型 2. domain -- 在主体程序中则称为域

2. SELinux的启动、关闭与查看

2.1 SELinux三种模式 -- 查看模式getenforce:

enforcing -- 强制模式

permissive -- 宽容模式

disabied -- 关闭

2.2 SELinux的配置文件 -- /etc/selinux/config

2.3 SELinux的启动和关闭 --如果对/etc/selinux/config更改后,需要重新启动。然后到/boot/grub/menu.lst 产看内核是否关闭SELinux ,如果要启动SELinux,那么不能出现selinux=0在kernel之后

3. SELinux所需的服务

3.1 将SELinux发生错误的时候,将错误信息写入/var/log/messages

3.2 将详细数据写入/var/log/audit/audit.log





原创粉丝点击