當前位置:首頁 » 操作系統 » linuxdump內存

linuxdump內存

發布時間: 2025-02-13 17:37:30

linux下的mp文件介紹mp文件linux

Linux 系統崩潰是最讓人頭疼的事情,它會使我們的工作暫時停止,直到系統重啟才可能恢復工作。mp 是一種文件,它可以幫助我們快速定位 Linux 系統中可能出現的問題,以達到解決問題的目的。
mp 文件實際上是一種二進制文件,它可以幫助技術人員確定系統出錯的位置,因此可以找到問題更快。大多數情況下,mp 文件可以存儲系統內存中的數據,以便技術人員可以檢查系統狀態的歷史記錄和調試問題。此外,技術人員還可以根據獲取的 mp 文件對系統可能出錯的位置進行定位和測試。
雖然 mp 文件能夠幫助定位和調試問題,但是它也有一些缺點,比如它保存的數據不能完全指示系統出錯的位置,這時就需要系統管理員結合經驗進行確定。另外使用 mp 文件的時候也是非常昂貴的,因為為了獲得有用的信息,通常會對它進行詳細的分析,這會耗費幾小時的工作時間。
下面是一段幫助檢查並分析系統 mp 文件的代碼:
# Create a directory named 『mplog』 in the root of your file system
mkdir /mplog
# Move the existing mp file to that directory
mv /var/crash/* /mplog
# Create a core mp analyzer script in the same directory
touch /mplog/mptool.sh
# Add the following code to the script
# !/bin/sh
echo 『Core Dump Analyzer』
for i in `ls |grep coremp`
do
echo 『Analyzing』 $i
gdb -batch -x /mplog/commands $i
done
# Create a file with the commands to run while analyzing the core mp
touch /mplog/commands
# Add the command you want to use while analyzing the core mp
echo 「info threads」 >> /mplog/commands
echo 「thread apply all bt」 >> /mplog/commands
# Run the script
sh /mplog/mptool.sh
綜上,mp文件可以幫助系統管理員快速定位系統出錯的位置和進行調試,但可能也會消耗大量的時間和費用,因此使用 mp 文件前要謹慎判斷。

❷ [轉載] 從正在運行的Linux進程中mp出內存內容

最近看到有個CTF題感覺挺有意思,就是從一個bin中找到一個secret key,然後用來簽名session cookies用來懟一個使用go的Web伺服器。通常這種類型題的flag都比較直接。可以直接用strings懟這個bin就可以了,然而這次的這個題目中的bin不同,因為有太多雜碎(noise)要過濾了。於是在此我就來展示一下如何用一些基本的Linux命令配合gdb從進程中mp出內存中的信息。
先file一下,

發現是64位的Linux可執行文件。
然後strings一下,

發現字元串太多,還是先不看,再研究深一點吧。
然後先運行一下程序,

然後再另一個終端找到這個進程的PID

然後cat一下它的內存(太長不看TL;DR)

似乎太多了有點可怕,但是不用害怕。
然後啟動gdb,將改進程attach到gdb上。

然後就是gdb命令

解釋一下語法:

然後就是用strings命令找出剛才mp出的文件的字元串,我喜歡最少10個長度的字元串(-n 10)來過濾掉一些無用的信息(noise)。
結果如下:

可以看到好像有個hash值,為了不泄露CTF題的答案,我已經把hash值改了。

總結
好了,你已經找到運行的進程的PID,mp出了那個進程的內存內容,然後用gdb,strings命令找出了有用的數據。

以上翻譯自:
https://colin.guru/index.php?title=Dumping_Ram_From_Running_Linux_Processes

Let』s get your hands dirty
Down to business
於是我也想試一下啊,然而我想找一個執行命令之後不退出的進程還蠻難的,最終我想到了apache,然而必須要有客戶端與apache建立TCP長連接,如果是那種5xx的錯誤,比如這個,
就會發現TCP連接建立之後馬上又斷開了。

於是只能弄一個TCP長連接吧。返回200的那種應該可以。
結果發現還是不行。
於是通過htop漫無目的地找吧,於是還是找apache的主進程吧。
通過htop發信apache的主進程的PID為6900,
於是

(注意:要以root的身份啟動,否則可能沒有許可權。)
然後gdb就開始調試6900進程了,一頓輸出啊,幾秒之後到達gdb的命令行。
然後mp出heap中的內容。

然後在/root目錄找到了那兩個mp出來的文件,

從任意一個mp中找出10個字元以上的字元串吧。

————————————————

原文鏈接: https://blog.csdn.net/caiqiiqi/article/details/72807952

❸ Linux裡面kmp是什麼

kmp是在系統崩潰、死鎖或者死機的時候用來轉儲內存運行參數的一個工具和服務。
打個比方,如果系統一旦崩潰那麼正常的內核就沒有辦法工作了,在這個時候將由kmp產生一個用於capture當前運行信息的內核,該內核會將此時的內存中的所有運行狀態和數據信息收集到一個mp
core文件中以便於Red
Hat工程師分析崩潰原因,一旦內存信息收集完成,系統將自動重啟。這和以前的diskmp,netmp是同樣道理。只不過kmp是RHEL6特有的。
查看Linux系統是否打開kmp:
執行命令:ulimit -c 如果輸出為 0 ,則代表沒有打開。如果為unlimited則已經打開。

熱點內容
加密滴膠卡 發布:2025-02-13 20:30:48 瀏覽:274
javalogin 發布:2025-02-13 20:25:48 瀏覽:426
智聯招聘無法上傳照片 發布:2025-02-13 20:16:03 瀏覽:528
python元素替換list 發布:2025-02-13 20:03:48 瀏覽:772
windows系統賬戶名和密碼是多少 發布:2025-02-13 20:03:02 瀏覽:530
我的世界帶有商店伺服器好嗎 發布:2025-02-13 20:02:50 瀏覽:615
東莞加密軟體 發布:2025-02-13 20:02:05 瀏覽:869
可以玩游戲的雲伺服器 發布:2025-02-13 19:55:35 瀏覽:303
php授權系統 發布:2025-02-13 19:55:22 瀏覽:415
php截取字元亂碼 發布:2025-02-13 19:53:54 瀏覽:89