您的位置:首页 > 运维架构 > Linux

linux下恢复删除文件

2013-12-16 10:50 441 查看
今天在修改apache配置文件时,用vi命令打开的,由于长时间没有操作,CRT终端自动退出。这时再登陆服务器,想编辑时提示
Swap file "/etc/httpd/conf/.httpd.conf.swp" already exists!
[O]pen Read-Only, (E)dit anyway, (R)ecover, (Q)uit, (A)bort:
这问题很常见,把.httpd.conf.swp删除就行了,可一不小心删除错了,把原文件给删除了,悲崔了!
一想,还有一个.httpd.conf.swp文件,把它改名回来不就行了!于是mv .httpd.conf.swp httpd.conf 然后再打开:
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
全是乱码!

后来想到一个方法,把改回来的文件再改回去mv httpd.conf .httpd.conf.swp
然后touch一个新的空文件为httpd.conf
再用vi打开httpd.conf文件,同样又会再次显示:
Swap file "/etc/httpd/conf/.httpd.conf.swp" already exists!
[O]pen Read-Only, (E)dit anyway, (R)ecover, (Q)uit, (A)bort:
这时,只要按一下“R”键就是可以恢复了!之后再把那个隐藏文件删除就可以了!

至于使用fd文件描述符方法,在这里就不适用了,当然对于日志文件和数据库文件来说,那些都是一直被某些进程占用打开的,那些文件被删除后利用内存中保存的文件描述符来恢复是个不错的选择。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: