引言

Linux小白很容易犯得一个错误就是:查看日志的时候,尤其是系统日志,由于日志太多,把系统日志手动删除了。也就是把/var/log/messages文件删除了,而不是删除文件的内容。直接删除文件会导致新产生的日志无法被写入到文件当中,只有清空文件内容后续的日志才能继续写入文件。当然删除文件之后仅仅新建一个同样名字的文件是解决不了问题的。

解决方案

文本以CentOS7为例,介绍如何恢复手动删除了系统日志/var/log/messages

1、执行lsof命令查询/var/log/messages文件的进程的进程ID(PID)

如果lsof没有安装,先安装一下

yum install lsof -y

查看messagesPID

lsof | grep messages

会显示如下内容:

rsyslogd 544 syslog 7w REG 8,1 214641 134422 /var/log/messages

2、根据PID和FD找到对应的文件

从上面命令输出可以看到,这个打开/var/log/messages文件的进程的PID是544,文件/var/log/messages的文件描述符(FD)号是7。

根据上述的PID和FD,可以在/proc找到对应的文件:

ls -al /proc/544/fd/7

会显示如下内容:

l-wx------ 1 root root 64 2012-07-14 14:48 7 - /var/log/messages

所以/proc/544/fd/7 这就是messages对应的文件

3、将文件拷贝到/var/log/messages

cp /proc/544/fd/7 /var/log/messages

4、重启syslog服务

service rsyslog restart

这样系统日志就能正常写入了。

结语

那有同学问了,那系统日志太多了,不方便查看,我怎么清空日志,然后只生成我想要的日志呢。

可以执行以下命令

cat /dev/null>/var/log/messages

好了本节课到这也就结束了,同学们听懂了嘛?

手动删除了Linux下syslog--/var/log/messages怎么办?的更多相关文章

  1. Ubuntu 16.04下没有/var/log/messages文件问题解决

    1.问题描述 今天需要查看Ubuntu系统的日志文件,但却没有找到/var/log/messages这个文件.网上搜素资料,说是要配置/etc/syslog.conf.syslog采用可配置的.统一的 ...

  2. Linux日志文件/var/log详解

    更多内容推荐微信公众号,欢迎关注: 如果愿意在Linux环境方面花费些时间,首先就应该知道日志文件的所在位置以及它们包含的内容.在系统运行正常的情况下学习了解这些不同的日志文件有助于你在遇到紧急情况时 ...

  3. linux下syslog使用说明

    转自:http://blog.chinaunix.net/uid-25120309-id-3359929.html syslog 系统日志应用  1) 概述       syslog是Linux系统默 ...

  4. 【翻译自mos文章】Linux的/var/log/messages是空的(0k),messages.0, messages.1也是空的

    Linux的/var/log/messages是空的(0k),messages.0, messages.1也是空的 来源于: The /var/log/messages is empty, and s ...

  5. Linux没有/var/log/messages日志文件

    1.新安装的CentOS8没有/var/log/messages日志文件: 安装rsyslog: dnf  install   -y  rsyslog 或 yum  install  -y  rsys ...

  6. Linux下SSH的Log文件路径

    Redhat or Fedora Core: /var/log/secure # Mandrake, FreeBSD or OpenBSD: /var/log/auth.log # SuSE: /va ...

  7. /var/log/messages文件监控

    近来项目中遇到一个问题,情况是这样的,我们使用ELK中的LOGSTASH来监控LINUX的系统日志文件:/var/log/messages文件,但这个文件默认的权限是600,这样很为难, 我们使用特定 ...

  8. fedora23没有/var/log/messages &如何禁用后台自动更新软件?

    警告!! Linux是一个非常敏感的操作系统,若删除文件错误,很容易造成系统崩溃. fedora23没有/var/log/messages 不是没有messages这个文件,而是 从 fc core ...

  9. 重启rsyslog服务时出现问题(误删/var/log/messages解决方案)

    今天修改了/etc/rsyslog.conf中的内容后,想着要通过systemctl restart rsyslog重启服务,但是执行完命令后,总感觉/etc/rsyslog.conf中修改的内容没有 ...

  10. /var/log/messages

    messages 该日志文件是许多进程日志文件的汇总,从该文件可以看出任何入侵企图或成功的入侵,包括整体系统信息,是系统最核心的日志.它包含了系统启动时的引导消息,以及系统运行时的其他状态消息.IO ...

随机推荐

  1. window远程桌面之通过修改端口链接

      windows开启及连接远程桌面 技术标签: 后端开发  windows         桌面 -> 此电脑 图标右键 -> 属性 远程设置 远程桌面 -> 修改为允许远程连接到 ...

  2. [Linux]CentOS查看RPM包依赖问题

    [经典应用案例] 查看此文前,可先查看 此博文中:在安装软件过程中,如何解决的依赖组件问题? [数据库/Linux]CentOS7安装MySQL Percona版(RPM方式) : 2-1 依赖组件问 ...

  3. [Linux/Bash/Shell]curl & wget

    1 参考文献 curl 的用法指南 - 阮一峰 curl网站开发指南 - 阮一峰 Curl Cookbook https://curl.haxx.se/ linux curl 命令详解,以及实例 2 ...

  4. 全网最详细中英文ChatGPT-GPT-4示例文档-食谱智能生成从0到1快速入门——官网推荐的48种最佳应用场景(附python/node.js/curl命令源代码,小白也能学)

    目录 Introduce 简介 setting 设置 Prompt 提示 Sample response 回复样本 API request 接口请求 python接口请求示例 node.js接口请求示 ...

  5. Redis源码之SDS简单动态字符串

    Redis 是内存数据库,高效使用内存对 Redis 的实现来说非常重要. 看一下,Redis 中针对字符串结构针对内存使用效率做的设计优化. 一.SDS的结构 c语言没有string类型,本质是ch ...

  6. windows安装zabbix错误代码

    zabbix安装:windows安装zabbix客户端很多坑,设计到很多问题,常见的问题有安装完成防火墙没有关闭,zabbix服务端接收不到客户端的信息.zabbix在cmd中安装的时候报错误代码,安 ...

  7. MySQL(九)InnoDB数据结构

    InnoDB数据结构 1 数据库的存储结构:页 ​ 索引信息和数据记录都是保存在文件上的,确切来说是保存在页结构中:另一方面,索引是在存储引擎上实现的,MySQL服务器上的存储引擎负责对表中数据的读取 ...

  8. Docker中Nginx搭建以及配置

    docker nginx搭建 1 docker pull nginx docker pull nginx 2 启动nginx docker run --name nginx -p 80:80 -d n ...

  9. [备份]Open-CMSIS-Pack Flash Programing

    Flash Programming Flash Programming Algorithms are a piece of software to erase or download applicat ...

  10. DES算法图解、密码学