一次AirNet自动化系统席位重启异常的分析与思考

(整期优先)网络出版时间:2021-03-11
/ 2

一次 AirNet自动化系统席位重启异常的分析与思考

张蕾

中国民航贵州空中交通管理分局 贵州省贵阳市 550012

摘要:目前空管自动化系统的维护主要包含日维护、月维护、季度维护、年度维护等定期维护内容,其中月维护的主要内容为席位的操作系统级别的重启与重置,目的为释放该席位主机的系统内存、进行预防性重启以期望提前发现系统级别的异常或者硬件故障等。本文阐述了一次月维护过程中,系统无法正常启动到正常AirNet自动化系统的软件界面,并通过分析与思考日常定期维护中遇到的典型异常,为自动化月维护中再次出现类似的异常提供参考。

关键词:空管自动化;定期维护;异常原因;分析与处理

  1. 引言

随着中国民航的快速发展,航班飞行流量快速的增长,各地空管单位都建立起多套空管自动化系统[1],其中就有不少现场建立了AirNet空管自动化系统。根据上级、民航空管各类维护规程、标准等参考性文件要求,自动化系统定期维护中,现阶段主要包含日维护、月维护、季度维护、年度维护等定期维护内容。这些定期维护都具有各自的维护目标与希望达到的目的,其中月维护的其中一个维护目标为定期发现系统设备潜在的软件异常或者硬件隐患。对于在月维护过程中的操作系统级别的重启过程中,发现的多种异常现象,大多由于空管自动化应用软件运行的操作系统,例如RedHat或者其他类Unix系统本身的系统设置或者依赖软件、驱动程序等方面的问题引起的,也有部分为空管自动化应用软件的Bug引起的系统问题,例如应用软件定期释放操作系统资源不及时,如不及时内存释放或者随着运行时间的积累占用系统资源过多。因此,定期月维护中重启席位主机的操作系统有利于提前发现系统设备潜在的软件异常或者硬件隐患,该项定期操作在空管自动化的维护中起着十分重要的作用。本文结合实际工作中的一个典型案例,阐明AirNet自动化系统席位操作系统重启中异常的分析与排除思路。

  1. 重启异常的分析与处理

2.1 案例具体情况

异常的具体情况:UTC时间2019年3月23日15时30分,技术人员反映在对AirNet自动化系统中sdd22席位主机RedHat 5.8操作系统进行例行重启的过程中,该席位启动到命令行界面,未能正常启动到应用软件的正常界面。

分析处理过程:第一步,观察到该席位主机能够重启到命令行界面,但是未能重启到应用软件的正常界面。可以初步判断该主机的硬件基本正常,不是硬件故障造成无法启动,初步分析是由于软件层面的原因造成的异常现象。第二步,从该系统监控SMC席位上无法监控到该席位的情况,判断系统监控软件SMC进程无法获取到该主机的运行状态。根据AirNet自动化系统的设计,SMC软件是通过mid32进程发送来的状态信息实现对sdd22主机进行监控与控制[2][3]。第三步,在sdd32主机的命令行界面输入“top”命令,查看当前sdd22的系统内运行的进程有哪些,结果未包含mid32进程。第四步,手动运行mid32程序,出现运行错误,提示“not connect Xserver”。因此,判断可能由于分辨率或者Xserver进程的原因,无法启动mid32进程。接下来,排除故障的方向指向系统的Xserver服务。

2.2 LinuxXserver图形基本原理[5]

Linux本身只表示Linux内核,但在实际上已经习惯用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统(也被称为GNU/Linux),基于这些组件的Linux软件被称为Linux发行版。

1、X是一种协议,不是具体软件

按照该协议规定:一个基于X的应用程序需要运行并显示内容时他就联接到X服务器,开始用X协议和服务器交互。例如一个X应用程序要在屏幕上输出一个图形,X应用程序只负责告诉X服务器在屏幕的什么地方用什么颜色绘制一个多大的图形,而具体的"绘制"动作,比如这个图形怎样生成,调用显卡驱动程序去驱动显卡完成相关工作。以上工作是由X服务器来完成的,而这种方式成为一种协议,但协议不是具体的软件。

2、X协议和XFree86\Xorg的关系

X协议就需要具体的软件来实现这个协议。Xfree86就是一个实现X协议的软件,实现X协议的软件也并不只有XFree86,XFree86只是实现X协议的一个免费X服务器软件。商业上常用的Xorg等X服务器软件,现在的linux发行版都用Xorg。

X是本身一种协议,与运行的操作系统平台无关,技术上可以使X应用程序显示在任何安装有X服务器的远程计算机上。在大多数情况下,X应用程序都调用本机的X服务器,将显示结果输出到本机显示器。

3、X和X11的关系

/usr/X11目录是XFree的默认安装目录,不同版本的X协议不能通信,现在的X服务器软件和X应用程序都遵循X11R6。

4、Xserver和WM(window manager,窗口管理器)之间的关系

如果操作系统启动后,一开始就进入图形界面,可打开一个XTERM输入# init 3,即可安全返回到字符界面。

输入命令startx 起动图形界面,看到的是一个和平时使用一样的完整的图形界面操作环境,可以最大化、最小化、移动、关闭窗口等。在键盘上同时按Ctrl+Alt+Backspace返回字符界面。输入xinit,再次启动图形界面,你看到一个XTERM,而且不能最小化、最大化、移动窗口,也没有边框。

同样一个X应用程序呈现出不同的情况,这是由于用startx起动图形界面时也启动了一个WM(即窗口管理器)。但是,用xinit起动图形界面的时未启动WM。而WM的作用就是最大化、最小化、移动、关闭窗口等,而这些功能不是X服务器来负责完成的。

5、linux图形界面的层次关系

Linux内核—>X服务器<—[通过X协议交互]—>窗口管理器—>X应用程序。

2.3一般分析方法与步骤

根据上述案例的分析与Xserver的原理介绍,对于重启异常的问题,给出4个步骤进行分析:根据现象判断故障原因,软件故障还是硬件故障;若是软件故障,根据AirNet系统软件设计的原理,判断引起软件故障的原因;查询相关日志进行分析;结合启动的系统条件进行分析。

2.4异常情况的解决

作为空管单位重要的信息系统,尽快恢复该系统的相关功能,刻不容缓。经过系统分析异常的现象:手动运行mid32程序,出现运行错误,提示“not connect Xserver”。因此,判断可能由于分辨率或者Xserver进程的原因,无法启动mid32进程。一般的定期维护不会对系统配置进行修改,为了尽快恢复该系统的功能,将一台正常工作的sdd席位下的/usr/X11/目录中的xorg.conf文件拷贝到故障机器,再进行重启系统,故障解决。系统功能恢复,在AirNet系统的SMC软件上可以正常监控与控制sdd22主机。

  1. 结论

自动化系统作为一种重要的空管信息系统,对于该系统的维护人员应重视日维护、月维护、季度维护、年度维护等定期维护内容,对于定期维护中出现的异常的条件与机制,提前发现系统级别的异常或者硬件故障,平时通过对系统出现的异常加以研究学习与总结,才能在日常工作中及时、准确的处理和发现各类软件与硬件的BUG情况,最终获取更多故障的处置经验。本文首先阐述一次重启异常的技术机理,然后通过分析一个典型的案例原因,最终阐述了定期维护中处理重启异常的一般方法与步骤,希望能为空管自动化系统维护人员提供分析类似异常提供参考。

  1. 参考文献

[1]汪万维等.民航空管自动化系统[B].2016.1-5

[2]AirNet空管自动化系统技术手册v1.3.2019

[3] AirNet空管自动化系统操作手册.2019

[4] 民航贵州空管分局技术保障部通信保障室岗位综合运行手册-二所自动化系统分册V1版.2015

[5] Robert Love .Linux内核设计与实现(第3版).机械工业出版社. 2011-06-01