进程和计划任务管理

  1. 程序和进程的关系 程序:保存在硬盘、光盘等介质中的可执行代码和数据;静态保存的代码 进程:在 CPU 及内存中运行的程序代码;动态执行的代码;父、子进程:每个进程可以创建一个或多个进程 基本命令 1):ps命令(processes statistc):查看静态的进程统计信息 格式: ps aux ;ps –elf 2):top命令:查看动态的进程排名信息 3):pgrep命令:根据特定条件查询进程 PID 信息 4):pstree命令:以树形结构列出进程信息 格式:pstree –aup ;pstree –ap 用户

2.进程的启动方式 手工启动 前台启动(foreground,前台):用户输入命令,直接执行程序 后台启动(background,后台):在命令行尾加入“&”符号 [root@localhost ~]# cp /dev/cdrom mycd.iso & [1] 28454 (输出信息中包括后台任务序号、PID号) 调度启动 使用 at 命令,设置一次性计划任务;使用 crontab 命令,设置周期性计划任务

3.进程的前后台调度 1):Ctrl+Z 组合键:将当前进程挂起,即调入后台并停止执行 2):jobs 命令:查看处于后台的任务列表 ;格式:jobs -l 3):fg 命令:将后台进程恢复到前台运行,可指定任务序号

4.终止进程 Ctrl+C 组合键:中断正在执行的命令 kill、killall 命令 kill用于终止指定PID号的进程 killall用于终止指定名称的所有进程 -9 选项用于强制终止 pkill命令:根据特定条件终止相应的进程 常用命令选项: -U:根据进程所属的用户名终止相应进程; -t:根据进程所在的终端终止相应进程

5.计划任务管理 1):at命令:一次性计划任务,前提是对应的系统服务atd必须已经运行;计划任务执行任务的时间必须安排在当前系统时间后。 服务脚本名称:/etc/init.d/atd;格式:at [HH:MM] [yyyy-mm-dd] 2):crontab命令:按照预先设置的时间周期(分钟、小时、天……)重复执行用户指定的命令操作;属于周期性计划任务;服务脚本名称:/etc/init.d/crond 主要设置文件 全局配置文件,位于文件:/etc/crontab 系统默认的设置,位于目录:/etc/cron.*/ 用户定义的设置,位于文件:/var/spool/cron/用户名 3): 管理cron计划任务 编辑计划任务:crontab -e [-u 用户名] 查看计划任务:crontab -I [-u 用户名 删除计划任务:crontab -r [-u 用户名] 注意:root用户可以管理指定用户的计划任务;普通用户只能管理自己的计划任务 6. 时间数值的特殊表示方法

  •  表示该范围内的任意时间
    

, 表示间隔的多个不连续时间点

  •  表示一个连续的时间范围
    

/ 指定间隔的时间频率 举个栗子 0 17 * * 1-5 周一到周五每天17:00 30 8 * * 1,3,5 每周一、三、五的8点30分 0 8-18/2 * * * 8点到18点之间每2小时 0 * */3 * * 每3天

系统故障分析和排查

  1. 日志文件分析 功能:用于记录系统、程序运行中发生的各种事件;通过阅读日志,有助于诊断和解决系统故障 分析: 内核及系统日志:由系统服务syslog统一进行管理,日志格式基本相似 用户日志:记录系统用户登录及退出系统的相关信息 程序日志:由各种应用程序独立管理的日志文件,记录格式不统一 保存位置:默认位于:/var/log 目录下 主要日志文件: 日志 存放位置 内核及公共消息 /var/log/messages 计划任务 /var/log/cron 系统引导 /var/log/dmesg 邮件系统 /var/log/maillog 用户登录 /var/log/lastlog;/var/log/secure;/var/log/wtmp;/var/run/btmp

2.内核及系统日志 由系统服务 rsyslogd 统一管理 软件包:rsyslog-5.8.10-8.el6.x86_64 主要程序:/sbin/rsyslogd 配置文件:/etc/rsyslog.conf

日志消息的级别 0 EMERG(紧急):会导致主机系统不可用的情况 1 ALERT(警告):必须马上采取措施解决的问题 2 CRIT(严重):比较严重的情况 3 ERR(错误):运行出现错误 4 WARNING(提醒):可能会影响系统功能的事件 5 NOTICE(注意):不会影响系统但值得注意 6 INFO(信息):一般信息 7 DEBUG(调试):程序或系统调试信息等 日志记录的一般格式 3.用户日志分析 保存了用户登录、退出系统等相关信息 /var/log/lastlog:最近的用户登录事件 /var/log/wtmp:用户登录、注销及系统开、关机事件 /var/run/utmp:当前登录的每个用户的详细信息 /var/log/secure:与用户验证相关的安全性事件 分析工具:users 、who、w、last、lastb

  1. 程序日志分析 由相应的应用程序独立进行管理 Web服务:/var/log/httpd/ ;access_log、error_log 代理服务:/var/log/squid/;access.log、cache.log、squid.out、store.log FTP服务:/var/log/xferlog 分析工具: 文本查看、grep过滤检索、Webmin管理套件中查看 awk、sed等文本过滤、格式化编辑工具 Webalizer、Awstats等专用日志分析工具 注意:日志并不是完全可靠的,高明的黑客在入侵系统后,经常会打扫现场

5.日志管理策略 1):及时作好备份和归档 2):延长日志保存期限 3):控制日志访问权限:日志中可能会包含各类敏感信息,如账户、口令等 4):集中管理日志 将服务器的日志文件发到统一的日志文件服务器 便于日志信息的统一收集、整理和分析 杜绝日志信息的意外丢失、恶意篡改或删除

6.修复 MBR 扇区故障 1):故障原因:病毒、木马等造成的破坏;不正确的分区操作、磁盘读写误操作 2):故障现象:找不到引导程序,启动中断;无法加载操作系统,开机后黑屏 3): 解决思路:应提前作好备份文件;以 RHEL 6 安装光盘引导进入急救模式;从备份文件中恢复

7.修复 GRUB 引导故障 1):故障原因:MBR 中的 GRUB 引导程序遭到破坏;grub.conf 文件丢失、引导配置有误 2):故障现象:系统引导停滞,显示“grub>” 提示符 3):解决思路:尝试手动输入引导命令;进入急救模式,重写或者从备份中恢复 grub.conf ;向 MBR 扇区中重建 grub 程序

8.遗忘 root 用户的密码 1):故障原因:遗忘 root 用户的密码 2):故障现象:无法进行需要 root 权限的管理操作;若没有其他可用帐号,将无法登录系统 3):解决思路 方法一:引导进入单用户模式,重设密码:grub > kernel ... single 或 s 或 1 方法二:进入急救模式,重设密码

  1. 修复文件系统 1):故障原因:非正常关机、突然断电、设备读写失误等;文件系统的超级块(super-block)信息被破坏 2):故障现象:无法向分区中读取或写入数据;启动后提示“Give root password for maintenance” 3):解决思路:根据提示输入 root 口令,进入修复状态;使用 fsck 命令进行修复

10.磁盘资源耗尽故障 1):故障原因:磁盘空间已被大量的数据占满,空间耗尽;虽然还有可用空间,但文件数i节点耗尽 2):故障现象:无法写入新的文件,提示“… : 设备上没有空间”;部分程序无法运行,甚至系统无法启动 3):解决思路:清理磁盘空间,删除无用、冗余的文件;转移或删除占用大量 i 节点的琐碎文件;进入单用户模式、急救模式进行修复;为用户设置磁盘配额

  1. 磁盘设备中存在坏道 1):故障原因:磁盘设备中存在坏道(逻辑的或物理的) 2):故障现象 读取磁盘中的数据时,磁盘设备发出异常声响。 访问磁盘中的某个文件时,反复读取且出错,提示文件损坏 对于新建立的分区无法完成格式化 系统使用该磁盘时频繁死机 3):解决思路:检测硬盘中是否存在坏道;修复硬盘,或更换新的硬盘