RHCE学习<5>RHEL6进程管理、Cron任务计划和启动故障排除

一、进程管理

1、ps查看进程命令(一般使用以下两种组合选项)

ps -aux:将显示系统中所有的进程信息

ps -elf:将以长格式显示系统中所有的进程详细信息

USER:启动该进程的用户账号的名称

PID:进程号,在当前系统中是唯一的

TTY:表明该进程在哪个终端上运行,?表示未知或不需要终端。

STAT:进程的当前的状态如:S(休眠)、R(运行)、Z(僵死)、<(高优先级)、N(低优先级)、s(父进程)、+(前台进程),对于僵死进程应该予以手动终止

START:启动进程的时间

TIME:该进程占用的CPU时间

COMMAND:启动该进程的命令的名称

%CPU:CPU占用百分比

%MEM:内存占用百分比

VSZ:占用虚拟内存(swap)的大小

RSS:占用物理内存的大小

2、qgrep通过程序名字查询进程

qgrep -l httpd

-l :列出程序名和进程ID-o:进程起始的ID

-n:进程终止的ID

3、top查看进程资源占用情况

top页面以动态刷新的方式显示进程的状态信息,默认情况下3秒钟刷新一次,页面快捷键如下:

h:获取帮助

P:根据CPU占用情况对进程列表进行排序

M:根据内存占用情况进行排序

N:根据启动时间进行排序

k:按k后输入进程号,kill掉一个进程

q:退出

4、其他分析命令

df -h:命令查看磁盘空间使用情况;

iostat:查看磁盘I/O使用情况;

vmstat:查看交换使用情况;

5、进程的不同启动方式

前台启动:用户输入命令,直接执行程序

后台启动:在命令行尾加入“&”符号

bg:将后台挂起的进程激活

jobs:查看处于后台的任务列表

fg:将处于后台的进程恢复到前台运行,需指定任务序号

Ctrl+Z 组合键:将当前进程挂起,即调入后台并停止执行

6、终止进程的运行

Ctrl+C组合键:中断正在执行的命令

Kill:用于终止指定PID号的进程

Killall:用于终止指定名称的所有进程,-9 选项用于强制终止

pkill命令:根据特定条件终止相应的进程

常用选项:

-U:根据进程所属的用户名终止相应进程;

-t:根据进程所在的终端终止相应进程;

二、开机流程相关介绍

在RHEL 6.x系统中,用了全新的Upstart启动方式,大大提高了开机效率。实际上,/sbin/init程序已经改由upstart软件包提供,而不再是SysVinit软件包。upstart来源于ubuntu。

Upstart使用了基于事件(状态变化)的模型,更加符合一个快速、有效的init系统标准:尽可能启用更少进程、尽可能将更多进程并行启动。

1、upstart启动相关配置

/etc/inittab #配置默认运行级别

/etc/init/rcS.conf #加载rc.sysinit脚本,完成系统初始化任务

/etc/init/rc.conf #兼容脚本,负责各运行级别的调用处理

/etc/init/rcS-sulogin.conf #为单用户模式启动/sbin/sushell环境

/etc/init/control-alt-delete.conf #控制终端下的Ctrl+Alt+Del热键操作

/etc/init/start-ttys.conf #配置tty终端的开启数量、设备文件

/etc/sysconfig/init #控制tty终端的开启数量、终端颜色方案

/etc/init/tty.con f#控制tty终端的开启

2、Linux系统开机流程

1.BIOS自检(加载BIOS的硬件信息、进行自我测试)

2.启动GRUB(读取并执行第一个开机设备内MBR(512字节)的boot Loader)

3.加载内核(依据boot loader的设置加载Kernel,Kernel会开始检测硬件与加载驱动程序)

4.执行init进程(从内核启动init)

5.init进行系统初始化(执行/etc/rc.d/rc.sysinit),初始化信息预配置文件在/etc/sysconfig,可以使用dmesg查看系统启动信息(比如:初始化硬件、加载模块、挂载设备等等)

6.init找到/etc/inittab文件,确定默认的运行级别(X)并触发相应runlevel,运行相应的/etc/rcX.d/中的脚本

7.最后执行/etc/rc.d/rc.local

8.加载终端或X-Window接口


3、运行级别:vi /etc/inittab

0 - halt #系统直接关机

1 - single user mode #单人维护模式,用在系统出问题时的维护

2 - Multi-user, without NFS #类似底下的 runlevel 3,但无 NFS 服务

3 - Full multi-user mode #完整含有网络功能的纯文本模式

4 - unused #系统保留功能

5 - X11 #与 runlevel 3 类似,但加载使用 X Window

6 - reboot #重新启动

4、/etc/rc3.d/文件说明

全部以Kxx开头的表示停止服务,Sxx开头的表示启动服务(xx是数字),全部文件都链接到/etc/init.d

三、任务计划管理

1、cron周期性任务计划

/var/spool/cron #用户cron任务配置存放目录

管理cron计划任务:

编辑计划任务:crontab -e [-u 用户名]

查看计划任务:crontab -l [-u 用户名]

删除计划任务:crontab -r [-u 用户名]


字段


说明


分钟


取值为从0到59之间的任意整数


小时


取值为从0到23之间的任意整数


日期


取值为从1到31之间的任意整数


月份


取值为从1到12之间的任意整数


星期


取值为从0到7之间的任意整数,0或7代表星期日


命令


要执行的命令或程序脚本

时间数值参数

* :表示该范围内的任意时间

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

- :表示一个连续的时间范围

/ :指定间隔的时间频率

例如:

0023 * * 7 /root/test.sh #每周日晚上23:00执行test脚本

0023 * * 1,3,5 /root/test.sh #每周一、周三、周五晚上23:00执行test脚本

0023 */5 * * /root/test.sh #每隔五天晚上23:00执行test脚本

2、at一次性任务计划

设置格式:at [HH:MM] [yyyy-mm-dd]

如:at 23:45

at> shutdown -h now

at> <EOT> (按ctrl+d提交任务)

四、故障排除(一般是提前做好备份,再恢复效果比较好,防患于未然)

1、root用户密码忘记

解决方法:系统启动时,出现grub时按向上或向下按键,看到如下页面,按e编辑kernel开头

在行尾添加数字1或字母s,回车,按ESC,再按b,重启,进入单用户模式

重新设置root密码,重置成功,重启系统!也可以进入急救模式修改root密码

2、rpm数据库损坏

故障原因:非正常关机、误删除运行中的程序文件;RPM数据文件被误写或删除

故障现象:不能正常查询rpm包信息;无法安装、升级或卸载软件包等

解决思路:重建RPM数据库rpm --rebuilddb 或 rpm --initdb

模拟故障:

解决办法:

3、修复MBR

故障原因:病毒、木马等造成的破坏;不正确的分区操作、磁盘读写误操作

故障现象:找不到引导程序,启动中断;无法加载操作系统,开机后黑屏

解决思路:应提前作好备份文件;以RHEL6安装光盘引导进入急救模式;从备份文件中恢复

备份MBR:

mount /dev/sdb1 /backup

dd if=/dev/sda if=/backup/mbr.bak bs=512 count=1

模拟损坏,重启:

dd if=/dev/zero if=/dev/sda bs=512 count=1

启动故障现象:

解决方法:

RHEL6光盘引导,进入急救模式,恢复备份的MBR

选择Rescue installed system,进入急救模式

下一步设置选择语言,US键盘

是否设置网络,选择NO

选择Continue继续

进入/bin/bash,这个是急救模式字符页面,使用备份恢复,重启成功!

4、修复grub引导

故障原因:MBR中的GRUB引导程序遭到破坏;grub.conf文件丢失、引导配置有误

故障现象:

解决思路:进入急救模式,从备份中恢复 grub.conf ;向MBR扇区中重建grub程序

备份grub.conf:

mount /dev/sdb1 /backup

cp /boot/grub/grub.conf /mnt/grub.conf.bak

模拟损坏:

rm -rf /boot/grub/grub.conf

解决办法:

RHEL6光盘引导,进入急救模式,恢复备份的grub.conf

进入急救模式同上,略...

上面看来,分区表没有被损坏,直接从备份恢复,重启完成!

sh-4.1#chroot /mnt/sysimage #将目录结构切换到待修复的linux系统

sh-4.1#cp /mnt/grub.conf.bak /boot/grub/grub.conf

sh-4.1#exit

sh-4.1#reboot

5、修复/etc/fstab文件

/etc/fstab记录系统的磁盘和分区挂载信息

故障现象:启动中提示 “... /etc/fstab: No such file or directory”

模拟损坏:rm -rf /etc/fstab

解决方法:进入急救模式,手动挂载分区并重建fstab

手动挂载分区,或从备份复制

vi /part/etc/fstab

/dev/vg_202/lv_root ext4 defaults1 1 1

/dev/vg_202/lv_swap swap defaults1 0 0

6、修复/etc/inittab文件

故障现象:启动中提示 “INIT:NO Inittab file found”

模拟故障:rm -rf /etc/inittab

解决方法:进入急救模式,过程略...,安装initscripts软件包即可!

时间: 2024-09-17 00:08:27

RHCE学习<5>RHEL6进程管理、Cron任务计划和启动故障排除的相关文章

RHCE学习&lt;1&gt;RHEL6系统安装、安装VM Tools和配置YUM本地源

一.RHEL6.3系统安装 将RHEL6系统光盘放入光驱中并在BOIS中设置光盘启动,开机后进入RHEL6的安装界面 Installor upgrade an existing system:全新安装或更新一个已存在的RHEL系统 Installsystem with basic video driver: 使用最基本的显卡驱动来安装操作系统 Rescue installed system:进入救援模式 Boot from local drive:直接引导启动本地驱动器(硬盘)中的系统 系统会提

Spark修炼之道(基础篇)——Linux大数据开发基础:第七节:进程管理

本节主要内容 进程管理简介 进程管理常用命令 计划任务 1. 进程管理简介 (1)进程概念 进程是操作系统中非常重要的一个概念,进程是程序的执行过程,相对于程序,进程是动态的,在linux系统中,它与用户权限相关,程序与进程并没有一一对应,一个程序可能对应多个进程,例如: //ps命令列出当前所有对应当前用户的活动进程 xtwy@ubuntu:~$ ps PID TTY TIME CMD 2087 pts/0 00:00:00 bash 2105 pts/0 00:00:00 ps xtwy@u

分布式系统部署、监控与进程管理的几重境界

约定:本文只考虑 Linux 系统,文中涉及的"服务程序"是以 C++ 或 Java 编写,编译成二进制可执行文件(binary 或 jar),程序启动的时候一般会读取配置文件(或者以其他方式获得配置信息),同一个程序每个服务进程的配置文件可能略有不同."服务器"这个词有多重含义,为避免混淆,本文以 host 指代服务器硬件,以"服务端程序/进程"指代服务器软件(或者具体说 Web Server 和 Sudoku Solver,这两个都是服务软件

Win7系统巧用Windows进程管理器

  Windows进程管理器是一款功能比较强大的进程管理工具,可以进程查询.进程管理,包括结束进程.暂停进程.恢复进程.删除进程等,还可以进行端口访问查询.查看系统性能信息等. 1.进程管理 在win7系统中运行该软件,主界面将所有功能分为了进程管理.端口监听.系统信息三大部分:软件对进程的管理和允许用户对进程的操作等非常全面.对于每一个进程,用户除了可以查看其详细进程信息外,用户还可以随时结束指定进程和删除指定进程. 在对进程操作方面,该软件非常有特色:首先是"暂停进程"功能,这一功

浅谈 Node.js 和 PHP 进程管理

所周知,PHP 占据了服务端编程语言的半壁江山,正如汪峰在音乐圈的地位一般.随着 Node.js 逐渐走上服务端编程的舞台,关于 PHP 和 Node.js 孰优孰劣的争论也不曾间断. 垄断性的市场份额足以佐证 PHP 的优秀.并且 HHVM 虚拟机.PHP 7 的革新,也给 PHP 带来了跨越式的性能突破.然而,当我们为语言层面的性能差异喋喋不休时,却往往忽略了 Web 模型在性能表现中的权重. 从 CGI 到 FastCGI 早期的 Web 服务,是基于传统的 CGI 协议实现的.每个发送到

linux那点事儿(六)----进程管理详解(推荐)

目录:(内容较多,加个目录) |-进程管理  进程常用命令 |- w查看当前系统信息 |- ps进程查看命令 |- kill终止进程 |- 一个存放内存中的特殊目录/proc |- 进程的优先级 |- 进程的挂起与恢复 |- 通过top命令查看进程 计划任务 |- 计划任务的重要性 |- 一次性计划at和batch |- 周期性计划crontab 进程管理的概念                                                                    

LINUX(十一)Linux进程管理及作业控制

        Linux是一个多任务的操作系统,系统上同时运行着多个进程,正在执行的一个或多个相关进程称为一个作业.使用作业控制,用户可以同时运行多个作业,并在需要时在作业之间进行切换.本章详细介绍进程管理及作业控制的命令,包括启动进程.查看进程.调度作业的命令. 进程及作业的概念 Linux是一个多用户多任务的操作系统.多用户是指多个用户可以在同一时间使用计算机系统:多任务是指Linux可以同时执行几个任务,它可以在还未执行完一个任务时又执行另一项任务. 操作系统管理多个用户的请求和多个任务

Linux进程管理与调度-之-目录导航【转】

转自:http://blog.csdn.net/gatieme/article/details/51456569 版权声明:本文为博主原创文章 && 转载请著名出处 @ http://blog.csdn.net/gatieme   目录(?)[-] 项目链接 进程的描述 进程的创建 进程的加载与运行 进程的退出 进程的调度 调度普通进程-完全公平调度器CFS   日期 内核版本 架构 作者 GitHub CSDN 2016-07-21 Linux-4.6 X86 & arm gat

linux内核学习之四:进程切换简述【转】

转自:http://www.cnblogs.com/xiongyuanxiong/p/3531884.html 在讲述专业知识前,先讲讲我学习linux内核使用的入门书籍:<深入理解linux内核>第三版(英文原版叫<Understanding the Linux Kernel>),不过这本书不一定对每个人都适合,大家可以根据自己的情况选择适合的入门书籍.看了前面几章,感觉这本书的语言极其精练,没有一句多余的,必须慢慢读.可能我以前习惯了粗略浏览的阅读方式,读这本书时经常看着看着就