Linux基礎 -- 在內存中使用chroot修復eMMC

Linux基礎 – 在內存中使用chroot修復eMMC

概述

本教程將介紹如何在Linux系統中,使用chroot在內存中構建一個臨時系統,并在不依賴原有系統的情況下修復eMMC(如/dev/mmcblk2)磁盤。該方法適用于嵌入式系統修復、磁盤清理以及離線維護操作。

為什么選擇chroot

chroot(Change Root)命令用于更改當前進程或其子進程的根目錄。通過將根目錄切換到內存中的臨時系統,我們可以安全地卸載和修復原有的磁盤(如eMMC),而不會干擾當前系統。

環境準備

  • Linux操作系統,支持chroot命令。
  • 足夠的內存空間(根據臨時系統大小確定)。
  • 目標磁盤:eMMC(如/dev/mmcblk2)。

搭建內存中的臨時系統

1. 創建臨時根文件系統

mkdir -p /tmp/newsys/{bin,lib,lib64,dev,proc,sys}

2. 復制必要的二進制和庫

cp /bin/bash /tmp/newsys/bin/
cp /bin/busybox /tmp/newsys/bin/ldd /bin/bash
ldd /bin/busyboxcp -r /lib/x86_64-linux-gnu/* /tmp/newsys/lib/
cp -r /lib64/* /tmp/newsys/lib64/

3. 創建設備節點

mknod -m 666 /tmp/newsys/dev/null c 1 3
mknod -m 666 /tmp/newsys/dev/zero c 1 5
mknod -m 666 /tmp/newsys/dev/tty c 5 0
mknod -m 666 /tmp/newsys/dev/random c 1 8
mknod -m 666 /tmp/newsys/dev/urandom c 1 9

4. 掛載 /proc, /sys, /dev 到新根目錄

mount --bind /proc /tmp/newsys/proc
mount --bind /sys /tmp/newsys/sys
mount --bind /dev /tmp/newsys/dev

5. 使用 chroot 進入臨時系統

chroot /tmp/newsys /bin/bash

在chroot中修復eMMC

1. 確保eMMC未被占用

umount /dev/mmcblk2

2. 修復或格式化eMMC

fsck.ext4 /dev/mmcblk2p1
mkfs.ext4 /dev/mmcblk2p1

退出chroot并清理

exit
umount /tmp/newsys/proc
umount /tmp/newsys/sys
umount /tmp/newsys/dev
rm -rf /tmp/newsys

總結

通過在內存中搭建的臨時系統,我們可以靈活地卸載和修復磁盤而不影響現有系統。此方法安全、快速,適用于嵌入式設備維護與故障排查。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/83180.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/83180.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/83180.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

人工智能、深度學習、機器學習的聯系與區別

定義 人工智能(AI - Artificial Intelligence) :是研究、開發用于模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的一門新的技術科學。它旨在讓計算機能夠像人類一樣思考、學習和決策,涉及到諸如計算機視覺、自然語言處理…

web第二次課后作業--設計一個注冊登錄系統

一、頁面展示 登錄頁面 提交頁面 二、代碼 2.1 登錄頁面 <% page language"java" contentType"text/html; charsetUTF-8"pageEncoding"UTF-8"%><html> <head><meta http-equiv"Content-Type" content"…

電腦桌面便簽哪個好?2025年電腦免費用的便簽軟件推薦

我們都知道&#xff0c;一個優秀的桌面便簽軟件可以成為提高效率的得力助手。無論是記錄臨時靈感、管理待辦事項&#xff0c;還是提醒重要日程&#xff0c;合適的便簽工具都能讓您的數字生活更加有序。本文將為您介紹2025年最值得推薦的免費電腦桌面便簽軟件&#xff0c;從Wind…

【SPIN】用Promela驗證順序程序:從斷言到SPIN實戰(SPIN學習系列--2)

你寫了一段自認為“天衣無縫”的程序&#xff0c;但如何確保它真的沒有bug&#xff1f;靠手動測試&#xff1f;可能漏掉邊界情況&#xff1b;靠直覺&#xff1f;更不靠譜&#xff01;這時候&#xff0c;Promela SPIN組合就像程序的“顯微鏡”——用形式化驗證技術&#xff0c;…

LabVIEW中樣條插值實現及應用

在 LabVIEW 編程環境下&#xff0c;B - 樣條插值是處理數據擬合與曲線平滑的重要工具。它憑借靈活的特性和良好的數學性質&#xff0c;在眾多工程領域中發揮著關鍵作用&#xff0c;能夠高效地根據離散數據點生成平滑連續的曲線&#xff0c;為數據分析和處理提供了有力支持。 一…

【油藏地球物理正演軟件ColchisFM】基于數據驅動的油藏參數疊前地震反演研究進展

科吉思基于油藏地球物理參數的正演軟件ColchisFM&#xff0c;有機融合了巖石物理正演與地震正演&#xff0c;具有良好的適用性和便捷性&#xff0c;在業內已經廣泛使用。當用戶在做正演模擬的同時&#xff0c;自然會聯想到是否可以直接開展油藏地球物理參數反演呢&#xff1f;答…

互聯網大廠Java求職面試:AI與大模型集成的云原生架構設計

互聯網大廠Java求職面試&#xff1a;AI與大模型集成的云原生架構設計 引言 在現代互聯網企業中&#xff0c;AI與大模型技術的應用已經成為不可或缺的一部分。特別是在短視頻平臺、電商平臺和金融科技等領域&#xff0c;如何高效地將大模型集成到現有的云原生架構中是一個巨大…

Web GIS可視化地圖框架Leaflet、OpenLayers、Mapbox、Cesium、ArcGis for JavaScript

Mapbox、OpenLayers、Leaflet、ArcGIS for JavaScript和Cesium是五種常用的Web GIS地圖框架&#xff0c;它們各有優缺點&#xff0c;適用于不同的場景。還有常見的3d庫和高德地圖、百度地圖。 1. Mapbox 官網Mapbox Gl JS案列&#xff1a;https://docs.mapbox.com/mapbox-gl-…

專項智能練習(加強題型)-DA-02

2. 單選題 近年來&#xff0c;“斜杠青年”成為很多人的時尚追求。它指的是一群不再滿足“專一職業”生活方式&#xff0c;而選擇擁有多重職業和身份的多元生活人群。對此&#xff0c;有人認為&#xff0c;新產業新技術新業態不斷更迭&#xff0c;激烈的競爭促使青年人不斷進行…

使用gitbook 工具編寫接口文檔或博客

步驟一&#xff1a;在項目目錄中初始化一個 GitBook 項目 mkdir mybook && cd mybook git init npm init -y步驟二&#xff1a;添加書籍結構&#xff08;如 book.json, README.md&#xff09; echo "# 我的書" > README.md echo "{}" > bo…

Malformed input or input contains unmappable characters解決

JDK 17 文件上傳編碼異常解決方案技術文檔 1. 問題背景 在 JDK 17 環境下&#xff0c;文件上傳過程中可能拋出 Malformed input or input contains unmappable characters 錯誤。此問題通常由以下原因觸發&#xff1a; 文件路徑/名稱包含非 ASCII 字符&#xff08;如中文、日…

MyBatis 的分頁插件 c

前言 大型項目的數據體量很大&#xff0c;在前端界面展示時為保障展示效果&#xff0c;會要求接口快速返回&#xff0c;這時候后端會選擇分頁獲取數據&#xff0c;只傳遞要查詢的頁碼數據。這就避免了大多問題&#xff0c;達到快速返回的效果。 常用的分頁有2種&#xff1a; …

Linux:理解文件系統

1.理解硬件 1.1磁盤 機械磁盤是計算機中的?個機械設備 磁盤--- 外設 慢 容量?&#xff0c;價格便宜 1.2磁盤物理結構 1.3磁盤的存儲結構 扇區&#xff1a;是磁盤存儲數據的基本單位&#xff0c;512字節&#xff0c;塊設備 如何定位?個扇區呢&#xff1f; 確定磁頭要訪…

用 openssl 測試 tls 連接

以 baidu 為例&#xff0c;命令行為&#xff1a; openssl s_client -tlsextdebug -connect baidu.com:443 得到的輸出為&#xff1a; CONNECTED(00000003) TLS server extension "renegotiation info" (id65281), len1 0000 - 00 …

今日行情明日機會——20250515

上證指數縮量收陰線&#xff0c;個股跌多漲少&#xff0c;上漲波段4月9日以來已有24個交易日&#xff0c;時間周期上處于上漲末端&#xff0c;注意風險。 深證指數縮量收陰線&#xff0c;日線上漲結束的概率在增大&#xff0c;注意風險。 2025年5月15日漲停股主要行業方向分…

Axure RP9:列表新增

文章目錄 列表新增思路新增按鈕操作說明保存新增交互設置列表新增 思路 利用中繼器新增行實現列表新增功能 新增按鈕操作說明 工具欄中添加新增圖標及標簽,在圖標標簽基礎上添加熱區;對熱區添加鼠標單擊時交互事件,同步插入如下動作:顯示/隱藏動作,設置目標元件為新增窗…

ArcGIS Pro調用多期歷史影像

一、訪問World Imagery Wayback&#xff0c;基本在我國范圍 如下圖&#xff1a; 二、 放大到您感興趣的區域 三、 查看影像版本信息 點擊第二步的按鈕后&#xff0c;便可跳轉至World Imagery (Wayback 2025-04-24)的相關信息。 四 、點擊上圖影像版本信息&#xff0c;頁面跳轉…

提高成功率!課題中的立項依據深度寫作

1. 戰略定位&#xff1a;在宏觀愿景中界定課題坐標 立項依據的第一重任務&#xff0c;是回答“為什么要做”——但這一問并非局限于學術好奇&#xff0c;而要升維到國家戰略、行業痛點與學科前沿的交匯點。教師在申報時&#xff0c;應先掃描上位政策&#xff08;如國家中長期科…

【FileZilla】Client端的線程模型 (一)

CMainFrame構造---》CFileZillaEngineContex構造--》引起其成員變量lmpl構造--》引起fz::event_loop的構造&#xff0c;其中創建了兩個線程(指針) task_和 timer_task_。 // In event_loop.cpp event_loop::event_loop(thread_pool & pool): sync_(false) {task_ std::ma…

什么是Agentic AI(代理型人工智能)?

什么是Agentic AI&#xff08;代理型人工智能&#xff09;&#xff1f; 一、概述 Agentic AI&#xff08;代理型人工智能&#xff09;是一類具備自主決策、目標導向性與持續行動能力的人工智能系統。與傳統AI系統依賴外部輸入和顯式命令不同&#xff0c;Agentic AI在設定目標…