意外删除/ var / log / syslog


10

我不小心删除了/ var / log / syslog,现在无法使rsyslog运行。

我正在谷歌搜索,我尝试了所有发现的东西。确切地说:

我用触摸创建了系统日志。

然后我正确设置chmod和chown。现在ls -al给出以下结果:

-rw-r-----  1 syslog            adm           0 jún   23 02:36 syslog
-rw-r-----  1 syslog            adm     1557257 jún   23 01:33 syslog.1
-rw-r-----  1 syslog            adm      156618 jún   22 07:51 syslog.2.gz
-rw-r-----  1 syslog            adm      155851 jún   21 07:45 syslog.3.gz
-rw-r-----  1 syslog            adm      155199 jún   20 07:35 syslog.4.gz
-rw-r-----  1 syslog            adm      159709 jún   19 07:37 syslog.5.gz
-rw-r-----  1 syslog            adm      156035 jún   18 07:52 syslog.6.gz
-rw-r-----  1 syslog            adm      158478 jún   17 07:55 syslog.7.gz

然后,我重新启动了rsyslog服务:

service rsyslog restart

我多次重启了系统。

我什至用apt-get purge和重新安装了rsyslogapt-get install

但是这些都没有帮助我。如上所示,syslog的长度仍然为0字节,没有任何记录。

编辑:

即使我尝试手动记录某些内容,也不会记录任何内容:

# ls -al /var/log/syslog
-rw-r----- 1 syslog adm 0 jún   23 14:04 /var/log/syslog
# logger "this message should end up in syslog"
# ls -al /var/log/syslog
-rw-r----- 1 syslog adm 0 jún   23 14:04 /var/log/syslog

/var和的权限/var/log

# ls -al /var
drwxr-xr-x 14 root root     4096 dec   16  2015 .
drwxr-xr-x 24 root root     4096 máj   31 14:14 ..
...
drw-rw---- 22 root syslog   4096 jún   23 14:05 log

我在Ubuntu 14.04上


2
尝试logger "this message should end up in syslog"。然后查看是否已记录。
乔斯(Jos)

@Jos现在,我尝试了一下,什么都没做
2016年

rsyslog跑步吗?什么sudo service rsyslog status发言权?
乔斯

@Josrsyslog start/running, process 513
平衡

3
您是否更改了/ var或/ var / log /的权限?/ var在分区上并且已满?在strace下手动启动
rsyslog

Answers:


9

正如@Rinzwind指出的:/var/log目录权限可能被意外更改。在全新安装中drwxrwxr-x

更改您的权限:

chmod 775 /var/log

然后重新启动rsyslog(或重新启动)。使用以下命令测试系统日志功能:

logger "this message should end up in syslog"


如何“重新启动” rsyslog?也许你的意思是systemctl restart rsyslog?请更spacafic
亚历山大·米尔斯

1
是的,应该是sudo systemctl restart rsyslog或(在较旧的系统上)sudo service rsyslog restart
乔斯

6

与服务器Ubuntu 16.04 LTS相同的问题。我删除了/var/log/syslog

问题是系统日志文件的所有者/组!

解决方案:

  1. 创建一个空的系统日志文件
  2. 在Ubuntu 16.04中,所有者组必须为syslog:adm
  3. 重新开始
  4. 用记录器测试

命令:

cd /var/log
touch syslog
chown syslog:adm syslog
service rsyslog restart
logger "Didier MISSON logger test"

您必须在系统日志中看到该消息:

less syslog
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.