The invention discloses a method for making and starting mirror files of diskless system, which includes: configuring the basic module of the kernel to compile and generate the kernel and the kernel module; generating the root file system directory of the target operating system; adding the kernel to the root file system directory to mount the NFS service after booting; and obtaining the execution foot of software and driver from the NFS server. In this paper, we add kdump tool and configure it to start and store the system outage log on the NFS server, set up a system log service script to redirect the system log to the NFS server, package the root file system directory to generate the target operating system image, and start the system without disk based on the aforementioned image file and PXE+DHCP+TFTP+NFS. The invention can greatly reduce the size of the mirror file, improve the startup efficiency, and facilitate the system fault analysis when the system goes down.
【技术实现步骤摘要】
一种无盘系统的镜像文件制作及启动方法
本专利技术涉及计算机无盘启动技术,具体涉及一种无盘系统的镜像文件制作及启动方法。
技术介绍
一般来说,操作系统都是安装在硬盘中,即所谓的“有盘启动”。然而在高性能计算、嵌入式系统、网吧、酒店、教育等众多领域中的某些计算机客户端都没有本地磁盘,这些系统中计算机客户端需要从远程服务器加载和运行操作系统,即“无盘启动”。无盘启动系统中计算机客户端的所有信息都保存在内存中,如:操作系统、系统在运行过程中产生的日志、内核运行信息等都在内存中,一旦系统宕机或重启,日志和内核运行信息都将丢失。在无盘系统中,将无盘系统内核及镜像所在的服务器称为“无盘服务器”;将通过网络从无盘服务器上下载内核及镜像到本机,并通过网络来启动操作系统的计算机客户端称为“无盘客户端”;把在无盘客户端启动的操作系统称为“目标操作系统”。无盘启动具有下述优点:1)管理和维护简单、安全性高,无盘系统配置只要在服务器上进行修改,无盘系统客户端重新启动系统即可实现所有节点的配置一致化。2)节能环保、系统组装密度高。无盘系统设计时可以减少I/O接口,没有本地磁盘使计算机功耗大幅下降,系统更加节能,同时没有本地磁盘单结点占用的空间减小,系统组装密度更高。传统的无盘计算机启动方法基本上都是基于PXE+DHCP+TFTP实现的,包括以下步骤:第一步,编译目标操作系统的内核。第二步,生成目标操作系统根文件系统镜像,镜像的具体内容由目标操作系统的类型及用户需求来决定,并将内核模块、系统软件、库文件、头文件等目标操作系统需要用到的文件按照linux系统目录树的规则组织并打包成一个镜 ...
【技术保护点】
1.一种无盘系统的镜像文件制作方法,其特征在于,实施步骤包括:1)针对无盘系统计算机客户端的目标操作系统,配置用于实现内核启动及挂载NFS服务的内核基本模块,配置完成后进行模块编译生成内核及内核模块;2)根据内核及内核模块生成目标操作系统的根文件系统目录,在所述根文件系统目录中增加内核启动后的执行脚本,所述执行脚本被配置为挂载NFS服务、以及从NFS服务器中获取系统软件、应用软件、驱动程序;3)在所述根文件系统目录中增加kdump工具,且将kdump工具配置为将系统宕机日志存储到指定的NFS服务器上,将kdump工具配置为开机启动kdump服务;4)在所述根文件系统目录中建立系统日志服务脚本将系统日志重定向到NFS服务器;5)将目标操作系统的根文件系统目录打包生成目标操作系统镜像。
【技术特征摘要】
1.一种无盘系统的镜像文件制作方法,其特征在于,实施步骤包括:1)针对无盘系统计算机客户端的目标操作系统,配置用于实现内核启动及挂载NFS服务的内核基本模块,配置完成后进行模块编译生成内核及内核模块;2)根据内核及内核模块生成目标操作系统的根文件系统目录,在所述根文件系统目录中增加内核启动后的执行脚本,所述执行脚本被配置为挂载NFS服务、以及从NFS服务器中获取系统软件、应用软件、驱动程序;3)在所述根文件系统目录中增加kdump工具,且将kdump工具配置为将系统宕机日志存储到指定的NFS服务器上,将kdump工具配置为开机启动kdump服务;4)在所述根文件系统目录中建立系统日志服务脚本将系统日志重定向到NFS服务器;5)将目标操作系统的根文件系统目录打包生成目标操作系统镜像。2.根据权利要求1所述的无盘系统的镜像文件制作方法,其特征在于,步骤1)中用于实现内核启动及挂载NFS服务的内核基本模块包括:目标CPU体系结构支持模块、网络驱动模块、通信协议模块、文件系统镜像支持模块、内存文件系统模块、网络文件系统模块以及配置内核切换功能模块。3.根据权利要求1所述的无盘系统的镜像文件制作方法,其特征在于,步骤2)中的根文件系统为initramfs文件系统。4.根据权利要求3所述的无盘系统的镜像文件制作方法,其特征在于,步骤2)中生成无盘系统的根文件系统的详细步骤包括:2.1)创建基于initramfs文件系统的根文件系统目录/opt/initramfs;2.2)将linux系统自带的根文件系统镜像解压到根文件系统目录/opt/initramfs下;2.3)将根文件系统目录下的内核模块目录/opt/initramf/lib/modules/下的文件夹删除,将进行模块编译生成内核以及内核模块复制到根文件系统目录下的内核版本对应的内核模块目录/opt/initramfs/lib/modules/<kernel_version>/下,其中<kernel_version>为内核的版本号;2.4)在根文件系统目录/opt/initramfs中配置生成initramfs根文件系统启动执行的第一个初始化程序init,以便通过初始化程序init加载真正的根文件系统;2.5)在根文件系统目录/opt/initramfs中配置目标操作系统的/etc/fstab开机挂载的文件系统,并将内核切换功能模块switch_root,busybox工具复制到/usr/bin目录下;2.6)在所述根文件系统中的自动启动目录/opt/initramfs/etc/init.d/下增加内核启动后的启动脚本setup,所述启动脚本setup被配置为挂载NFS服务、并调用nfs挂载目录下的无盘系统配置程序dlfa_config.sh,通过nfs挂载目录下的无盘系统配置程序dlfa_config.sh从NFS服务器中获取系统软件、应用软件、设备驱动程序。5.根据权利要求4所述的无盘系统的镜像文件制作方法,其特征在于,步骤2.4)中初始化程序init被配置为包括下述执行步骤:2.4.1)创建目标操作系统的根目录/sysroot;2.4.2)挂载proc文件系统到目标操作系统的/proc目录;2.4.3)挂载sysfs文件系统到目标操作系统的/sys目录;2.4.4)挂载tmpfs文件系统到目标操作系统的根目录/sysroot,判断挂载tmpfs文件系统是否成功,如果挂载成功则跳转执行步骤2.4.5);否则,退出;2.4.5)将根目录/下的所有文件移到/sysroot目录下;2.4.6)用切换工具switch_root切换到新的根目录/sysroot,即将/sysroot当作根目录/,并执行初始化引导程序/sbin/init引导真正的文件系统。6.根据权利要求4所述的无盘系统的镜像文件制作方法,其特征在于,步骤2.6)中的启动脚本setup被配置为包括下述执行步骤:2.6.1)设置内核文件大小;2.6.2)执行DHCP客户端动态获取IP地址;2.6.3)从/proc/cmdline中获取内核传来的参数,包括:nfs_src表示NFS服务器IP地址及其共享目录,nfs_dist表示NFS在无盘客户端的挂载目录,并根据内核传来的参数挂载NFS文件系统;2.6.4)根据...
【专利技术属性】
技术研发人员:朱清华,张蕾,王睿伯,董勇,张伟,周恩强,谢旻,迟万庆,张文喆,张百达,高颖慧,陈凤英,
申请(专利权)人:中国人民解放军国防科技大学,
类型:发明
国别省市:湖南,43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。