• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種CF卡操作系統的更新方法技術方案

    技術編號:36709731 閱讀:39 留言:0更新日期:2023-03-01 09:35
    本發明專利技術公開了一種CF卡操作系統的更新方法,通過Linux系統的debugfs工具刪除并重新創建CF卡上的extlinux文件,添加引導參數rd.live.ram,使得CF卡可讀寫;將CF卡中的操作系統內核、initrd和extlinux文件更新,更新extlinux文件的引導參數rd.live.ram,使initrd在升級完后找到位于硬盤上root分區的根文件系統,且在initrd完成準備工作后,執行pivot_root指令切換到root分區的根文件系統中,實現對運行中的CF卡操作系統的升級。本發明專利技術能夠在不需要拔出CF卡的情況下升級操作系統,避免了業務停止和返廠重新燒錄的缺陷。避免了業務停止和返廠重新燒錄的缺陷。避免了業務停止和返廠重新燒錄的缺陷。

    【技術實現步驟摘要】
    一種CF卡操作系統的更新方法


    [0001]本專利技術屬于存儲設備系統更新的
    ,具體涉及一種CF卡操作系統的更新方法。

    技術介紹

    [0002]由于Linux系統具有開源的特性、軟件授權費用低和應用開發資源豐富等優點,已經得到了廣泛的應用,并且在民用和辦公以及開發領域具有越來越多的用戶。CF卡(Compact Flash)作為一種存儲設備,革命性的使用了閃存,具有可永久性保存信息,無需電源,速度快,重量輕,耗電量小,體積小等特點,CF卡可以直接安裝在芯片上的控制器接口,不帶驅動器,無移動的部件,發生機械故障的可能性很小,數據更安全,這使它成為優良的多功能的存儲系統,這種可隨機攜帶的控制器使CF卡與多種平臺相兼容,適合軟件生產廠商生產安裝有軟件產品的操作系統鏡像。只要將CF卡插入到電腦的CF卡插槽中,即可啟動其中的Linux操作系統。然而,后期如果要對已經生產的CF卡操作系統進行升級,就必須要將CF卡拔出,返廠重新燒寫新的操作系統進行升級。
    [0003]對CF卡的Linux操作系統進行升級比升級普通的Linux操作系統要困難許多,主要是因為在默認情況下,啟動過程中,initrd會將squahsFS只讀掛載到CF卡目錄,而不是加載到內存中,否則會嚴重影響系統性能。因此,在操作系統運行過程中CF卡是不可寫的,如果需要升級必須關機,停止正在運行的操作系統,將CF卡拔下后,將新的操作系統燒寫進CF卡中進行升級,這就勢必會對當前正在運行的業務產生影響。
    [0004]現有技術CN200710043619.0公開了基于移動設備存儲卡來更新閃存操作系統的方法,需要通過移動設備上的存儲卡重新燒錄閃存操作系統,在更新操作系統時需要將系統斷電,不適合用于對已經出廠的設備進行升級,因為這意味著CF卡必須返廠重新燒錄,系統中正在運行的程序必須被迫停止。
    [0005]squashFS是一套基于Linux內核使用的壓縮只讀文件系統,大小通常超過1G,解壓后的大小可達好幾個G。在CF卡操作系統中,squashFS位于CF卡內,系統啟動時會將其解壓掛載。如果直接掛載到CF卡目錄,那么CF卡是只讀的,不可進行寫入操作。而如果把它加載到內存中,可以對CF卡實現讀寫的操作,然而,squashFS的大小可達好幾個G,將它加載到內存中會嚴重影響系統性能。
    [0006]因此,本專利技術提供了一種CF卡操作系統的更新方法,能夠在CF卡操作系統運行時進行升級,無需拔出CF卡或者關閉電源,保證了運行程序的連貫運行。

    技術實現思路

    [0007]本專利技術的目的在于提供一種CF卡操作系統的更新方法,旨在解決上述問題。
    [0008]本專利技術主要通過以下技術方案實現:一種CF卡操作系統的更新方法,包括以下步驟:步驟S100:將升級包上傳到插有CF卡的電腦上,所述升級包包含操作系統內核、
    initrd、根文件系統、extlinux文件以及更新腳本;步驟S200:運行升級包,解壓升級包,運行更新腳本,執行更新;步驟S300:CF卡的initrd會根據extlinux中的引導參數rd.live.ram的值選擇是否掛載squahsFS;首先利用Linux系統的debugfs刪除CF卡上的舊extlinux文件,創建新的extlinux文件,添加引導參數rd.live.ram=1,使啟動過程中,將CF卡中的squashFS鏡像復制到內存中運行,使得CF卡變得可讀寫;步驟S400:備份CF卡和電腦硬盤中的文件,以防止后續操作失敗導致數據丟失;步驟S500:替換CF卡中的操作系統內核、initrd、extlinux文件,修改extlinux文件的引導參數rd.live.ram,使initrd在升級完后找到位于硬盤分區上的根文件系統,并切換到根文件系統中,解壓新操作系統的根文件系統到硬盤分區上,實現操作系統更新。
    [0009]為了更好地實現本專利技術,進一步地,所述步驟S500中,選擇硬盤中另一個分區作為新操作系統的root分區,root分區就是根文件系統所在的分區;對該分區進行格式化,將分區的標簽設置為root,以便解壓新操作系統的根文件系統到硬盤分區上。
    [0010]為了更好地實現本專利技術,進一步地,所述步驟S500中,在修改extlinux文件的引導參數rd.live.ram時,將原來的引導參數rd.live.ram=1刪除,然后,添加新的內核參數告知內核新的根文件系統所在位置,修改后的rd.live.ram=LABEL=root,使initrd在升級完后找到位于硬盤上root分區的根文件系統,且在initrd完成準備工作后,執行pivot_root指令切換到root分區的根文件系統中。
    [0011]為了更好地實現本專利技術,進一步地,所述步驟S300包括以下步驟:步驟S301:CF卡上新建的extlinux讀取extlinux引導文件,根據配置文件將內核參數傳遞給內核,加載內核并初始化內存;步驟S302:內核把initrd轉化成正常的內存文件系統并釋放initrd使用的內存;步驟S303:initrd作為root被掛載,賦予CF卡讀寫權限。
    [0012]為了更好地實現本專利技術,進一步地,所述步驟S500包括以下步驟:步驟S501:linuxrc被執行,任何可執行文件做初始化;步驟S502:Linuxrc解壓CF卡中的SquashFS鏡像,只讀掛載真正的根文件系統;步驟S503:linuxrc使用pivot_root系統調用把根文件系統并放在根目錄;步驟S504:在根文件系統上執行正常的啟動程序;步驟S505:升級成功后,移去initrd文件系統。
    [0013]為了更好地實現本專利技術,進一步地,所述步驟S500中,在解壓成功后,刪除CF卡上的squashFS鏡像文件,因為之后系統不再需要將squashFS解壓掛載,刪除squashFS文件可以節約CF卡空間。
    [0014]為了更好地實現本專利技術,進一步地,若系統升級成功,則刪除步驟S400中的備份文件。
    [0015]本專利技術的有益效果如下:(1)本專利技術能夠在不需要拔出CF卡的情況下升級操作系統,避免了業務停止和返廠重新燒錄的成本;(2)本專利技術通過Linux系統的debugfs工具,可以刪除并重新創建CF卡上的extlinux文件,添加引導參數rd.live.ram=1,使得CF卡可讀寫;并沒有直接通過debugfs替
    換CF卡中的文件,極大地降低了升級過程中的風險;(3)原本的CF卡操作系統采用了壓縮的只讀根文件系統,受限于CF卡本身的讀寫速度,性能方面不如安裝在硬盤上的操作系統,而本專利技術將新的根文件系統直接解壓到硬盤上,使得新操作系統在讀寫性能上遠好于舊操作系統;與此同時,內核與initrd仍然保留在CF卡中,可以保留原本CF卡操作系統兼容硬盤陣列(RAID)或者加密硬盤場景的能力;(4)本專利技術將新的根文件系統解壓到硬盤上,刪除CF卡上的舊squashFS,使得后續啟動過程中不再需要將squashFS解壓掛載。一方面可以簡化將來的升級流程,使得CF卡能夠一直保持可讀寫狀態本文檔來自技高網
    ...

    【技術保護點】

    【技術特征摘要】
    1.一種CF卡操作系統的更新方法,其特征在于,包括以下步驟:步驟S100:將升級包上傳到插有CF卡的電腦上,所述升級包包含操作系統內核、initrd、根文件系統、extlinux文件以及更新腳本;步驟S200:運行升級包,解壓升級包,運行更新腳本,執行更新;步驟S300:CF卡的initrd會根據extlinux中的引導參數rd.live.ram的值選擇是否掛載squahsFS;首先利用Linux系統的debugfs刪除CF卡上的舊extlinux文件,創建新的extlinux文件,添加引導參數rd.live.ram=1,使啟動過程中,將CF卡中的squashFS鏡像復制到內存中運行,使得CF卡變得可讀寫;步驟S400:備份CF卡和電腦硬盤中的文件,以防止后續操作失敗導致數據丟失;步驟S500:替換CF卡中的操作系統內核、initrd、extlinux文件,修改extlinux文件的引導參數rd.live.ram,使initrd在升級完后找到位于硬盤分區上的根文件系統,并切換到根文件系統中,解壓新操作系統的根文件系統到硬盤分區上,實現操作系統更新。2.根據權利要求1所述的一種CF卡操作系統的更新方法,其特征在于,所述步驟S500中,選擇硬盤中另一個分區作為新操作系統的root分區,root分區就是根文件系統所在的分區;對該分區進行格式化,將分區的標簽設置為root,以便解壓新操作系統的根文件系統到硬盤分區上。3.根據權利要求2所述的一種CF卡操作系統的更新方法,其特征在于,所述步驟S500中,在修改extlinux文件的引導參數rd.live.ram時,將原來的引導參數rd.live.ram=1刪除,然后,添加新的內核參數告...

    【專利技術屬性】
    技術研發人員:翁羽蘇吳永越買步云周虎
    申請(專利權)人:成都安恒信息技術有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 免费A级毛片无码久久版| 午夜无码熟熟妇丰满人妻| 国产av无码专区亚洲av果冻传媒 | 精品国产aⅴ无码一区二区| 亚洲日韩av无码中文| 永久免费AV无码网站国产| 无码少妇一区二区浪潮免费| 中文字幕无码免费久久| 人妻中文字幕AV无码专区| 久久无码人妻一区二区三区| 免费无码婬片aaa直播表情| 亚洲熟妇无码八V在线播放| 亚洲色中文字幕无码AV| 亚洲AV中文无码乱人伦| 亚洲精品GV天堂无码男同| 色爱无码AV综合区| 2014AV天堂无码一区| 午夜精品久久久久久久无码| 亚洲日韩看片无码电影| 久久久久亚洲av无码专区喷水| 熟妇人妻中文av无码| 国产AV无码专区亚洲AV琪琪| 国产精品无码久久综合网| 日韩AV无码精品人妻系列| 亚洲国产成人片在线观看无码| 永久无码精品三区在线4| 精品无码久久久久久国产 | 蜜桃成人无码区免费视频网站| 精品无码人妻一区二区三区不卡| 久久久国产精品无码一区二区三区| 久久久久亚洲AV无码网站| 蜜桃成人无码区免费视频网站| 亚洲∧v久久久无码精品| 无码无套少妇毛多18p| 亚洲av无码国产精品色午夜字幕 | 精品少妇人妻av无码专区| 成人免费无码大片A毛片抽搐 | 国产在线无码制服丝袜无码| 蜜臀AV无码一区二区三区| 麻豆精品无码国产在线果冻 | 无码国模国产在线观看|