Server startup item starting method and device
By obtaining the target startup configuration information from the substrate management controller when the server is started and automatically adjusting the order of the startup item, the problem of temporary adjustment of the startup item order in the prior art is solved, and the default settings are automatically restored, which improves the stability and management efficiency of the server.
Patent Information
- Application Number
- CN202510396369.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-31
- Publication Date
- 2025-05-02
- Estimated Expiration
- 2045-03-31
AI Technical Summary
In the prior art, temporary adjustment of the server startup item order requires manual adjustment of the order and then manual restoration of the default settings, resulting in low efficiency.
When the server starts, the target startup configuration information is obtained from the substrate management controller, and the order of the startup items is determined based on whether the valid target priority order is included. If the preset time exceeds the preset time, the target priority order becomes invalid, and the startup items will automatically return to the default settings.
Improves the efficiency of temporarily adjusting the order of startup items, ensures the stability and predictability of the server, and avoids the steps of manual adjustment and recovery.
Smart Images

Figure CN119917180A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a method and device for starting a server startup item. Background Art
[0002] A server is a computing device or software system that is specifically used to provide various services and resources to other computers or devices. It can process, manage and store data, run applications, and support various network activities. Startup items usually refer to the order in which the operating system or other software components are loaded when the server starts. By adjusting the startup order of startup items, the server startup process can be better managed to ensure system stability, performance, and security.
[0003] Therefore, improving the way to change the server's startup configuration information and changing the startup order of server startup items to protect the normal operation of the server is a challenge faced by current server firmware maintenance and server startup configuration management. Summary of the invention
[0004] The present application provides a method and device for starting server startup items, so as to at least solve the technical problem in the related art that temporary adjustment of the startup item order requires manual adjustment of the order and then manual restoration of the default settings, resulting in low efficiency in temporarily adjusting the startup item order.
[0005] The present application provides a method for starting a server startup item, comprising: when the server is started, and in the case that target startup configuration information of the server startup item is determined to be stored in a baseboard management controller, obtaining the target startup configuration information from the baseboard management controller, wherein, in the case that the target startup configuration information is stored in the baseboard management controller for a period of time less than or equal to a preset period of time, the target startup configuration information includes a target priority sequence with a valid state, and in the case that the target startup configuration information is stored in the baseboard management controller for a period of time greater than the preset period of time, the target startup configuration information does not include the target priority sequence with a valid state; in the case that it is determined that the target startup configuration information includes the target priority sequence with a valid state, starting the startup item according to the target priority sequence; in the case that it is determined that the target startup configuration information does not include the target priority sequence with a valid state, starting the startup item according to the default priority sequence.
[0006] The present application also provides a startup device for a server startup item, comprising: an acquisition module, used to acquire target startup configuration information from a baseboard management controller when the server is started and when it is determined that the baseboard management controller stores target startup configuration information of the server startup item, wherein when the target startup configuration information is stored in the baseboard management controller for a period of time less than or equal to a preset period of time, the target startup configuration information includes a target priority sequence with a valid state, and when the target startup configuration information is stored in the baseboard management controller for a period of time greater than a preset period of time, the target startup configuration information does not include a target priority sequence with a valid state; a first startup module, used to start the startup item according to the target priority sequence when it is determined that the target startup configuration information includes the target priority sequence with a valid state; and a second startup module, used to start the startup item according to the default priority sequence when it is determined that the target startup configuration information does not include the target priority sequence with a valid state.
[0007] The present application also provides an electronic device, comprising: a memory for storing a computer program; and a processor for implementing the steps of any of the above-mentioned server startup item startup methods when executing the computer program.
[0008] The present application also provides a computer-readable storage medium, in which a computer program is stored, wherein when the computer program is executed by a processor, the steps of the startup method of any of the above-mentioned server startup items are implemented.
[0009] The present application also provides a computer program product, including a computer program, which implements the steps of any of the above-mentioned server startup item startup methods when the computer program is executed by a processor.
[0010] Through the present application, when the server is started, if it is determined that the baseboard management controller stores the target startup configuration information of the startup item, the target startup configuration information is obtained from the basic management controller, and it is judged whether the target startup configuration information includes a target priority sequence with a status of validity. Then, if the target startup configuration information includes a target priority sequence with a status of validity, the startup item is started according to the target priority sequence. If the target startup configuration information does not include a target priority sequence with a status of validity, the startup item is started according to the default priority sequence. Since the baseboard management controller manages the stored target startup configuration information based on a preset time, when the preset time is exceeded, the target priority sequence included in the target startup configuration information becomes invalid, and the startup item is automatically restored to the default setting, thereby ensuring that the temporary dynamic adjustment of the startup item will not permanently affect the startup configuration of the server. At the same time, it also ensures the stability and predictability of the server in daily operation. Therefore, the technical problem in the related art that the temporary adjustment of the startup item sequence requires manual adjustment of the sequence and then manual restoration of the default setting, resulting in low efficiency of temporarily adjusting the startup item sequence, can be solved, thereby achieving the technical effect of improving the efficiency of temporarily adjusting the startup item sequence. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] In order to more clearly illustrate the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0012] Figure 1 A hardware structure block diagram of a mobile terminal for a method for starting a server startup item provided in an embodiment of the present application;
[0013] Figure 2 A flowchart of a method for starting a server startup item provided in an embodiment of the present application;
[0014] Figure 3 A schematic diagram of system interaction provided in an embodiment of the present application;
[0015] Figure 4 A flowchart of PXE boot settings provided in an embodiment of the present application;
[0016] Figure 5 A swimlane diagram of the PXE boot settings provided in an embodiment of the present application;
[0017] Figure 6 This is a structural block diagram of a startup device for a server startup item according to an embodiment of the present application. DETAILED DESCRIPTION
[0018] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0019] It should be noted that, in the description of this application, the terms "include", "comprise" or any other variant thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. The terms "first", "second", etc. in this application are used to distinguish similar objects, and are not used to describe a specific order or sequence.
[0020] In order to enable those skilled in the art to better understand the present application, the present application is further described in detail below in conjunction with the accompanying drawings and specific implementation methods.
[0021] In conjunction with the specific application environment architecture or the specific hardware architecture on which the execution of the startup method of the server startup item depends, the specific application environment architecture or the specific hardware architecture is described herein.
[0022] The method embodiments provided in the embodiments of the present application can be executed in a mobile terminal, a computer terminal or a similar computing device. Taking running on a mobile terminal as an example, Figure 1 FIG. 1 is a hardware structure block diagram of a mobile terminal for a method of starting a server startup item according to an embodiment of the present application. Figure 1 As shown, the mobile terminal may include one or more ( Figure 1 Only one is shown in the figure) a processor 102 (the processor 102 may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA) and a memory 104 for storing data, wherein the mobile terminal may also include a transmission device 106 and an input / output device 108 for communication functions. It can be understood by those skilled in the art that Figure 1 The structure shown is only for illustration and does not limit the structure of the mobile terminal. Figure 1 More or fewer components as shown, or with Figure 1 Different configurations shown.
[0023] The memory 104 can be used to store computer programs, for example, software programs and modules of application software, such as the computer program corresponding to the startup method of the server startup item in the embodiment of the present application, and the processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, that is, realizing the above method. The memory 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include a memory remotely arranged relative to the processor 102, and these remote memories may be connected to the mobile terminal via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0024] The transmission device 106 is used to receive or send data via a network. The specific example of the above network may include a wireless network provided by a communication provider of the mobile terminal. In one example, the transmission device 106 includes a network adapter (Network Interface Controller, referred to as NIC), which can be connected to other network devices through a base station so as to communicate with the Internet. In one example, the transmission device 106 can be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0025] An embodiment of the present application provides a method for starting a server startup item, and the method is described in detail in conjunction with the execution flow of the method for starting a server startup item.
[0026] The professional terms in the embodiments of the present application are explained below:
[0027] BIOS: Basic Input Output System, is a firmware stored in the ROM chip on the computer motherboard, which is mainly responsible for the initialization and self-test of computer hardware, as well as providing the most basic hardware control program during operation. When the computer starts, BIOS will execute a series of preset instructions, check and configure hardware devices, and provide the necessary environment for loading the operating system.
[0028] BMC: Baseboard Management Controller is a dedicated microcontroller used to monitor and manage the hardware status of the computer system, including power supply, temperature, fan speed, etc., and can provide remote system monitoring and management functions through the network.
[0029] CPU: Central Processing Unit, is one of the main hardware components of a computer, responsible for executing instructions and processing data. The CPU is equivalent to the brain of the computer, controlling the operation of the computer, performing arithmetic and logical operations, and sending control signals.
[0030] IPMI: Intelligent Platform Management Interface, is a standardized interface for remote monitoring and management of servers. IPMI allows system administrators to perform operations such as power control, hardware monitoring, event logging, and system recovery of servers over the network without the need for an operating system to run.
[0031] PCI: Peripheral Component Interconnect, a bus standard for connecting high-speed devices in a computer (such as graphics cards, sound cards, network cards, etc.). PCI allows these devices to communicate directly with the computer's motherboard through slots, providing high-speed data transmission capabilities. With the development of technology, the PCI standard has also undergone many upgrades, including PCI-X, PCI Express, etc., and is a more modern, high-speed bus standard.
[0032] Redfish Protocol: Intelligent Platform Management Redfish Standard Protocol is a management interface standard for modern data centers and cloud computing environments. It is an open industry standard protocol. Redfish provides a more modern, flexible and secure data center management method based on HTTP / HTTPS, RESTful API, JSON data format and OData query language. In addition, the Redfish protocol can achieve remote management of USB devices on the server through the physical USB Over LAN interface communication protocol.
[0033] USB Over Lan: Universal Serial Bus over the network is a technology that allows USB devices to be remotely accessed and controlled over the network as if they were directly connected to the remote client. This technology is particularly useful in remote management and maintenance, and can enable USB connection operations for devices that are physically far away. In data centers, USB Over Lan technology is often used for remote BIOS configuration, system installation, or fault diagnosis, which involves the use of USB storage devices or other hardware with USB interfaces.
[0034] USB: Universal Serial Bus, is a widely used interface standard for connecting computers and peripheral devices, such as keyboards, mice, printers, storage devices, etc. USB provides a plug-and-play connection method, allowing devices to be hot-swapped without restarting the system.
[0035] NVMe hard drive: The full name is Non-Volatile Memory Express, which is an optimized storage interface protocol mainly used for solid-state drives (SSDs). NVMe is designed to use the PCIe (Peripheral Component Interconnect Express) bus to provide low latency and high transmission speeds, and is particularly suitable for high-bandwidth and low-latency storage applications. NVMe hard drives can achieve higher I / O performance and have significantly improved read and write speeds compared to traditional SATA or SAS interface solid-state drives.
[0036] USB flash drive: The full name is USB Flash Drive, which is a portable storage device that uses a USB interface to connect to a computer. USB flash drives usually include a flash memory chip and a USB interface controller, which can store various data files and easily transfer data between different computers. Due to its portability and ease of use, USB flash drives are very popular in daily data storage and transmission.
[0037] CD-ROM0: The full name is Compact Disc Read-Only Memory, which is an optical storage medium used to store digital data. CD-ROMs can be read, but once the data is written, it cannot be changed, so it is called read-only. The capacity of CD-ROMs is usually 650MB to 700MB, and they are mainly used to distribute software, games, music, videos and other data. CD-ROMs need to be read by a CD-ROM drive (or optical drive), which can read data on the CD but cannot write data. When CD-ROM0 is mentioned, this usually refers to the first CD-ROM device in the BIOS or UEFI boot settings, that is, the CD-ROM that is designated as the priority boot among multiple CD-ROM drives.
[0038] LCP: Link Control Protocol, a component of the Point-to-Point Protocol (PPP), is used to establish, configure, and test data link connections.
[0039] SPI: Serial Peripheral Interface is a synchronous serial data link interface used for communication between microcontrollers and peripheral devices, such as memory chips, sensors, peripherals, etc. SPI allows fast data transfer between devices and is typically used for short-distance communications that require high-speed data transfer.
[0040] QSPI: Quad SPI, a four-wire serial peripheral interface, is an advanced version of the SPI interface that uses an additional control line to send and receive 4 bits of data at the same time, thereby significantly increasing the data transfer rate. QSPI is often used to communicate with high-speed flash memory and other peripherals.
[0041] CCXI: Cache Coherent eXtended I / O Interconnect, a cache-coherent extended I / O interconnect, is a high-speed, low-latency interconnect technology designed to provide cache-coherent I / O device communication. It is mainly used in servers and high-performance computing systems to enhance the system's I / O performance and consistency.
[0042] UPI: Unified Port Interconnect, is an interconnect technology used in Intel's Xeon Scalable Processors, used as a channel for high-speed communication between processors. In Intel's architecture, UPI replaces the old QPI (Quick Path Interconnect) technology, providing faster data transmission and lower latency.
[0043] GMI: Graphics and Memory Interconnect, a communication interface between processors and one of the interfaces used for high-speed communication.
[0044] NVRAM: Non-Volatile Random Access Memory, is a type of memory that can retain data after power failure, similar to the access speed of RAM (Random Access Memory), but with the persistence of ROM (Read-Only Memory). In computer systems, NVRAM is often used to store configuration information that needs to be accessed when the system starts.
[0045] EEPROM: Electrically Erasable Programmable Read-Only Memory, is a special type of memory where data can be electronically erased and rewritten. Unlike flash memory, data in EEPROM can be updated at the byte level without erasing the entire chip. In hardware, EEPROM is used to store small blocks of data that need to be updated frequently, such as device configurations and user settings.
[0046] DXE: Driver eXecution Environment, a stage in the UEFI boot process, is mainly responsible for loading and executing drivers to provide the system with access to and control of hardware.
[0047] SCE: Setup Control Environment is a conceptual environment that is often used to describe the environment for configuring and controlling boot settings in a server or computer system. In server management, SCE may involve the management of BIOS / UEFI settings, including boot order, hardware configuration, etc.
[0048] RAID card: Redundant Arrays of Independent Disks, disk array.
[0049] OCP network card: Open Compute Project Network Interface Card version 3.0, is an open network interface card design specification.
[0050] In this embodiment, a method for starting a server startup item is provided. Figure 2 is a flowchart of a method for starting a server startup item according to an embodiment of the present application, such as Figure 2 As shown, the process includes the following steps:
[0051] Step S202, when the server is started, and in the case where it is determined that the baseboard management controller stores the target startup configuration information of the startup item of the server, the target startup configuration information is obtained from the baseboard management controller, wherein, in the case where the target startup configuration information is stored in the baseboard management controller for a period of time less than or equal to a preset period of time, the target startup configuration information includes a target priority sequence with a valid state, and in the case where the target startup configuration information is stored in the baseboard management controller for a period of time greater than the preset period of time, the target startup configuration information does not include a target priority sequence with a valid state;
[0052] Step S204, when it is determined that the target startup configuration information includes a target priority sequence in a valid state, the startup items are started according to the target priority sequence;
[0053] Step S206: When it is determined that the target startup configuration information does not include a target priority sequence in a valid state, the startup items are started according to a default priority sequence.
[0054] Optionally, the executor of the above steps may be a background processor, or other devices with similar processing capabilities, or a machine that integrates at least an image acquisition device and a data processing device, wherein the image acquisition device may include a graphics acquisition module such as a camera, and the data processing device may include a computer, a mobile phone or other terminal, but is not limited thereto.
[0055] The execution order of step S204 and step S206 is interchangeable, that is, step S206 may be executed first, and then step S204.
[0056] Through the above steps, when the server is started, if it is determined that the baseboard management controller stores the target startup configuration information of the startup item, the target startup configuration information is obtained from the basic management controller, and it is judged whether the target startup configuration information includes the target priority sequence with a status of validity. Then, if the target startup configuration information includes the target priority sequence with a status of validity, the startup item is started according to the target priority sequence. If the target startup configuration information does not include the target priority sequence with a status of validity, the startup item is started according to the default priority sequence. Since the baseboard management controller manages the stored target startup configuration information based on the preset time, when the preset time is exceeded, the target priority sequence included in the target startup configuration information becomes invalid, and the startup item is automatically restored to the default setting, thereby ensuring that the temporary dynamic adjustment of the startup item will not permanently affect the startup configuration of the server. At the same time, it also ensures the stability and predictability of the server in daily operation, improves the management efficiency and stability of the server, improves the operation and maintenance efficiency, reduces the operation and maintenance cost, solves the technical problem in the related art that the temporary adjustment of the startup item sequence requires manual adjustment of the sequence and then manual restoration of the default setting, resulting in low efficiency of temporarily adjusting the startup item sequence, and improves the efficiency of temporarily adjusting the startup item sequence.
[0057] In step S202, the startup item may be an option for the computer system to load the operating system from a storage device or network resource when it is started; the target startup configuration information may be a set of startup rules for a specific startup device (i.e., startup item) that an administrator or user expects the system to follow when it is started in a server or computer system; the target priority order may be the order in which the startup items are expected by the administrator or user when they are started. The priority of the startup item determines which startup device the system attempts to load the boot loader from first, and then run the operating system. For example, if the hard disk is the device with the highest priority, the system first attempts to boot from the hard disk; if no valid boot information is found in the hard disk, the system will continue to check the next device according to the startup sequence list.
[0058] Optionally, in the implementation example of the present application, the startup items include but are not limited to the peripheral devices available in the system, such as PCI network card with PCI interface, PCI RAID card, PCI OCP network card, PCI NVME hard disk, CD / DVD-ROM, USB network card, USB hard disk, etc. By adjusting the startup items (i.e. the priority order of the startup items), the user can control the startup process of the computer or server, for example, perform system recovery, install a new operating system, run diagnostic tools, or update firmware, etc., without changing the hardware connection or physical media. This flexibility makes the startup item configuration a common tool for system administrators and users to manage and troubleshoot systems.
[0059] Optionally, in the implementation example of the present application, the target startup configuration information may be startup configuration information for PXE startup, SCSI startup, etc., and the startup configuration information includes but is not limited to a startup device list, a priority order, a startup mode, and a one-time startup setting, wherein the startup device list lists all possible startup devices in the system, such as hard disk drives (including traditional HDDs and solid-state SSDs), USB devices, network interface cards (for PXE network startup), optical drives, etc.; the priority order specifies a priority order for each startup device, which determines the specific order in which the system attempts to load the operating system at startup, for example, the hard disk may be set to the first priority, the network interface card to the second priority, the USB device to the third priority, etc.; the startup mode indicates which startup mode the system should use, and common ones include Legacy BIOS startup mode, UEFI startup mode, etc. Different startup modes may affect how the system identifies and processes the startup device; the one-time startup setting allows the system to temporarily change the startup order at the next startup instead of permanently changing the BIOS setting. For example, the user may want the system to boot from the network once (such as a PXE startup, etc.) to install the operating system or troubleshoot, but does not want to follow this setting for every subsequent startup.
[0060] In step S202, the basic management controller may be a unit module for storing target startup configuration information. Through the baseboard management controller, an administrator or user may set the startup items of the server, thereby modifying and adjusting the startup order of the startup items; the preset duration may be a duration threshold for the baseboard management controller to store the target startup configuration information.
[0061] Optionally, in an embodiment of the present application, the preset can be set according to actual conditions, such as 3 minutes, 5 minutes, 10 minutes, etc. By setting the preset duration, the target startup configuration information stored in the basic management controller can be effectively managed, so that by setting a preset duration, the startup item can be automatically restored to the default setting after the preset time, ensuring that the temporary dynamic adjustment of the startup item will not permanently affect the startup configuration of the server, and can provide an effective solution for situations such as updating the operating system or troubleshooting that require temporary startup from a specific device or network. At the same time, it also ensures the stability and predictability of the server in daily operations.
[0062] In step S206, the target startup configuration information does not include a target priority sequence with a valid status. It may be that the target startup configuration information exists, but the target priority sequence included in the target startup configuration information is in an invalid state. For example, the preset duration is set to 3 minutes. When it exceeds 3 minutes, the baseboard management controller first sets the target priority sequence to an invalid state and then clears the target startup configuration information. In this case, before it exceeds 3 minutes, the basic input and output system determines that the baseboard management controller stores the target startup configuration information of the server's startup items and obtains the target startup configuration information. However, when judging whether the target startup configuration information includes a target priority sequence with a valid status, the baseboard management controller stores the target startup configuration information for more than 3 minutes. At this time, the target priority sequence becomes invalid, that is, The baseboard management controller stores the target startup configuration information, but the target priority order included in the target startup configuration information is in an invalid state; or the target startup configuration information does not exist, for example, the preset duration is set to 3 minutes, and when it exceeds 3 minutes, the baseboard management controller directly clears the target startup configuration information. In this case, before it exceeds 3 minutes, the basic input and output system determines that the baseboard management controller stores the target startup configuration information of the server startup item, but when obtaining the target startup configuration information, the baseboard management controller stores the target startup configuration information for more than 3 minutes. At this time, the baseboard management controller clears the target startup configuration information, and the basic input and output system does not obtain the target startup configuration information, that is, the baseboard management controller does not store the target startup configuration information (or the baseboard management controller does not store the target priority order). By setting the preset duration to dynamically manage the state of the configuration information, the system can flexibly adjust the startup strategy under different circumstances to ensure the reliability and flexibility of the startup process.
[0063] As an optional implementation, when determining that the target startup configuration information includes a target priority order with a valid status, the above method also includes: determining the target configuration number of the target startup configuration information; and processing the target startup configuration information stored in the baseboard management controller according to the target processing method corresponding to the target configuration number.
[0064] Optionally, in an embodiment of the present application, the target configuration times may be once, or may be twice, three times, permanently, or multiple times; based on the target configuration times, the startup priority order of the startup items may be adjusted more effectively according to the startup settings.
[0065] Optionally, in an embodiment of the present application, the target processing method may be a processing method for target startup configuration information, such as clearing target startup configuration information, transferring target startup configuration information, etc. These target processing methods can help to achieve a one-time, temporary startup item priority adjustment while ensuring that the basic startup configuration of the server is not affected, thereby improving the flexibility and management efficiency of the server, reducing operation and maintenance costs, and enhancing the manageability and maintainability of data center servers.
[0066] Through the above content, when the system sets the target startup configuration information through the IPMI command, the command will carry a target configuration number of information, which is usually used to determine whether the current setting is "one-time startup" or "permanent startup". For example, if the target configuration number is 1, then this means it is a one-time startup configuration, which will only take effect the next time the server starts; if the target configuration number is greater than 1 (for example, it is set to a specific value or infinite), then this means it is a permanent startup configuration, and the server will follow this configuration every time it starts. Based on the different target configuration times, the target startup configuration information stored in the BMC will be processed differently. By determining the number of target startup configuration information, the system startup configuration can be flexibly adjusted according to actual needs, thereby meeting the needs of different application scenarios. At the same time, system resources are effectively utilized to avoid unnecessary resource waste.
[0067] As an optional implementation, the target startup configuration information stored in the baseboard management controller is processed according to the target processing method corresponding to the target configuration number, including: when the target configuration number is single, deleting the target startup configuration information stored in the baseboard management controller; when the target configuration number is multiple, transferring the target startup configuration information stored in the baseboard management controller to the target storage area for storage, so as to update the default priority order to the target priority order.
[0068] Optionally, in an embodiment of the present application, the target storage area may be a storage area such as an NVRAM area, an EEPROM area, etc. inside the BIOS. In the BIOS of the server, a target storage area (such as an NVRAM area) is set to store the default startup item priority order, so that even after the server is restarted, the BIOS can read and restore the original default priority order from the target storage area, thereby ensuring that the server can be started according to the factory settings or the permanent priority order set by the administrator.
[0069] Optionally, in an embodiment of the present application, the target configuration number can be set only temporarily. In this case, after the BIOS sends an instruction to obtain the target startup configuration information stored in the BMC, the BMC responds to the instruction to send the target startup configuration information to the BIOS, and then deletes the target startup configuration information stored in the BMC. At this time, the BIOS will prevent old or erroneous configuration information from being reused inadvertently or without authorization by deleting the configuration information, thereby reducing the risk of configuration errors and improving the security of the system. At the same time, deleting information that is no longer needed can release resources and improve the storage space and processing power of the BMC.
[0070] Optionally, in an embodiment of the present application, the target configuration times can be a limited number of times such as 2 times, 3 times, or 4 times. In this case, after the BIOS sends an instruction to obtain the target startup configuration information stored in the BMC for the first time, the BMC responds to the instruction to obtain the target startup configuration information and sends the target startup configuration information to the BIOS. After the target configuration times are reduced by one, the target startup configuration information continues to be stored and the duration of the BMC storing the target startup configuration information is set to zero, and the timing operation is restarted. At the same time, the BIOS stores the default priority order in the target storage area. If the BIOS sends an instruction to obtain the target startup configuration information stored in the BMC again within the preset duration, the above operation is repeated until the target configuration times is 1. When the BIOS sends an instruction to obtain the BMC After receiving the instruction of the target startup configuration information stored in the BMC, the BMC responds to the instruction to obtain the target startup configuration information and sends the target startup configuration information to the BIOS, and then deletes the target startup configuration information stored in the BMC; if the BIOS does not send the instruction to obtain the target startup configuration information stored in the BMC again within the preset time, the BMC directly clears the stored target startup configuration information. By resetting the timing and updating the priority order after each configuration information is obtained, the reliability and consistency of the system in the key configuration stage are ensured, and the risk of startup failure or configuration error caused by outdated or lost information is reduced. At the same time, the BMC automatically manages and clears configuration information, reduces the need for manual intervention, improves the degree of automation of system management, and effectively improves the efficiency and reliability of system startup configuration management.
[0071] Optionally, in an embodiment of the present application, the target configuration times can be a permanent setting. In this case, after the BIOS sends an instruction to obtain the target startup configuration information stored in the BMC for the first time, after the BMC responds to the acquisition instruction and sends the target startup configuration information to the BIOS, the BIOS receives the target startup configuration information and transfers the target priority order in the target startup configuration information to the target storage area to update the default priority order to the target priority order. By obtaining the target startup configuration information directly from the BMC and permanently storing it in the target storage area, the BIOS can reduce its reliance on external settings at startup, thereby speeding up the startup process. In addition, the administrator only needs to perform one configuration in the BMC to ensure that subsequent startups use the same configuration, thereby simplifying the complexity of multiple configurations.
[0072] Through the above content, the startup configuration information in the baseboard management controller is managed accordingly according to different target configuration times. When the target configuration time is single, the configuration information that is no longer needed is deleted to release the storage space in the baseboard management controller and improve the resource utilization efficiency. When the target configuration time is multiple times, the configuration information is transferred to the target storage area, and the default priority order is updated to the target priority order, so that the system can adjust the configuration order according to actual needs, improve the flexibility and adaptability of the system, and reduce the complexity and potential errors of manual management by automatically processing and adjusting the startup configuration information, simplify the management process of the baseboard management controller, so that the system can start and configure more quickly and efficiently, thereby improving the overall performance and response speed. In addition, it ensures that only necessary configuration information is stored and used, reduces potential problems caused by redundant or outdated information, and improves the reliability and stability of system operation.
[0073] As an optional implementation, the method further includes: determining whether the target startup configuration information is stored in the baseboard management controller by: receiving response data returned by the baseboard management controller, wherein the response data is used to indicate whether the target startup configuration information is stored in the baseboard management controller; and determining that the target startup configuration information is stored in the baseboard management controller when the value of the target bit included in the response data is determined to be the target value.
[0074] Optionally, in an embodiment of the present application, the above-mentioned response data may be a data packet or information block returned by the baseboard management controller (BMC) after receiving the query command. The data packet generally includes several fields, including bits for indicating the status of the BMC or storage information, so that it is possible to determine whether the target startup configuration information is stored in the BMC based on the value of a specific bit or field (i.e., the target bit) in the response data.
[0075] Optionally, in an embodiment of the present application, the target value may be a predefined binary value, such as 0, 1, etc., or a specific sign, such as 0b01, 0xFF, etc.
[0076] Optionally, in an embodiment of the present application, when it is determined that the value of a target bit included in the response data is a target value, determining that the target startup configuration information is stored in the baseboard management controller includes: when the values of each bit of the response data are all first values, or the value of the least significant bit of the response data is a second value, determining that the target startup configuration information is stored in the baseboard management controller.
[0077] Optionally, in the embodiment of the present application, it is also possible to determine that the target startup configuration information is stored in the baseboard management controller when the values of specific bits of the response data are all first values, such as 101010101.
[0078] Optionally, in an embodiment of the present application, when the value of a certain bit of the response data is a third value, it can be determined that the target startup configuration information is stored in the baseboard management controller. For example, when the value of the most significant bit is 0XFF, it can be determined that the target startup configuration information is stored in the baseboard management controller.
[0079] Through the above content, by receiving the response data returned by the baseboard management controller, it is possible to accurately determine whether the target startup configuration information is stored therein, so that the status information of the baseboard management controller can be obtained in real time, and then the target startup configuration information is stored in the baseboard management controller to perform subsequent operations, thereby avoiding invalid operations caused by directly obtaining the target startup configuration information from the baseboard management controller, reducing the occupation of system resources, and improving operating efficiency.
[0080] As an optional implementation, before determining that the baseboard management controller stores target startup configuration information of the server's startup items, the method further includes: obtaining and installing a target network protocol for communicating with the baseboard management controller; determining that the target startup configuration information is stored in the baseboard management controller includes: when determining that the target network protocol is successfully installed, determining that the target startup configuration information is stored in the baseboard management controller.
[0081] Optionally, in an embodiment of the present application, the target network protocol includes but is not limited to the IPMI protocol, the SSH protocol, etc. By installing the target network protocol, communication between various unit modules inside the server can be achieved, such as communication between BIOS and BMC.
[0082] Optionally, in an embodiment of the present application, when it is determined that the target network protocol is successfully installed, it means that the BIOS can communicate with the BMC through the target network protocol, thereby determining whether the target startup configuration information is stored in the baseboard management controller.
[0083] Optionally, in the embodiment of the present application, after acquiring and installing the target network protocol for communicating with the baseboard management controller, the method further includes: in the case of determining that the installation of the target network protocol fails, starting the startup items in a default priority order.
[0084] Through the above content, a specific network protocol is obtained and installed to communicate with the BMC to ensure that the system can communicate effectively with the BMC. If the network protocol is installed successfully and the target startup configuration information is indeed stored in the BMC, the system can be started according to the configuration information to ensure that the system is started according to the expected configuration and improve the accuracy and efficiency of the startup. If the network protocol installation fails, the system will not be able to obtain specific startup configuration information from the BMC. In this case, the system will start in the default priority order to ensure that even if the protocol installation fails, the system can still start normally, ensuring the availability of the system. By automating and standardizing the startup process, manual intervention can be reduced and system management efficiency can be improved.
[0085] As an optional implementation, after acquiring and installing the target network protocol and before determining that the target startup configuration information is stored in the baseboard management controller, the method further includes: when it is determined that the target network protocol is installed successfully, traversing the network protocols supported by the server to obtain a traversal result; when the traversal result indicates that there is a first network protocol with a higher priority than the target network protocol, and there is first startup configuration information set by the first network protocol, starting the startup items according to the first priority order included in the first startup configuration information.
[0086] Optionally, in an embodiment of the present application, the first network protocol can be any protocol supported by the server and has a higher priority than the target network protocol, such as the Redfish protocol, SMASH, etc. Through the first network protocol, the server hardware can be managed and monitored.
[0087] Optionally, in an embodiment of the present application, the first startup configuration information may be related startup parameters and settings of the startup item configuration set through the first network protocol, including startup item priority order, startup parameters, configuration times, etc.
[0088] Optionally, in the embodiment of the present application, the first priority order may be a startup item priority order included in the first startup configuration information.
[0089] Through the above content, by traversing all network protocols supported by the server after installing the target network protocol, it is possible to ensure that the network protocol with the highest priority is selected for startup configuration, and then by identifying and giving priority to the network protocol with higher priority, it is possible to ensure that critical tasks or important startup configurations are executed first, thereby optimizing the allocation and use of resources. At the same time, it allows the server to dynamically adjust the startup process according to the actual network environment and configuration requirements, rather than always following a fixed startup process, which helps to maintain efficient operation in a changing network environment, increases the compatibility of the system, and can adapt to different network configurations and protocol standards.
[0090] As an optional implementation, after traversing the network protocols supported by the server and obtaining the traversal results, the method further includes at least one of the following: when the traversal result indicates that there is a second network protocol with a higher priority than the target network protocol, and there is no second startup configuration information set by the second network protocol, determining whether the target startup configuration information is stored in the baseboard management controller; when the traversal result indicates that there is no network protocol with a higher priority than the target network protocol, determining whether the target startup configuration information is stored in the baseboard management controller.
[0091] Optionally, in an embodiment of the present application, the second network protocol can be any protocol supported by the server and has a higher priority than the target network protocol, such as the Redfish protocol, SMASH, etc. Through the first network protocol, the server hardware can be managed and monitored.
[0092] Optionally, in an embodiment of the present application, the second startup configuration information may be related startup parameters and settings of the startup item configuration set through the second network protocol, including startup item priority order, startup parameters, configuration times, etc.
[0093] Through the above content, by intelligently switching between different protocols, the system's ability to cope with changes in the network environment is improved, the impact that may be caused by the failure of a single protocol is reduced, and when a high-priority protocol lacks startup configuration information, the system can automatically check whether there is a backup target startup configuration information to ensure that the system can continue to start and run normally, avoid startup failures due to lack of configuration information, and improve the system's startup success rate and operating stability.
[0094] As an optional implementation, before the server is started, the method also includes at least one of the following: when the server is shut down, the remote control end sends target startup configuration information to the baseboard management controller; when the server is already started, the target startup configuration information is sent to the baseboard management controller and the server restart is triggered.
[0095] Optionally, in the embodiment of the present application, when the server is powered off, the remote control terminal can set a PXE one-time boot (ie, set the target boot configuration information) through the ipmitool.exe chassis bootdev PXE command.
[0096] Optionally, in an embodiment of the present application, when the server is in the default system state, PXE one-time boot can be set in the operating system environment through the ipmitool.exe –I lanplus -H XX.XX.XX.XX(bmc ip address) –U BMC username –P BMC password chassis bootdev PXE command.
[0097] Through the above content, by sending the startup configuration information through the remote control terminal, the administrator can configure and manage the server from anywhere without physical contact with the server, which improves management efficiency, especially in servers in data centers or remote locations; when the server is started, the configuration is quickly updated by sending configuration information and triggering a restart, which reduces server downtime. In addition, the administrator can pre-set the startup configuration and automatically send these configurations at the appropriate time through scripts or management software, which greatly reduces the need for manual intervention, reduces the risk of human configuration errors, ensures that the server starts with the correct configuration, and helps to ensure that the security configuration is in place before the server starts, thereby improving the security of the overall system.
[0098] As an optional implementation, after starting the startup item, the method further includes: obtaining an actual startup order of the startup items; and determining that the startup items are successfully started if the actual startup order of the startup items is consistent with the startup item priority order used when starting the startup items.
[0099] Optionally, in the embodiment of the present application, the actual startup order of the startup items can be obtained by using tools (such as SCE, etc.) in the current operating environment to read the order of the startup item device groups of the server after the server is started. Specifically, these tools can scan and identify the various services and devices being started in the current system, and record them in the order in which they are started.
[0100] Through the above content, you can obtain an accurate list of startup items in order and ensure that key services are started in the expected order to maintain system stability and efficiency, which is of great significance for system optimization, troubleshooting, and improving overall performance.
[0101] As an optional implementation, when it is determined that the target startup configuration information of the startup item of the server is stored in the baseboard management controller, the above method also includes: when the baseboard management controller determines that the target startup configuration information is stored in the baseboard management controller is less than or equal to a preset time length, the baseboard management controller continues to store the target startup configuration information; when the baseboard management controller determines that the target startup configuration information is stored in the baseboard management controller for a time length greater than the preset time length, the baseboard management controller clears the target startup configuration information.
[0102] As an optional implementation, Figure 3 is a schematic diagram of system interaction according to an embodiment of the present application, such as Figure 3 As shown, it mainly includes:
[0103] Server: This is the entire hardware platform, including hardware components such as the central processing unit (CPU), memory, storage devices, network interfaces, and firmware systems (such as BIOS and BMC) used to manage and start these hardware. The server's startup process is mainly controlled by BIOS, while its management functions are mainly implemented through BMC.
[0104] BIOS: BIOS is the server hardware initialization and self-test program, and also the bridge between the operating system and the hardware. When the server starts, BIOS is responsible for hardware initialization, setting the boot sequence, and executing Pre-boot Execution Environment (PXE) and other operations. BIOS can also communicate with BMC through the IPMI protocol to dynamically adjust the boot sequence.
[0105] BMC: BMC is an independent management controller on the server, used for remote monitoring and management of the server. It receives commands from the remote control end through the IPMI protocol, such as setting a PXE boot. BMC can store these commands and pass the adjustment information of the boot item order to BIOS through the IPMI protocol when the server starts. Another important function of BMC is timing. After receiving the command, if the BIOS does not obtain the adjustment information of the boot item order within 3 minutes, the BMC will automatically clear this information.
[0106] As an optional implementation, Figure 4 Flow chart of PXE startup setting according to an embodiment of the present application, as shown in FIG. Figure 4 As shown, the specific process is as follows:
[0107] Step S401, when the server is powered off, the remote control terminal sets a PXE one-time boot through an IPMI command, the IPMI command format is such as: ipmitool.exe chassis bootdev PXE; or when the server is started through the system disk and enters the system state, the PXE one-time boot is set through an IPMI command in the system, the IPMI command format is such as: ipmitool.exe –I lanplus -H XX.XX.XX.XX(bmc ip address) –U BMC user name –P BMC password chassis bootdev PXE, and the current default boot order (i.e., default priority order) of the setting group is storage device group, network card device group, CD / DVD-ROM device group, and other device group;
[0108] Step S402, when the system or the remote control end sets an IPMI command PXE boot, the BMC end stores a PXE boot command (i.e., target boot configuration information) in the NVRAM or EEPROM of the BMC for recording after receiving the command. At the same time, the BMC end automatically counts. When the BMC end counts the time for more than 3 minutes (i.e., the preset time), the target boot configuration information will be erased regardless of whether the BIOS has been started. If the BIOS obtains the target boot configuration information through the IPMI protocol between the BIOS and the BMC within 3 minutes, the BMC will automatically clear the boot setting information record when the BMC receives a response signal and the time does not exceed 3 minutes. At this time, the BIOS can query whether the parameters of a PXE boot (i.e., target configuration information) are set effectively through the IPMI command. The IPMI command format is as follows:
[0109] Remote control command: ipmitool.exe chassis bootparam get 5;
[0110] System command: ipmitool.exe –I lanplus -H XX.XX.XX.XX (bmc ip address) –U BMC username –P BMC password chassis bootparam get 5;
[0111] Step S403, after the setting in step S401 is completed, the server is restarted through the BMC web or IPMI command, the command format is such as: ipmitool.exe–I lanplus -H XX.XX.XX.XX (bmc ip address)–U BMC username–P BMC password power cycle, or the server is restarted by the server physical power button;
[0112] Step S404, when the server is started, the IPMI command protocol (i.e., the target network protocol) is installed in the DXE stage of the BIOS and it is determined whether the protocol is installed successfully. If it fails, the startup items are started according to the default priority order. If it succeeds, it is checked whether the Redfish protocol is supported (i.e., traversing the network protocols supported by the server). If the Redfish protocol is not supported (i.e., the third network protocol), step S405 is continued to be executed. If the Redfish protocol is supported (i.e., the first network protocol or the second network protocol), it is determined whether the startup item sequence setting is modified by the Redfish protocol. If the startup item sequence setting is not modified by the Redfish protocol (i.e., the second priority order), step S405 is continued to be executed. If the startup item sequence setting is modified by the Redfish protocol (i.e., the first priority order), the startup is started according to the startup item priority order set by the Redfish protocol (i.e., the first priority order).
[0113] Step S405, BIOS reads the response data of the IPMI boot item setting returned by the BMC through the IPMI protocol, and judges the response data to determine whether the data in the response data is 0 or whether Bit0 in the response data is set to 1 (i.e., whether the values of each bit of the response data are all the first value, or whether the value of the least significant bit of the response data is the second value). If the data is 0 or Bit0 of the response data is set to 1 (i.e., the values of each bit of the response data are all the first value, or the value of the least significant bit of the response data is the second value), it is confirmed that the BMC has set the IPMI boot item sequence (i.e., the target priority sequence), and continues to execute step S406, wherein Bit0 represents the setting of BIOS startup or Post startup; if the data is not 0 and Bit0 of the response data is set to 0, it is considered that the BMC has no IPMI command to set the boot item sequence (i.e., the target priority sequence), and the boot item is started according to the default priority sequence;
[0114] Step S406, after confirming that the BMC end stores the IPMI startup settings (i.e., the target startup configuration information), the BIOS obtains the startup settings and startup mode parameters (i.e., the target startup configuration information) set in step S401 through the IPMI protocol command, and determines whether the startup flag is valid. If it is invalid (i.e., the target startup configuration information does not include a target priority sequence with a valid state, for example, the storage waiting time exceeds the preset time), the startup items are started according to the default priority order. If it is valid (i.e., the target startup configuration information includes a target priority sequence with a valid state), it is determined whether the setting number of startup items (i.e., the target configuration number) is a single startup. If it is not a single startup (i.e., the target configuration number is multiple times), the current startup item order (i.e., the target priority order) is permanently stored in the NVRAM area (i.e., the target storage area) of the BIOS. If it is a single startup (i.e., the target configuration number is single), the BIOS The BIOS startup item order (i.e., the default priority order) before the Setup interface is updated is obtained and backed up in the NVRAM area (i.e., the target storage area) before the BIOS IPMI command is adjusted for storage and backup; at the same time, the startup variables of the BIOS Setup interface are obtained and set, that is, the current startup item order (i.e., the target priority order) is updated to the BIOS Setup interface, and the startup items are started according to the target priority order;
[0115] Step S407, after the boot order group is adjusted, the current boot item order is set according to the IPMI command (i.e., target boot configuration information) obtained in the BIOS Setup interface, and the network card is started as the first boot item. At this time, the PXE operating system is entered; after entering the operating system, the SCE tool is used to read the boot item device group order of the current server (i.e., obtain the actual boot item order). The current boot item device group is the network card device group, the storage device group, the CD / DVD-ROM device group, and the other device group (i.e., the actual boot item order is consistent with the boot item priority order used when starting the boot item), which is in line with expectations;
[0116] Step S408, when step S407 is executed and no task command is input, when the restart command or the shutdown and restart command is set, the server starts normally. In the DXE stage of BIOS, BIOS obtains the startup item sequence stored and backed up in the NVRAM area of BIOS through the protocol, restores, and updates to the startup item sequence group of the Setup interface of BIOS, that is, adjusts to set the startup setting before PXE startup of IPMI command once (that is, the default priority order), that is, storage device group, network card device group, CD / DVD-ROM device group, other groups, etc., and continues to boot into the operating system after the recovery is completed; after entering the operating system, use the SCE tool to read the startup item device group sequence of the current server. The current startup item device group is the storage device group, the network card device group, the CD / DVD-ROM device group, and the other device group, which meets the expectation of restoring the original settings.
[0117] The specific interactive swimlane diagram is as follows Figure 5 As shown in the figure, compared with the traditional manual entry into the BIOS Setup interface to adjust the boot order, the interaction between BIOS and BMC does not require direct physical contact with the server, which reduces manual errors and provides more efficient and flexible management methods. It not only improves the management level of the server, but also brings higher operational efficiency and lower cost to the data center. In addition, by automatically restoring the permanent default settings, it ensures that the server can automatically return to its normal boot process after completing a specific operation without additional intervention, which not only improves the management level of the server, but also brings higher operational efficiency and lower cost to the data center.
[0118] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method.
[0119] In the present embodiment, a startup device for a server startup item is also provided, and the device is used to implement the above-mentioned embodiment and preferred implementation mode, and the descriptions have been made no further. As used below, the term "module" can implement a combination of software and / or hardware of a predetermined function. Although the device described in the following embodiments is preferably implemented in software, the implementation of hardware, or a combination of software and hardware is also possible and conceivable.
[0120] Figure 6 is a structural block diagram of a startup device for a server startup item according to an embodiment of the present application, such as Figure 6As shown, the device includes: an acquisition module 602, which is used to acquire target startup configuration information from the baseboard management controller when the server is started and when it is determined that the baseboard management controller stores the target startup configuration information of the server's startup item, wherein when the target startup configuration information is stored in the baseboard management controller for a period of time less than or equal to a preset period of time, the target startup configuration information includes a target priority sequence with a valid state, and when the target startup configuration information is stored in the baseboard management controller for a period of time greater than the preset period of time, the target startup configuration information does not include a target priority sequence with a valid state; a first startup module 604, which is used to start the startup item in accordance with the target priority sequence when it is determined that the target startup configuration information includes a target priority sequence with a valid state; and a second startup module 606, which is used to start the startup item in accordance with the default priority sequence when it is determined that the target startup configuration information does not include a target priority sequence with a valid state.
[0121] As an optional implementation, the startup device of the server startup item also includes: a first determination module, used to determine the target configuration number of the target startup configuration information; a processing module, used to process the target startup configuration information stored in the baseboard management controller according to the target processing method corresponding to the target configuration number.
[0122] As an optional implementation, the processing module includes: a deletion unit, used to delete the target startup configuration information stored in the baseboard management controller when the target configuration number is single; a storage unit, used to transfer the target startup configuration information stored in the baseboard management controller to the target storage area for storage when the target configuration number is multiple times, so as to update the default priority order to the target priority order.
[0123] As an optional implementation, the startup device of the server startup item also includes: a receiving module, used to receive response data returned by the baseboard management controller, wherein the response data is used to indicate whether the target startup configuration information is stored in the baseboard management controller; a second determination module, used to determine whether the target startup configuration information is stored in the baseboard management controller when the value of the target bit included in the response data is determined to be a target value.
[0124] As an optional implementation, the second determination module includes: a first determination unit, used to determine whether the target startup configuration information is stored in the baseboard management controller when the value of each bit of the response data is the first value, or the value of the least significant bit of the response data is the second value.
[0125] As an optional implementation, the startup device of the server startup item also includes: an installation module for acquiring and installing a target network protocol for communicating with the baseboard management controller; a third determination module for determining that the target startup configuration information is stored in the baseboard management controller when it is determined that the target network protocol is installed successfully.
[0126] As an optional implementation, the third determination module further includes: a startup unit, configured to start the startup items according to a default priority order when it is determined that the installation of the target network protocol fails.
[0127] As an optional implementation, the startup device of the server startup item also includes: a traversal module, which is used to traverse the network protocols supported by the server to obtain a traversal result when it is determined that the target network protocol has been successfully installed; a third startup module, which is used to start the startup item according to the first priority order in the first startup configuration information when the traversal result indicates that there is a first network protocol with a higher priority than the target network protocol, and there is first startup configuration information set by the first network protocol.
[0128] As an optional implementation, the traversal module also includes: a second determination unit, used to determine whether the target startup configuration information is stored in the baseboard management controller when the traversal result indicates that there is a second network protocol with a higher priority than the target network protocol and there is no second startup configuration information set by the second network protocol; a third determination unit, used to determine whether the target startup configuration information is stored in the baseboard management controller when the traversal result indicates that there is no network protocol with a higher priority than the target network protocol.
[0129] As an optional implementation, the remote control end includes: a first sending module: used to send target startup configuration information to the baseboard management controller when the server is shut down; the startup device of the server startup item also includes: a second sending module: used to send the target startup configuration information to the baseboard management controller when the server is already started, and trigger the server to restart.
[0130] As an optional implementation, the startup device of the server startup item also includes: a second acquisition module, used to obtain the actual startup order of the startup item; and a fourth determination module, used to determine that the startup item is successfully started when the actual startup order of the startup item is consistent with the startup item priority order adopted when starting the startup item.
[0131] As an optional implementation, the baseboard management controller includes: a storage module, used to continue storing the target startup configuration information when it is determined that the target startup configuration information is stored in the baseboard management controller for a period of time less than or equal to a preset period of time; and a clearing module, used to clear the target startup configuration information when it is determined that the target startup configuration information is stored in the baseboard management controller for a period of time greater than a preset period of time.
[0132] For the description of the features in the embodiment corresponding to the starting device of the server startup item, please refer to the relevant description of the embodiment corresponding to the starting method of the server startup item, which will not be repeated here.
[0133] An embodiment of the present application further provides an electronic device, including a memory and a processor, wherein a computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any of the above-mentioned server startup item startup method embodiments.
[0134] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above-mentioned server startup item startup method embodiments when running.
[0135] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
[0136] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps in any of the above-mentioned server startup item startup method embodiments are implemented.
[0137] An embodiment of the present application also provides another computer program product, including a non-volatile computer-readable storage medium, the non-volatile computer-readable storage medium storing a computer program, and when the computer program is executed by a processor, the steps in any of the above-mentioned server startup item startup method embodiments are implemented.
[0138] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0139] The above describes in detail a method and device for starting a server startup item provided by the present application. Specific examples are used herein to illustrate the principles and implementation methods of the present application, and the description of the above embodiments is only used to help understand the method and core idea of the present application. It should be pointed out that for ordinary technicians in this technical field, without departing from the principles of the present application, several improvements and modifications can be made to the present application, and these improvements and modifications also fall within the scope of protection of the claims of the present application.
Claims
1. A method for starting a server startup item, characterized in that: include: When the server is started, and in the case that the baseboard management controller stores the target startup configuration information of the startup item of the server, the target startup configuration information is obtained from the baseboard management controller, wherein, in the case that the time length for which the target startup configuration information is stored in the baseboard management controller is less than or equal to the preset time length, the target startup configuration information includes the target priority sequence with a valid state, and in the case that the time length for which the target startup configuration information is stored in the baseboard management controller is greater than the preset time length, the target startup configuration information does not include the target priority sequence with a valid state; In a case where it is determined that the target startup configuration information includes the target priority sequence in a valid state, starting the startup items according to the target priority sequence; When it is determined that the target startup configuration information does not include the target priority order in a valid state, the startup items are started according to a default priority order.
2. The method for starting a server startup item according to claim 1, characterized in that: In the case where it is determined that the target startup configuration information includes the target priority sequence in a valid state, the method further includes: Determine a target configuration number of the target startup configuration information; The target startup configuration information stored in the baseboard management controller is processed according to a target processing method corresponding to the target configuration number.
3. The method for starting a server startup item according to claim 2, characterized in that: Processing the target startup configuration information stored in the baseboard management controller according to the target processing mode corresponding to the target configuration number includes: In the case where the target configuration number is single, deleting the target startup configuration information stored in the baseboard management controller; In a case where the target configuration times are multiple times, the target startup configuration information stored in the baseboard management controller is transferred to a target storage area for storage, so as to update the default priority order to the target priority order.
4. The method for starting a server startup item according to claim 1, characterized in that: The method further includes: determining that the target startup configuration information is stored in the baseboard management controller in the following manner: Receiving response data returned by the baseboard management controller, wherein the response data is used to indicate whether the target startup configuration information is stored in the baseboard management controller; When it is determined that the value of the target bit included in the response data is the target value, it is determined that the target startup configuration information is stored in the baseboard management controller.
5. The method for starting a server startup item according to claim 4, characterized in that: In the case where it is determined that the value of the target bit included in the response data is the target value, determining that the target startup configuration information is stored in the baseboard management controller includes: When the values of the respective bits of the response data are all the first values, or the value of the least significant bit of the response data is the second value, it is determined that the target startup configuration information is stored in the baseboard management controller.
6. The method for starting a server startup item according to claim 4, characterized in that: Before determining that the baseboard management controller stores the target startup configuration information of the startup item of the server, the method further includes: acquiring and installing a target network protocol for communicating with the baseboard management controller; Determining that the target startup configuration information is stored in the baseboard management controller includes: when it is determined that the target network protocol is successfully installed, determining that the target startup configuration information is stored in the baseboard management controller.
7. The method for starting a server startup item according to claim 6, characterized in that: After obtaining and installing the target network protocol for communicating with the baseboard management controller, further comprising: In the case where it is determined that the target network protocol fails to be installed, the startup items are started according to the default priority order.
8. The method for starting a server startup item according to claim 6, characterized in that: After acquiring and installing the target network protocol and before determining that the baseboard management controller stores the target startup configuration information, the method further includes: When it is determined that the target network protocol is successfully installed, traversing the network protocols supported by the server to obtain a traversal result; When the traversal result indicates that there is a first network protocol with a higher priority than the target network protocol, and there is first startup configuration information set by the first network protocol, the startup items are started according to the first priority order included in the first startup configuration information.
9. The method for starting a server startup item according to claim 8, characterized in that: After traversing the network protocols supported by the server and obtaining the traversal results, the method further includes at least one of the following: In a case where the traversal result indicates that there is a second network protocol with a higher priority than the target network protocol, and there is no second startup configuration information set by the second network protocol, determining whether the target startup configuration information is stored in the baseboard management controller; When the traversal result indicates that there is no network protocol with a higher priority than the target network protocol, it is determined whether the target startup configuration information is stored in the baseboard management controller.
10. The method for starting a server startup item according to claim 1, characterized in that: Before the server is started, the method further includes at least one of the following: When the server is shut down, the remote control terminal sends the target startup configuration information to the baseboard management controller; When the server is started, the target startup configuration information is sent to the baseboard management controller, and the server is triggered to restart.
11. The method for starting a server startup item according to claim 1, characterized in that: After starting the startup item, the method further includes: Obtaining the actual startup order of the startup items; When the actual startup order of the startup items is consistent with the startup item priority order adopted when starting the startup items, it is determined that the startup items are successfully started.
12. The method for starting a server startup item according to claim 1, characterized in that: In the case where it is determined that the baseboard management controller stores the target startup configuration information of the startup item of the server, the method further includes: When the baseboard management controller determines that the time length for which the target startup configuration information is stored in the baseboard management controller is less than or equal to the preset time length, the baseboard management controller continues to store the target startup configuration information; The baseboard management controller clears the target startup configuration information when it is determined that the storage time length of the target startup configuration information in the baseboard management controller is greater than the preset time length.
13. An electronic device, characterized in that: include: Memory for storing computer programs; A processor, configured to implement the steps of the method for starting a server startup item according to any one of claims 1 to 12 when executing the computer program.
14. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of the method for starting a server startup item according to any one of claims 1 to 12.
15. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method for starting a server startup item according to any one of claims 1 to 12 are implemented.
Citation Information
Patent Citations
Method, apparatus and device for adjusting startup sequence in UEFI mode
CN109117195A
Starting request processing method and device and electronic equipment
CN111488220A
Network protocol starting sequence control method and device, equipment and storage medium
CN114598755A
System starting method and device based on BMC and BIOS and medium
CN114924802A
Server starting method and device, server and storage medium
CN118672682A
Cited By
Server startup display method and device
CN120371447A
Service starting sequence optimization method and device, electronic equipment and storage medium
CN120371479A
Server starting method, computer equipment, readable storage medium and program product
CN120523760A
Server startup method, computer device, readable storage medium, and program product
CN120523760B
Server starting method and device, electronic equipment, medium and program product
CN120723341A