A method and system for analyzing the impact of a Linux system installation package update
By comparing the dynamic library status before and after the Linux system installation package update, the system automatically analyzes and generates a structured and visualized impact report, which solves the problem of unclear impact scope of the installation package update and improves troubleshooting efficiency and report readability.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- KYLIN CORP
- Filing Date
- 2026-01-14
- Publication Date
- 2026-06-30
AI Technical Summary
In Linux systems, when installing packages, the scope of impact is unclear, dependency analysis is inefficient, historical comparisons are lacking, and the output of existing tools is not intuitive, making troubleshooting difficult.
By generating a comparison of the dynamic library status before and after the installation package update, the system automatically locates the affected binary programs and generates structured, visual impact analysis reports, including reports in JSON, CSV, and HTML formats.
It accurately matches changes to dynamic libraries and binary programs caused by installation package updates, generates clear risk classification reports, and improves the efficiency and reliability of Linux system maintenance.
Abstract
Description
Technical Field
[0001] This invention relates to the field of software update technology, specifically to a method and system for analyzing the impact of Linux system installation package updates. Background Technology
[0002] In the daily maintenance of Linux systems, updating installation packages is a critical operation to ensure system security and functional integrity. However, software dependencies in Linux systems are complex. Updating an installation package often involves version changes, content modifications, or deletions of dynamic libraries, which may be depended upon by multiple binary programs. Traditional installation package update processes lack effective pre-assessment and post-analysis mechanisms, resulting in the following technical challenges:
[0003] 1. Unclear scope of impact: Before executing the installation package update, the administrator cannot accurately know which binary programs will be affected by the update. Therefore, core business programs may crash abnormally due to changes in dependent libraries.
[0004] 2. Inefficient dependency analysis: Existing technologies mostly rely on manual use of commands such as ldd to check program dependencies one by one. For large systems containing hundreds or thousands of installation packages, this is extremely inefficient and prone to errors.
[0005] 3. Lack of historical comparison data: After the update, it is impossible to quickly locate which dynamic libraries have changed, and the relationship between these changes and the affected programs, resulting in a long troubleshooting cycle.
[0006] 4. The report format is not intuitive: The output of existing analysis tools is mostly raw data, lacking structured and visualized reports, making it difficult for non-professionals to understand the analysis results.
[0007] Therefore, there is an urgent need for a technical solution that can automatically, accurately, and efficiently analyze the impact of installation package updates on binary executable programs in order to solve the practical problems mentioned above in Linux system maintenance. Summary of the Invention
[0008] To address the aforementioned issues, the present invention aims to provide a method and system for analyzing the impact of Linux system installation package updates. By comparing the dynamic library status before and after the update, the method automatically identifies the affected binary programs and generates a structured and visualized impact analysis report, thereby improving the efficiency and reliability of Linux system maintenance.
[0009] This invention discloses a method for analyzing the impact of Linux system installation package updates, comprising the following steps:
[0010] Step S1: Generate a system snapshot before the update for the installation packages already installed on the Linux system;
[0011] Step S2: Perform an update operation on the installation package to be updated in the Linux system to obtain the updated installation package;
[0012] Step S3: Generate an updated system snapshot for the updated installation package. Based on the system snapshot before and after the update, analyze the impact range of the installation package update and obtain the analysis results.
[0013] Step S4: Generate an impact analysis report based on the analysis results.
[0014] A further improvement of the present invention is that step S1 includes the following steps:
[0015] Step S11: Traverse all installed packages in the Linux system, extract the names, version information and file lists of the installed packages, and filter to obtain the binary programs and dynamic libraries of the installed packages.
[0016] Step S12: Obtain the paths of the dynamic libraries that the binary program of the installed package depends on, and use this to build a four-dimensional relation matrix before the update;
[0017] Step S13: Obtain the version information and file characteristic values of the dynamic libraries of the installed package, and use them to establish a dynamic library characteristic information mapping table before the update;
[0018] Step S14: Store the four-dimensional relationship matrix and the dynamic library feature information mapping table before the update into the snapshot directory to form a system snapshot before the update.
[0019] A further improvement of the present invention is that the binary program is an ELF format executable file; the dynamic library is an ELF format shared library file; in step S2, the Linux system updates the installation package to be updated through a package management tool.
[0020] A further improvement of the present invention is that step S3 includes the following steps:
[0021] Step S31: Filter the updated installation package to obtain the binary program of the updated installation package, and generate an updated system snapshot; the updated system snapshot includes an updated four-dimensional relation matrix and an updated dynamic library feature information mapping table;
[0022] Step S32: Compare the dynamic library feature information mapping table before the update with the dynamic library feature information mapping table after the update, filter out all dynamic libraries that meet the filtering conditions, and mark the dynamic libraries that meet the filtering conditions as changed dynamic libraries.
[0023] Step S33: Based on the four-dimensional relation matrix before the update, traverse all changed dynamic libraries and extract the binary programs of all installed packages that depend on the changed dynamic libraries;
[0024] Based on the updated four-dimensional relation matrix, traverse all the changed dynamic libraries and extract the binary programs of the updated installation packages that depend on the changed dynamic libraries.
[0025] All installed installer binaries that depend on the changed dynamic libraries, as well as all updated installer binaries that depend on the changed dynamic libraries, are marked as affected binaries.
[0026] Step S34: Based on the changes in the dynamic library, label the affected binary programs and obtain the analysis results.
[0027] A further improvement of the present invention is that step S31 includes the following steps:
[0028] Step S311: Traverse all updated installation packages in the Linux system, record the name, version information and file list of the updated installation packages, and filter to obtain the binary programs and dynamic libraries of the updated installation packages;
[0029] Step S312: Based on the updated installation package's binary program, obtain the paths of the dynamic libraries that the updated installation package depends on, and use this to establish the updated four-dimensional relation matrix;
[0030] Step S313: Obtain the version information and file characteristic values of the dynamic library of the updated installation package, and establish a mapping table of the updated dynamic library characteristic information.
[0031] Step S314: The updated four-dimensional relation matrix and the updated dynamic library feature information mapping table are stored in the snapshot directory to form an updated system snapshot.
[0032] A further improvement of this invention is that the impact analysis report includes JSON format reports, CSV format reports, and HTML visualization reports.
[0033] A further improvement of the present invention is that the screening conditions include a first screening condition, a second screening condition, a third screening condition, and a fourth screening condition; a dynamic library that satisfies any one of the screening conditions is a variable dynamic library.
[0034] First screening criterion: Dynamic libraries whose version information in the dynamic library feature information mapping table before the update is inconsistent with the version information in the dynamic library feature information mapping table after the update.
[0035] Second screening criterion: Dynamic libraries whose file feature values in the dynamic library feature information mapping table before the update are inconsistent with the file feature values in the dynamic library feature information mapping table after the update;
[0036] The third filtering criterion: Dynamic libraries that existed in the dynamic library feature information mapping table before the update but were deleted from the dynamic library feature information mapping table after the update;
[0037] Fourth filtering criterion: Dynamic libraries that were not present in the dynamic library feature information mapping table before the update but were added to the dynamic library feature information mapping table after the update.
[0038] A further improvement of the present invention is that, in step S12, the path of the dynamic library that the binary program of the installed installation package depends on is obtained by analyzing the binary program of the installed installation package using a dynamic link analysis tool.
[0039] A further improvement of the present invention is that, in step S13, the version information of the dynamic library of the installed installation package is obtained by parsing the file header or string of the dynamic library of the installed installation package.
[0040] This invention also provides an impact analysis system for Linux system installation package updates, including a snapshot generation module, an update execution module, an impact analysis module, and a report generation module;
[0041] The update execution module is connected to the snapshot generation module and is used to perform update operations on the installation package to be updated in the Linux system, obtain the updated installation package, and hand it over to the snapshot generation module to generate an updated system snapshot.
[0042] The snapshot generation module is connected to the impact analysis module to generate system snapshots before and after the update, and then pass them to the impact analysis module.
[0043] The impact analysis module is used to analyze the scope of the impact of the installation package update based on the system snapshot before and after the update, and to obtain the analysis results.
[0044] The report generation module is connected to the impact analysis module and is used to receive the analysis results from the impact analysis module and generate an impact analysis report based on the analysis results.
[0045] The beneficial effects of this invention are:
[0046] This invention accurately matches the dynamic libraries and binary programs changed due to installation package updates, and completes a risk classification report, clearly showing the impact of the binary programs.
[0047] This invention lists the scope of impact after the installation package is updated, and users can define the test scope based on the scope of impact to conduct tests and verifications. Detailed Implementation
[0048] The technical solutions of the present invention will be clearly and completely described below with reference to the embodiments of the present invention. Many specific details are set forth in the following description to provide a thorough understanding of the present invention; however, the present invention may also be implemented in other ways different from those described herein. Those skilled in the art can make similar extensions without departing from the spirit of the present invention. Therefore, the present invention is not limited to the specific embodiments disclosed below.
[0049] This invention provides a method and system for impact analysis of Linux system installation package updates. By comparing the dynamic library status before and after the update, the affected binary programs are automatically located, and a structured and visualized impact analysis report is generated, thereby improving the efficiency and reliability of Linux system maintenance.
[0050] Example 1:
[0051] This embodiment discloses a method for analyzing the impact of Linux system installation package updates, including the following steps:
[0052] Step S1: Generate a system snapshot before the update for the installation packages already installed on the Linux system.
[0053] Specifically, this step includes the following sub-steps:
[0054] Step S11: Extract installed package information: Traverse all installed packages in the Linux system, recording the name and version information of each installed package; simultaneously extract the file list contained in each installed package, filtering to obtain the binary programs (ELF format executable files) and dynamic libraries (ELF format shared library files) of the installed packages. In this step, when filtering binary programs and dynamic libraries, the file type is parsed using the file command, retaining only files of type "ELF 64-bit LSB executable" (binary program) and "ELF 64-bit LSB shared object" (dynamic library), filtering out irrelevant files such as script files and configuration files.
[0055] Step S12, construct the dependency matrix: For the binary program extracted in step S11, obtain the paths of the dynamic libraries that the binary program depends on through a dynamic link analysis tool (such as ldd); construct a four-dimensional relation matrix containing "name of installation package - path of binary program - path of dynamic library that binary program depends on - installation package to which dynamic library belongs", and store it as a CSV file.
[0056] Step S13: Record dynamic library feature information: For the dynamic library extracted in step S11, extract its version information (obtained by parsing the file header or string information of the ELF format shared library file) and file feature value (such as MD5 hash value), and establish a dynamic library feature information mapping table of "dynamic library path - dynamic library version information - file feature value (MD5)" as the baseline data before the update. When extracting the version information of the dynamic library in this step, if the dynamic library contains a version string (such as "Dynamic Library: libxxx v1.2.3"), then extract the string directly; if it does not contain it, then obtain the version information by parsing the .gnu.version section of the ELF format shared library file.
[0057] Step S14, Store snapshot data: Package and store the four-dimensional relationship matrix from step S12 and the dynamic library feature information mapping table from step S13 into a snapshot directory. The directory name includes a timestamp for easy subsequent traceability.
[0058] Step S2: Perform an update operation on the installation package to be updated in the Linux system to obtain the updated installation package. Specifically, the Linux system updates the installation package to be updated using a package management tool.
[0059] Step S3: Generate an updated system snapshot for the updated installation package in the Linux system. Based on the system snapshot before and after the update, analyze the impact range of the installation package update and obtain the analysis results.
[0060] The specific implementation steps for this step are as follows:
[0061] Step S31: Generate an updated system snapshot for the updated installation package: The updated system snapshot includes an updated four-dimensional relation matrix and an updated dynamic library feature information mapping table.
[0062] The method for generating the updated four-dimensional relation matrix and dynamic library feature information mapping table is the same as the steps for generating the original four-dimensional relation matrix and dynamic library feature information mapping table. The specific steps are as follows:
[0063] Step S311, extract updated installation package information: traverse all updated installation packages in the Linux system and record the name and version information of the updated installation packages; at the same time, extract the file list contained in each updated installation package, and filter to obtain the binary program (ELF format executable file) and dynamic library (ELF format shared library file) of the updated installation package.
[0064] Step S312, construct the dependency matrix: For the binary program extracted in step S311, obtain the paths of the dynamic libraries it depends on through a dynamic link analysis tool (such as ldd); construct an updated four-dimensional dependency matrix containing "name of installation package - path of binary program - path of dynamic library depended on by binary program - installation package to which dynamic library belongs", and store it as a CSV file.
[0065] Step S313, record dynamic library feature information: For the dynamic library extracted in step S311, extract its version information (obtained by parsing the file header or string information of the ELF format shared library file) and file feature value (such as MD5 hash value), and establish an updated dynamic library feature information mapping table of "dynamic library path - dynamic library version information - file feature value (MD5)" as the updated baseline data (system snapshot).
[0066] Step S314, Store snapshot data: Package and store the four-dimensional relationship matrix from step S312 and the dynamic library feature information mapping table from step S313 into a snapshot directory. The directory name includes a timestamp for easy subsequent traceability.
[0067] Step S32, Locate the changed dynamic library: Compare the feature information mapping tables of the dynamic library before and after the update, and use the updated feature information mapping table as a benchmark to select dynamic libraries that meet any of the following selection criteria as "changed dynamic libraries":
[0068] The first screening criterion is that the version information of the dynamic library has changed; the version information of the dynamic library includes the major version number, minor version number, revision number, etc.
[0069] Second filtering criterion: MD5 (hash value) has changed (version unchanged but content modified);
[0070] Third filtering criterion: The dynamic library has been deleted;
[0071] Fourth filtering criterion: New dynamic libraries (that did not previously exist in the system).
[0072] Step S33, Matching Affected Binary Programs: Based on the four-dimensional relation matrix before and after the update, traverse the "changed dynamic library" obtained in step S32, and extract the binary programs of all installed packages that depend on the changed dynamic library and the binary programs of the updated package as "affected binary programs".
[0073] Specifically, based on the four-dimensional relation matrix before the update, the "changing dynamic library" obtained in step S32 is traversed, and the binary programs of all installed packages that depend on the changing dynamic library are extracted; this traversal is mainly for dynamic libraries based on the third filtering condition.
[0074] Based on the updated four-dimensional relation matrix, the "changing dynamic library" obtained in step S32 is traversed to extract the binary programs of all updated installation packages that depend on the changing dynamic library; this traversal is mainly for dynamic libraries based on the first, second and fourth filtering conditions.
[0075] Step S34, Grade and label the degree of impact: Based on the change type of the dynamic library, label the degree of impact of the "affected binary programs" and obtain the analysis results:
[0076] High risk: The dynamic libraries that the affected binary programs depend on have been removed, added, or their major version numbers have changed;
[0077] Medium risk: Changes in the minor version number or revision number of the dynamic libraries that the affected binary programs depend on;
[0078] Low risk: The MD5 hash of the dynamic libraries that the affected binary depends on has changed, but the versions remain the same (only minor content adjustments).
[0079] In this step, when matching the affected binary program, the symbolic link issue of the dynamic library needs to be addressed: the symbolic link should point to the path of the actual dynamic library as the basis for matching, so as to avoid missed or false judgments due to changes in the symbolic link.
[0080] Step S4: Generate an impact analysis report based on the analysis results.
[0081] In this step, the analysis results from step S3 are compiled into a multi-format impact analysis report, including:
[0082] 1. JSON format report: Contains structured data such as analysis time, snapshot information, details of changed dynamic libraries, and details of affected binary programs, making it easy for other systems to call;
[0083] 2. CSV Format Report: Presents the correspondence between "Binary Program - Changes in Dynamic Libraries Depending on the Binary Program - Impact Level" in tabular form, facilitating further analysis using tools such as Excel;
[0084] 3. HTML Visual Report: The report is presented in web page format and includes statistical cards (such as the number of changed dynamic libraries and the number of affected programs), top rankings (such as the changed dynamic libraries most relied upon by binary programs), and searchable tables (which support filtering by impact level), improving report readability.
[0085] Example 2:
[0086] This embodiment discloses an impact analysis system for Linux system installation package updates, including a snapshot generation module, an update execution module, an impact analysis module, a report generation module, and a data storage module.
[0087] The update execution module is connected to the snapshot generation module to perform update operations on the installation packages to be updated in the Linux system, obtain the updated installation packages, and then pass them to the snapshot generation module to generate updated system snapshots. The snapshot generation module is connected to the impact analysis module to generate system snapshots before the update for already installed installation packages and updated system snapshots for the updated installation packages, and then pass them to the impact analysis module.
[0088] The impact analysis module is used to analyze the scope of the impact of the installation package update based on the system snapshot before and after the update, and obtain the analysis results.
[0089] The report generation module is connected to the impact analysis module to receive the analysis results from the impact analysis module and generate an impact analysis report based on the analysis results.
[0090] Specific implementation example:
[0091] Step T1: Environmental Preparation
[0092] Based on Debian or Ubuntu systems, this project uses Bash scripts to implement snapshot generation and update execution, and Python 3 to implement impact analysis and report generation. Required dependencies include: dpkg (package management), ldd (dynamic link analysis), file (file type detection), md5sum (hash value calculation), python3-csv (CSV parsing), and python3-json (JSON processing). Install these dependencies by executing the following commands:
[0093] sudo apt install -y coreutils binutils file python3
[0094] Step T2: Snapshot generation module implementation (Bash script: 1_prepare_update_snapshot.sh)
[0095] This script is used to generate system snapshots. Its core code logic includes:
[0096] Extract the list of installed packages:
[0097] dpkg --get-selections | grep -v deinstall | awk '{print $1}'
[0098] Extract the file list for each package: dpkg -L $package_name
[0099] Filter binary programs and dynamic libraries: `file $file_path | grep -E "ELF 64-bit LSBexecutable|ELF 64-bit LSB shared object"`
[0100] Calculate the file's MD5 hash: `md5sum $file_path | awk '{print $1}'`
[0101] Storage snapshot: Saves the relationship matrix and dynamic library feature information mapping table to the . / update_impact_snapshots / [timestamp]_before_update directory.
[0102] Step T3: Update the execution module implementation (Bash script: 2_execute_package_update.sh)
[0103] This script receives the installation package name entered by the user and performs an update operation:
[0104] read -p "Please enter the names of the installation packages to be updated (separate multiple packages with spaces):" packages
[0105] sudo apt install --only-upgrade $packages
[0106] Step T4: Implementation of the impact analysis module (Python script: 3_analyze_update_impact.py)
[0107] This script is the core module, implementing the function of step S3. The core code logic includes:
[0108] Loading snapshot data: Reading the relational matrix and dynamic library feature information before and after the update using python3-csv;
[0109] Compare changes in dynamic libraries: Traverse the dynamic library feature information mapping table to determine whether the version information and file feature value (MD5) have changed;
[0110] Matching affected binary programs: Establish a "dynamic library-binary program" mapping relationship, and filter affected binary programs based on the changed dynamic library;
[0111] Impact level: Set the impact level (risk level) based on the type of change in the dynamic library.
[0112] Step T5: Implementation of the report generation module (Python script: 4_generate_report.py)
[0113] This script generates reports in multiple formats:
[0114] JSON report: Writes the analysis results to a JSON file using json.dump();
[0115] CSV Report: Write tabular data using csv.DictWriter();
[0116] HTML Report: Generates HTML content through string concatenation, incorporates Tailwind CSS for style optimization, and includes statistical cards, sortable tables, and search functionality.
[0117] Step T6: One-click execution (Bash script: run_impact_analysis.sh)
[0118] Integrating the above modules enables one-click operation:
[0119] #! / bin / bash
[0120] set -e
[0121] # Step 1: Generate a system snapshot before the update
[0122] chmod +x 1_prepare_update_snapshot.sh && . / 1_prepare_update_snapshot.sh
[0123] # Step 2: Perform the installation package update
[0124] chmod +x 2_execute_package_update.sh && . / 2_execute_package_update.sh
[0125] # Step 3: Analyze the scope of impact
[0126] chmod +x 3_analyze_update_impact.py && python3 3_analyze_update_impact.py
[0127] # Step 4: Generate Impact Analysis Report
[0128] chmod +x 4_generate_report.py && python3 4_generate_report.py
[0129] echo "Analysis complete! Impact analysis report saved to . / update_impact_reports directory"
[0130] Definitions of abbreviations and key terms:
[0131] The .deb format is a proprietary installation package format for Debian systems (including Debian and Ubuntu). Combined with the APT software management system, it has become a very popular installation package format under Linux.
[0132] Binary programs are program files that computers can run directly. They consist of machine language instructions and can be executed without compilation or interpretation.
[0133] Dynamic Link Library (DLL): A DLL is a library file that contains code and data that can be used by multiple programs simultaneously. By sharing code and data, it provides a mechanism for code reuse and modular development, which helps save memory space and facilitates program updates and maintenance.
[0134] The above description is merely a preferred embodiment of the present invention. The scope of protection of the present invention is not limited to the above embodiments. All technical solutions falling within the scope of the present invention's concept are within the scope of protection of the present invention. It should be noted that for those skilled in the art, any improvements and modifications made without departing from the principles of the present invention should also be considered within the scope of protection of the present invention.
Claims
1. A method for analyzing the impact of Linux system installation package updates, characterized in that, Includes the following steps: Step S1: Generate a system snapshot before the update for the installation packages already installed on the Linux system; Step S2: Perform an update operation on the installation package to be updated in the Linux system to obtain the updated installation package; Step S3: Generate an updated system snapshot for the updated installation package. Based on the system snapshot before and after the update, analyze the impact range of the installation package update and obtain the analysis results. Step S4: Generate an impact analysis report based on the analysis results; Step S1 includes the following steps: Step S11: Traverse all installed packages in the Linux system, extract the names, version information and file lists of the installed packages, and filter to obtain the binary programs and dynamic libraries of the installed packages. Step S12: Obtain the paths of the dynamic libraries that the binary program of the installed package depends on, and use this to build a four-dimensional relation matrix before the update; Step S13: Obtain the version information and file characteristic values of the dynamic libraries of the installed package, and use them to establish a dynamic library characteristic information mapping table before the update; Step S14: Store the four-dimensional relationship matrix before the update and the dynamic library feature information mapping table before the update into the snapshot directory to form a system snapshot before the update; Step S3 includes the following steps: Step S31: Filter the updated installation package to obtain the binary program of the updated installation package, and generate an updated system snapshot; the updated system snapshot includes an updated four-dimensional relation matrix and an updated dynamic library feature information mapping table; Step S32: Compare the dynamic library feature information mapping table before the update with the dynamic library feature information mapping table after the update, filter out all dynamic libraries that meet the filtering conditions, and mark the dynamic libraries that meet the filtering conditions as changed dynamic libraries. Step S33: Based on the four-dimensional relation matrix before the update, traverse all changed dynamic libraries and extract the binary programs of all installed packages that depend on the changed dynamic libraries; Based on the updated four-dimensional relation matrix, traverse all the modified dynamic libraries and extract the binary programs of the updated installation packages that depend on the modified dynamic libraries. All installed installer binaries that depend on the changed dynamic libraries, as well as all updated installer binaries that depend on the changed dynamic libraries, are marked as affected binaries. Step S34: Based on the changes in the dynamic library, label the affected binary programs to determine their impact and obtain the analysis results; The four-dimensional relationship matrix is a four-layer structure: installation package name - binary program path - dynamic library path - installation package to which the dynamic library belongs; The filtering criteria include the first filtering criterion, the second filtering criterion, the third filtering criterion, and the fourth filtering criterion; a dynamic library that satisfies any one of the filtering criteria is a dynamic library that is subject to change. First screening criterion: Dynamic libraries whose version information in the dynamic library feature information mapping table before the update is inconsistent with the version information in the dynamic library feature information mapping table after the update. Second screening criterion: Dynamic libraries whose file feature values in the dynamic library feature information mapping table before the update are inconsistent with the file feature values in the dynamic library feature information mapping table after the update; The third filtering criterion: Dynamic libraries that existed in the dynamic library feature information mapping table before the update but were deleted from the dynamic library feature information mapping table after the update; Fourth filtering criterion: Dynamic libraries that were not present in the dynamic library feature information mapping table before the update but were added to the dynamic library feature information mapping table after the update.
2. The method for analyzing the impact of Linux system installation package updates according to claim 1, characterized in that, The binary program is an ELF format executable file; the dynamic library is an ELF format shared library file; in step S2, the Linux system updates the installation package to be updated through a package management tool.
3. The method for analyzing the impact of Linux system installation package updates according to claim 1, characterized in that, Step S31 includes the following steps: Step S311: Traverse all updated installation packages in the Linux system, record the name, version information and file list of the updated installation packages, and filter to obtain the binary programs and dynamic libraries of the updated installation packages; Step S312: Based on the updated installation package's binary program, obtain the paths of the dynamic libraries that the updated installation package depends on, and use this to establish the updated four-dimensional relation matrix; Step S313: Obtain the version information and file characteristic values of the dynamic library of the updated installation package, and establish a mapping table of the updated dynamic library characteristic information. Step S314: The updated four-dimensional relation matrix and the updated dynamic library feature information mapping table are stored in the snapshot directory to form an updated system snapshot.
4. The method for analyzing the impact of Linux system installation package updates according to claim 1, characterized in that, Impact analysis reports include JSON format reports, CSV format reports, and HTML visualization reports.
5. The method for analyzing the impact of Linux system installation package updates according to claim 1, characterized in that, In step S12, the paths of the dynamic libraries that the binary program of the installed package depends on are obtained by analyzing the binary program of the installed package using a dynamic link analysis tool.
6. The method for analyzing the impact of Linux system installation package updates according to claim 1, characterized in that, In step S13, the version information of the dynamic libraries of the installed package is obtained by parsing the file header or string of the dynamic libraries of the installed package.
7. A system for analyzing the impact of Linux system installation package updates, characterized in that, The system is based on the method described in any one of claims 1-6; the system includes a snapshot generation module, an update execution module, an impact analysis module, and a report generation module; The update execution module is connected to the snapshot generation module and is used to perform update operations on the installation package to be updated in the Linux system, obtain the updated installation package, and hand it over to the snapshot generation module to generate an updated system snapshot. The snapshot generation module is connected to the impact analysis module to generate system snapshots before and after the update, and then pass them to the impact analysis module. The impact analysis module is used to analyze the scope of the impact of the installation package update based on the system snapshot before and after the update, and to obtain the analysis results. The report generation module is connected to the impact analysis module and is used to receive the analysis results from the impact analysis module and generate an impact analysis report based on the analysis results.