0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用lsof實(shí)現(xiàn)對(duì)linux文件的誤刪除恢復(fù)練習(xí)

馬哥Linux運(yùn)維 ? 來(lái)源:馬哥Linux運(yùn)維 ? 2024-11-24 11:14 ? 次閱讀

本文記錄使用lsof實(shí)現(xiàn)對(duì)linux文件的誤刪除恢復(fù)練習(xí)。題目如下:

1.確保當(dāng)前nginx進(jìn)程運(yùn)行中

2.刪除日志文件,rm -f /var/log/nginx/access.log

3.以lsof命令的幫助,恢復(fù)該日志數(shù)據(jù)

304e3194-a65b-11ef-93f3-92fbcf53809c.png

確保當(dāng)前nginx進(jìn)程運(yùn)行中

[root@master10 ~]# systemctl status nginx

3063c4b4-a65b-11ef-93f3-92fbcf53809c.png

查看nginx日志文件

[root@master10 ~]# tail /var/log/nginx/access.log

306ca020-a65b-11ef-93f3-92fbcf53809c.png

模擬誤刪日志文件

[root@master10 ~]# rm -f /var/log/nginx/access.log
[root@master10 ~]# tail /var/log/nginx/access.log
tail: cannot open ‘/var/log/nginx/access.log’ for reading: No such file or directory

以lsof命令的幫助,恢復(fù)該日志數(shù)據(jù)

1.lsof查看關(guān)于該日志的進(jìn)程

[root@master10 ~]# lsof | grep /var/log/nginx/access.log
nginx     1439         root    5w      REG              253,0      1524   17117944 /var/log/nginx/access.lo (deleted)
nginx     1440        nginx    5w      REG              253,0      1524   17117944 /var/log/nginx/access.lo (deleted)
nginx     1441        nginx    5w      REG              253,0      1524   17117944 /var/log/nginx/access.lo (deleted)

可以看到,nginx主進(jìn)程號(hào)為1439,因?yàn)閚ginx進(jìn)程沒(méi)有退出,該文件描述符還未被釋放,所以還是可以恢復(fù)的,仔細(xì)看行末文件名多了一個(gè)deleted被刪除的標(biāo)記

2.此時(shí)進(jìn)入linux中一個(gè)管理所有進(jìn)程的目錄,/proc,找到對(duì)應(yīng)的進(jìn)程id目錄(父親進(jìn)程id),進(jìn)入其管理文件描述符的地方。

[root@master10 fd]# cd ~
[root@master10 ~]# cd /proc/1439/fd
[root@master10 fd]# ll
total 0
lrwx------. 1 root root 64 Aug  9 17:26 0 -> /dev/null
lrwx------. 1 root root 64 Aug  9 17:26 1 -> /dev/null
lrwx------. 1 root root 64 Aug  9 17:26 10 -> socket:[22591]
l-wx------. 1 root root 64 Aug  9 17:26 2 -> /var/log/nginx/error.log
lrwx------. 1 root root 64 Aug  9 17:26 3 -> socket:[22588]
l-wx------. 1 root root 64 Aug  9 17:26 4 -> /var/log/nginx/error.log
l-wx------. 1 root root 64 Aug  9 17:26 5 -> /var/log/nginx/access.log (deleted)
lrwx------. 1 root root 64 Aug  9 17:26 6 -> socket:[22522]
lrwx------. 1 root root 64 Aug  9 17:26 7 -> socket:[22523]
lrwx------. 1 root root 64 Aug  9 17:26 8 -> socket:[22589]
lrwx------. 1 root root 64 Aug  9 17:26 9 -> socket:[22590]

3083ad4c-a65b-11ef-93f3-92fbcf53809c.png


3.我們看到的這個(gè)5軟連接文件,就是對(duì)應(yīng)的剛剛誤刪掉的access.log文件,使用cat命令查看5

308f2e38-a65b-11ef-93f3-92fbcf53809c.png


4.恢復(fù)此文件描述符的數(shù)據(jù),到日志文件即可完成文件恢復(fù)

[root@master10 fd]# cat 5 > /var/log/nginx/access.log
[root@master10 fd]# cat /var/log/nginx/access.log

30a05cd0-a65b-11ef-93f3-92fbcf53809c.png

鏈接:https://www.cnblogs.com/funlyp/p/18351218

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7030

    瀏覽量

    89034
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11304

    瀏覽量

    209499

原文標(biāo)題:linux使用lsof恢復(fù)誤刪除的nginx日志

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    右側(cè)欄的library誤刪除了,怎么還原?

    右側(cè)欄的library誤刪除了,怎么還原?
    發(fā)表于 12-17 15:51

    怎么恢復(fù)U盤誤刪的文檔word,excel文件

    ,選擇誤刪恢復(fù)功能?! ?、我們需要選擇刪除文件所在的硬盤,然后點(diǎn)擊“開始掃描”選項(xiàng)?! ?、接下來(lái)軟件就會(huì)對(duì)我們所選的硬盤進(jìn)行深度掃描了,等待軟件掃描完成之后,我們即可進(jìn)行接下來(lái)的
    發(fā)表于 06-06 15:41

    Linux文件系統(tǒng)被誤刪檔怎么恢復(fù)?

    作為一個(gè)多用戶、多任務(wù)的操作系統(tǒng),Linux下的文件一旦被刪除,是難以恢復(fù)的。盡管刪除命令只是在檔節(jié)點(diǎn)中作
    發(fā)表于 10-16 07:22

    誤刪除文件恢復(fù)工具FinalData_3.0.8.1201_XiaZaiBa

    電子發(fā)燒友網(wǎng)站提供《誤刪除文件恢復(fù)工具FinalData_3.0.8.1201_XiaZaiBa.exe》資料免費(fèi)下載
    發(fā)表于 10-11 23:43 ?13次下載

    Linux恢復(fù)誤刪除文件或目錄的小妙招

    。這里分別簡(jiǎn)單介紹一下。 一、誤刪除文件進(jìn)程還在的情況 這種一般是有活動(dòng)的進(jìn)程存在持續(xù)標(biāo)準(zhǔn)輸入或輸出,到時(shí)文件刪除后,進(jìn)程PID還是存在。這也就是有些服務(wù)器
    的頭像 發(fā)表于 11-18 11:33 ?6879次閱讀

    服務(wù)器誤刪除郵件數(shù)據(jù)的數(shù)據(jù)恢復(fù)案例

    服務(wù)器數(shù)據(jù)恢復(fù)環(huán)境: 8塊盤組成的RAID5磁盤陣列; EXT3文件系統(tǒng)。 服務(wù)器故障: 由于誤刪除導(dǎo)致文件系統(tǒng)中的郵件丟失。
    的頭像 發(fā)表于 09-22 11:26 ?1348次閱讀
    服務(wù)器<b class='flag-5'>誤刪除</b>郵件數(shù)據(jù)的數(shù)據(jù)<b class='flag-5'>恢復(fù)</b>案例

    【服務(wù)器數(shù)據(jù)恢復(fù)LINUX誤刪除、誤格式化怎么恢復(fù)數(shù)據(jù)?

    Linux誤刪除及誤格式化的數(shù)據(jù)恢復(fù)方案針對(duì)的文件系統(tǒng)。
    的頭像 發(fā)表于 11-23 11:34 ?1969次閱讀

    linux誤刪文件后的恢復(fù)方法

    對(duì)于linux誤刪文件,我們是否真的無(wú)法通過(guò)軟件進(jìn)行恢復(fù)呢?
    的頭像 發(fā)表于 02-09 09:51 ?2378次閱讀

    服務(wù)器數(shù)據(jù)恢復(fù)-LINUX誤刪除/格式化的數(shù)據(jù)恢復(fù)方案

    服務(wù)器數(shù)據(jù)恢復(fù)環(huán)境: 基于EXT2/EXT3/EXT4/Reiserfs/Xfs文件系統(tǒng)的Linux操作系統(tǒng)。 服務(wù)器故障: LINUX操作系統(tǒng)下
    的頭像 發(fā)表于 09-15 15:29 ?959次閱讀

    分布式數(shù)據(jù)恢復(fù)-hbase+hive分布式存儲(chǔ)誤刪除文件的數(shù)據(jù)恢復(fù)方案

    。 hbase+hive分布式存儲(chǔ)故障&初檢: 數(shù)據(jù)庫(kù)文件誤刪除,數(shù)據(jù)庫(kù)無(wú)法使用。 通過(guò)現(xiàn)場(chǎng)對(duì)該分布式環(huán)境的初步檢測(cè),發(fā)現(xiàn)虛擬機(jī)還可以正常啟動(dòng),虛擬機(jī)里面的數(shù)據(jù)庫(kù)塊文件丟失。好在塊
    的頭像 發(fā)表于 11-24 15:55 ?435次閱讀

    服務(wù)器數(shù)據(jù)恢復(fù)—KVM虛擬機(jī)raw格式磁盤文件數(shù)據(jù)恢復(fù)案例

    : 工作人員操作失誤刪除了服務(wù)器上的3臺(tái)KVM虛擬機(jī),虛擬機(jī)中運(yùn)行數(shù)據(jù)庫(kù),需恢復(fù)誤刪除虛擬機(jī)中raw格式的磁盤文件
    的頭像 發(fā)表于 05-17 13:33 ?448次閱讀
    服務(wù)器數(shù)據(jù)<b class='flag-5'>恢復(fù)</b>—KVM虛擬機(jī)raw格式磁盤<b class='flag-5'>文件</b>數(shù)據(jù)<b class='flag-5'>恢復(fù)</b>案例

    服務(wù)器數(shù)據(jù)恢復(fù)誤刪除KVM虛擬機(jī)的數(shù)據(jù)恢復(fù)案例

    1臺(tái)服務(wù)器,Linux操作系統(tǒng)+EXT4文件系統(tǒng),部署了數(shù)臺(tái)KVM虛擬機(jī),每臺(tái)虛擬機(jī)包含一個(gè)qcow2格式的磁盤文件,和一個(gè)raw格式的磁盤文件。 工作人員操作失
    的頭像 發(fā)表于 06-17 15:10 ?360次閱讀
    服務(wù)器數(shù)據(jù)<b class='flag-5'>恢復(fù)</b>—<b class='flag-5'>誤刪除</b>KVM虛擬機(jī)的數(shù)據(jù)<b class='flag-5'>恢復(fù)</b>案例

    Oracle數(shù)據(jù)恢復(fù)—Oracle刪除數(shù)據(jù)不用怕!這些數(shù)據(jù)恢復(fù)方法了解一下

    相信有很多oracle數(shù)據(jù)庫(kù)用戶都遇到過(guò)在操作Oracle數(shù)據(jù)庫(kù)時(shí)誤刪除某些重要數(shù)據(jù)的情況,這個(gè)時(shí)候如果數(shù)據(jù)庫(kù)沒(méi)有備份且數(shù)據(jù)十分重要的,怎么才能恢復(fù)誤刪除的數(shù)據(jù)呢?北亞企安數(shù)據(jù)恢復(fù)工程
    的頭像 發(fā)表于 07-19 16:40 ?526次閱讀

    NetApp數(shù)據(jù)恢復(fù)—NetApp存儲(chǔ)誤刪除的數(shù)據(jù)恢復(fù)案例

    某公司一臺(tái)NetApp存儲(chǔ),該存儲(chǔ)中有24塊磁盤。 工作人員誤刪除了NetApp存儲(chǔ)中一個(gè)文件夾,文件夾中有非常重要的數(shù)據(jù)。 數(shù)據(jù)恢復(fù)工程師在現(xiàn)場(chǎng)對(duì)該存儲(chǔ)進(jìn)行了初檢。雖然這個(gè)
    的頭像 發(fā)表于 08-12 13:35 ?274次閱讀
    NetApp數(shù)據(jù)<b class='flag-5'>恢復(fù)</b>—NetApp存儲(chǔ)<b class='flag-5'>誤刪除</b>的數(shù)據(jù)<b class='flag-5'>恢復(fù)</b>案例

    服務(wù)器數(shù)據(jù)恢復(fù)—EXT3文件系統(tǒng)下誤刪除數(shù)據(jù)的恢復(fù)案例

    服務(wù)器數(shù)據(jù)恢復(fù)環(huán)境: 郵件服務(wù)器中有一組由8塊盤組成的RAID5陣列, 上層是Linux操作系統(tǒng)+EXT3文件系統(tǒng)。 服務(wù)器故障: 由于誤刪除導(dǎo)致
    的頭像 發(fā)表于 10-23 15:11 ?171次閱讀
    服務(wù)器數(shù)據(jù)<b class='flag-5'>恢復(fù)</b>—EXT3<b class='flag-5'>文件</b>系統(tǒng)下<b class='flag-5'>誤刪除</b>數(shù)據(jù)的<b class='flag-5'>恢復(fù)</b>案例