一种远程管理Linux系统工具的设计与实现
一、需求分析
1.1 课题描述
远程管理Linux系统工具的实现有两种模式可以采取:B/S模式和C/S模式。B/S模式采用浏览器/服务器的方式对远程Linux系统进行管理操作,C/S模式采用客户端/服务器的方式对远程Linux系统进行管理操作。
经过分析,本课题是为了给系统管理员提供一种远程管理Linux系统的工具软件,该工具软件以C/S模式实现。该工具主要功能实现对Linux系统服务器的关机和重启、用户和组的管理;对Linux系统文件夹或文件的管理,对Linux系统进程的操作等等。远程管理Linux系统工具的产生符合以下几点的需要:
1、现阶段Linux广泛地应用于日常生活与工作,Linux下的应用软件需要更进一步的发展。
2、基于Linux课题的创新。
1.2 课题目标
1、客户端与服务端能够数据通信。
2、能够对Linux系统的文件系统进行管理。
3、能够对Linux系统的进程进行查看和管理。
4、能够对Linux系统进行管理,可以关机或重启、管理用户和组等。
5、能够对Linux系统的网络服务进行管理。
6、使得远程管理更加人性化、更加简单、更加方便、更加友好。
7、要使得该软件容易升级和修改、扩展,容易被使用。
1.3 开发环境
Linux 系统,GTK库
1.4 运行环境
该工具运行在安装有Linux操作系统的远程主机中。
1.5 性能分析
根据该课题的要求与目标、现在的技术状况,可以确定该系统在性能方面要达到以下目标:
1、该系统能够及时地返回执行的结果。
2、该系统要有防止访问单独文件的情况,不管要访问什么样的文件都必须通过主页面。
3、该程序要防止不正确或者非法命令的执行,防止在程序运行过程中,因为执行了某个命令而导致整个系统的崩溃或者连接的断开。
二、功能分析
该工具采用C/S模式并且进行远程管理,整个系统有两大模块,即客户程序和服务程序。
2.1 客户程序
客户程序的功能是界面的编写,并和服务程序通信。采用GTK编写界面,采用Socket编程实现通信。
客户程序的功能有:
(1)为用户提供操作界面
(2)和服务程序进行数据通信
功能模块有:
(1)系统操作模块:对Linux系统进行操作,关机和重启,管理用户和用户组,修改密码等。
(2)文件系统操作模块:对Linux文件系统进行管理,可以对文件夹或文件进行创建、移动和删除等操作。
(3)进程操作模块:系统进程查看或终止,对开启服务进行管理。
(4)网络操作模块:管理Apache服务器,DNS服务器等。
2.2 服务程序
服务程序的功能是接收客户程序的数据,并且通过接收到的数据来完成系统或应用程序的配置。
服务程序的功能有:
(1)监听端口,接收数据和向客户程序发送数据;
(2)根据客户程序发来的数据对文件进行修改。