lsof使用者及恢複記錄檔

來源:互聯網
上載者:User

標籤:lsof

lsof這個命令大家可能有點陌生,因為平時很少用到。今天特意拿出來說一下,希望對做營運的朋友有點點協助,也當是自己回憶一下知識點。

   先來說說lsof最基本的參數:

   lsof -i:(連接埠) 查看這個連接埠有那些進程在訪問,比如22連接埠

   [[email protected] fd]# lsof -i:22

COMMAND   PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME

sshd      567 root    3r  IPv4 8956289      0t0  TCP bogon:ssh->bogon:51479 (ESTABLISHED)

sshd     1875 root    3u  IPv4   11442      0t0  TCP *:ssh (LISTEN)

sshd     1875 root    4u  IPv6   11444      0t0  TCP *:ssh (LISTEN)

sshd    32661 root    3r  IPv4 8949387      0t0  TCP bogon:ssh->bogon:50966 (ESTABLISHED)

  從上面我們不難看出有兩個會話於22連接埠,當你懷疑某個連接埠被駭客利用時,第一個辦法就是用這個命令查一下有哪


些IP在訪問此連接埠。

  利用lsof可以恢複一些系統日誌,前提是這個進程必須存在。這裡就拿最常用的/var/log/messages來舉例說明,大家


在做測試的時候最好先備份一下。

[[email protected]_backup ~]# lsof |grep /var/log/messages

syslogd    3477      root    2w      REG       8,6        418    2097231 /var/log/messages

進程在運行中,接下來我就把/var/log/messages這個檔案刪掉

[[email protected]_backup ~]# rm -rf  /var/log/messages

刪掉之後,我再來看看這個進程的變化

[[email protected]_backup ~]# lsof |grep /var/log/messages

rsyslogd   1520      root    1w      REG       8,6     5344     786679 /var/log/messages (deleted)

大家看到有變化了吧, 對比兩個之後發現多了(deleted)。要找到這個檔案在哪還要看看這個

COMMAND:進程的名稱

PID:進程標識符

USER:進程所有者

FD:檔案描述符,應用程式通過檔案描述符識別該檔案。如cwd、txt等

TYPE:檔案類型,如DIR、REG等

DEVICE:指定磁碟的名稱

SIZE:檔案的大小

NODE:索引節點(檔案在磁碟上的標識)

NAME:開啟檔案的確切名稱

PID:1520 FD:1 那我們有直接進入/proc/1520/FD/1用ls查看一下

lrwx------ 1 root root 64 01-16 08:32 0 -> socket:[6561]

l-wx------ 1 root root 64 01-16 08:32 2 -> /var/log/messages (deleted)

l-wx------ 1 root root 64 01-16 08:32 3 -> /var/log/secure

l-wx------ 1 root root 64 01-16 08:32 4 -> /var/log/maillog

l-wx------ 1 root root 64 01-16 08:32 5 -> /var/log/cron

l-wx------ 1 root root 64 01-16 08:32 6 -> /var/log/spooler

l-wx------ 1 root root 64 01-16 08:32 7 -> /var/log/boot.log

看到了2對應/var/log/messages (deleted)好,我看看檔案是不是我們要的檔案

[[email protected]_backup ~]# head -n 10 2

Jan 14 08:26:36 new90 avahi-daemon[1690]: Invalid query packet.

Jan 14 08:26:36 new90 avahi-daemon[1690]: Invalid query packet.

Jan 14 08:26:36 new90 avahi-daemon[1690]: Invalid query packet.

Jan 14 08:26:37 new90 avahi-daemon[1690]: Invalid query packet.

Jan 14 08:26:37 new90 avahi-daemon[1690]: Invalid query packet.

Jan 14 08:26:40 new90 avahi-daemon[1690]: Invalid query packet.

Jan 14 08:26:49 new90 avahi-daemon[1690]: Invalid query packet.

Jan 14 08:27:16 new90 avahi-daemon[1690]: Invalid query packet.

Jan 14 11:05:43 new90 dnsmasq[2085]: no servers found in /etc/resolv.conf, will retry

我看到更我以前資料的一樣啊。可以恢複了

[[email protected]_backup ~]cat 2 > /var/log/messages

ok,我成功恢複了檔案。


本文出自 “實用筆記” 部落格,請務必保留此出處http://qiuyt.blog.51cto.com/1229789/1433838

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.