linux下误删messages文件的找回方法

本文介绍了一种在Linux环境下,当文件被误删且仍有进程在使用时,如何通过lsof和proc文件系统来查找并恢复文件的方法。以/var/log/messages为例,详细步骤包括查询使用文件的进程、定位进程的文件描述符,并通过复制描述符对应的文件内容来恢复。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如果有进程正在使用的文件,如果被误删了,可以找回。如果没有进程在使用,就无法找回被误删的文件了。

假如/var/log/messages文件被误删了:

1.查询正在使用该文件的进程。

[root@www]# lsof |grep message
rsyslogd  1717      root    1w      REG                8,2    243321     654968 /var/log/messages

2.根据查询结果,是PID为1717的进程正在使用该文件。进入该进程/proc下的目录/proc/1717/fd:

[root@www fd]# ll
total 0
lrwx------ 1 root root 64 Jan 10 14:34 0 -> socket:[11015]
l-wx------ 1 root root 64 Jan 10 14:34 1 -> /var/log/messages
l-wx------ 1 root root 64 Jan 10 14:34 2 -> /var/log/secure
lr-x------ 1 root root 64 Jan 10 14:34 3 -> /proc/kmsg
l-wx------ 1 root root 64 Jan 10 14:34 4 -> /var/log/maillog
l-wx------ 1 root root 64 Jan 10 14:34 5 -> /var/log/cron

3.查询文件1对应的就是messages日志,使用cat 1 > /var/log/messages 拷贝回去,再重启syslogd服务就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值