在 win7 上通过 cygwin 使用 logrotate

在 win7 上通过 cygwin 使用 logrotate

我在 Windows 7 和 cygwin 中使用著名的 logrotate,我拥有最新的 cygwin dll,但不知何故该应用程序对我来说不起作用,而配置文件似乎没问题。有人遇到过这种情况吗?我的配置文件是这样的

nocreate
/cygdrive/c/log/*.log
{
    daily
    rotate 14
nocompress
nocopytruncate
}

控制台给了我一个意外的文本错误,还说找不到指定的目录。

编辑:

 error: logrotate.conf:1 unexpected text
 error: logrotate.conf:2 lines must begin with a keyword or a filename (possibly in            double quotes)
 error: logrotate.conf:3 unexpected text
 error: logrotate.conf:4 unexpected text
 error: logrotate.conf:5 unexpected text
 error: logrotate.conf:6 unexpected text
 error: logrotate.conf:7 lines must begin with a keyword or a filename (possibly in   double quotes)
 error: logrotate.conf:8 lines must begin with a keyword or a filename (possibly in double quotes)
  error: stat of /cygdrive/C/log/*.log failed: No such file or directory

这些是我运行应用程序后从控制台收到的错误。权限一切正常。

答案1

意外的文本可能意味着你有 DOS 风格的行尾logrotate.conf:尝试运行

dos2unix logrotate.conf

然后有这一行:

error: stat of /cygdrive/C/log/*.log failed: No such file or directory
  1. 该目录存在吗?
  2. 其中有任何*.log文件吗?
  3. * 是否被正确扩展?
  4. 是否存在由于 Windows 7 UAC 未被 cygwin 处理而导致的权限问题?

尝试指定,比如,/tmp/testlogdir/testlog.log(并且实际创建该文件!)

相关内容