[發明專利]Linux系統鏡像自動生成方法在審
| 申請號: | 202310097385.7 | 申請日: | 2023-02-03 |
| 公開(公告)號: | CN116302684A | 公開(公告)日: | 2023-06-23 |
| 發明(設計)人: | 王銘宇;郝家勝;汪洋 | 申請(專利權)人: | 電子科技大學 |
| 主分類號: | G06F11/14 | 分類號: | G06F11/14;G06F3/06;G06F16/16;G06F16/174;G06F8/61 |
| 代理公司: | 成都行之智信知識產權代理有限公司 51256 | 代理人: | 溫利平 |
| 地址: | 611731 四川省成*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | linux 系統 自動 生成 方法 | ||
本發明公開了一種Linux系統鏡像自動生成方法,獲取源文件系統的分區信息,包括源文件系統的分區個數和源文件系統的空間大小;創建與源文件系統大小相同的全零填充的虛擬磁盤,并進行區域劃分和映射;依次對待源文件系統的每個分區通過掛載目錄備份恢復得到鏡像文件;最后將鏡像文件進行壓縮,得到源文件系統的鏡像壓縮文件。本發明通過使用一個全零填充的文件作為虛擬磁盤進行鏡像生成,只對源文件系統中有效的數據塊進行備份,并將生成的備份文件進一步壓縮,減小了Linux系統鏡像文件的占用空間,進而提高了鏡像文件的實用性,壓縮拷貝時占用的時間。
技術領域
本發明屬于Linux鏡像生成技術領域,更為具體地講,涉及一種Linux系統鏡像自動生成方法。
背景技術
Linux系統鏡像是操作系統驅動器的一個副本,其文件內容與當前系統完全一致,但并不能直接使用,需要利用一些虛擬光驅工具進行解壓后才能使用。Linux系統鏡像常用于備份電腦的系統盤,當電腦系統出現故障、無法正常使用時,即可恢復Linux系統鏡像使電腦正常運行;還可以用于將一臺電腦的系統裝入其他多臺電腦,完成系統配置。
鏡像文件廣泛用于Linux開發環境的配置,例如樹莓派官網、Atlas?200DK開發者官網,都會給出相應鏡像文件幫助用戶完成Linux開發環境的配置。用戶自身也可以將自己的系統生成鏡像文件,進行重復使用或配置其他設備的開發環境。鏡像文件極大的便利了用戶的Linux開發流程。
然而,目前的已有方法生成的Linux系統鏡像所占空間大小普遍偏大,例如Atlas200DK中5.0.5alpha001固件與驅動版本,官方壓縮鏡像文件大小為16.5G。現有的工具和方法如鏡像生成軟件、dd命令等無法生成更小的系統鏡像,原因在于現有方法直接將物理分區備份為文件,保留了文件系統的碎片信息、磁盤無用信息等。較大的鏡像會造成存儲空間的大量浪費,在進行復制或下載時都會造成不便;鏡像向設備燒錄所需的時長取決于鏡像的大小,較大的鏡像在燒錄時也會耗費大量的時間不利于鏡像的傳播、可復用性較差。
發明內容
本發明的目的在于克服現有技術的不足,提供一種Linux系統鏡像自動生成方法,主要原理為使用一個全零填充的文件作為虛擬磁盤進行鏡像生成,只對源文件系統中有效的數據塊進行備份,并將生成的備份文件進一步壓縮,減小了Linux系統鏡像文件的占用空間,進而提高了鏡像文件的實用性,壓縮拷貝時占用的時間。
為了實現上述發明目的,本發明Linux系統鏡像自動生成方法包括以下步驟:
S1:獲取源文件系統的分區信息,源文件系統是指待備份的Linux文件系統,分區信息包括源文件系統的分區個數和源文件系統每個分區實際占用空間大小;
記源文件系統的分區數量為N,創建N個臨時文件夾,用于掛載源文件系統的N個分區;創建完成后,將源文件系統的N個分區掛載到這N個臨時文件夾;
獲取源文件系統的N個分區的實際占用空間大小dn,n=1,2,…,N;令每個分區的空間大小Dn=dn+Δ,Δ為預設的空間余量;計算得到目標文件系統的空間大小目標文件系統是指掛載后的虛擬磁盤文件,用于恢復備份的源文件系統;
S2:創建大小為L的用零填充每個字節的文件,將該文件虛擬成物理磁盤設備,再根據源文件系統每個分區的空間大小Dn對虛擬磁盤進行區域劃分;創建分區表的設備映射,將分好區的虛擬磁盤進行映射,映射完成后將每一個虛擬磁盤分區格式化為源文件系統對應的格式;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于電子科技大學,未經電子科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202310097385.7/2.html,轉載請聲明來源鉆瓜專利網。





