Note For Linux By Jes(11)-程序管理与SELinux 初探

什么是程序(Process)




子程序与父程序:


fork and exec:程序呼叫的流程:



系统或网络服务:常驻在内存的程序

多重登陆环境的七个基本终端窗口:/etc/inittab





工作管理(jobcontrol)

job control 的管理:直接将命令丢到背景中『运行』的&

将『目前』的工作丢到背景中『暂停』:[ctrl]-z

观察目前的背景工作状态:jobs

将背景工作拿到前景来处理:fg对应&

让工作在背景下的状态变成运行中:bg对应[ctrl]-z

管理背景当中的工作:kill

离线管理问题:nohup





程序管理

程序的观察:

ps :将某个时间点的程序运行情况撷取下来

仅观察自己的bash 相关程序:ps -l

F:代表这个程序旗标(process flags),说明这个程序的总结权限,常见号码有:

  • S:代表这个程序的状态(STAT),主要的状态有:

    • R (Running):该程序正在运行中;

    • S(Sleep):该程序目前正在睡眠状态(idle),但可以被唤醒(signal)

    • D :不可被唤醒的睡眠状态,通常这支程序可能在等待I/O 的情况(ex>列印)

    • T :停止状态(stop),可能是在工作控制(背景暂停)或除错(traced) 状态;

    • Z(Zombie):僵尸状态,程序已经终止但却无法被移除至内存外。

  • UID/PID/PPID:代表『此程序被该UID 所拥有/程序的PID 号码/此程序的父程序PID 号码』

  • C:代表CPU 使用率,单位为百分比;

  • PRI/NIPriority/Nice的缩写,代表此程序被CPU 所运行的优先顺序,数值越小代表该程序越快被CPU 运行。详细的PRI NI 将在下一小节说明。

  • ADDR/SZ/WCHAN:都与内存有关,ADDRkernel function,指出该程序在内存的哪个部分,如果是个running 的程序,一般就会显示『- / SZ 代表此程序用掉多少内存/ WCHAN 表示目前程序是否运行中,同样的,若为 - 表示正在运行中。

  • TTY:登陆者的终端机位置,若为远程登陆则使用动态终端介面(pts/n)

  • TIME:使用掉的CPU 时间,注意,是此程序实际花费CPU 运行的时间,而不是系统时间;

  • CMD:就是command 的缩写,造成此程序的触发程序之命令为何。

观察系统所有程序:ps aux

top:动态观察程序的变化

pstree:程序之间的相关性



程序的管理:

kill -signal PID

killall -signal 命令名称

代号

名称

内容

1

SIGHUP

启动被终止的程序,可让该PID 重新读取自己的配置档,类似重新启动

2

SIGINT

相当於用键盘输入[ctrl]-c 来中断一个程序的进行

9

SIGKILL

代表强制中断一个程序的进行,如果该程序进行到一半,那么尚未完成的部分可能会有『半产品』产生,类似vim会有.filename.swp 保留下来。

15

SIGTERM

以正常的结束程序来终止该程序。由於是正常的终止,所以后续的动作会将他完成。不过,如果该程序已经发生问题,就是无法使用正常的方法终止时,输入这个 signal 也是没有用的。

17

SIGSTOP

相当於用键盘输入[ctrl]-z 来暂停一个程序的进行



 

Priority Nice



nice :新运行的命令即给予新的nice

renice :已存在程序的nice 重新调整



系统资源的观察:

free :观察内存使用情况

uname:查阅系统与核心相关资讯

uptime:观察系统启动时间与工作负载

netstat :追踪网络或插槽档

dmesg :分析核心产生的信息

vmstat :侦测系统资源变化





特殊文件与程序

具有SUID/SGID 权限的命令运行状态

/proc/* 代表的意义

fuser:藉由文件(或文件系统)找出正在使用该文件的程序

lsof :列出被程序所开启的文件档名

pidof :找出某支正在运行的程序的PID




SELinux初探

SELinux 的运行模式:






安全性本文的一般配置为:『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 来管

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值