我有几个关于 Scientfic Linux 7 上的 Apache httpd 日志记录的问题
Apache 日志记录似乎正在使用配置的日志目录中的某种硬链接/etc/httpd/日志到/var/log/httpd(尽管目录位于不同的文件系统上?!?!)
如果文件创建于/etc/httpd/日志它也出现在/var/log/httpd。 “/”(/etc/httpd/logs 所在位置)的磁盘使用量不会增加,但“/var”(/var/log/httpd 所在位置)的磁盘使用量会增加
我看不到对这两个位置中的文件或目录之间的任何软链接的任何引用。
此输出显示两个目录具有相同的 inode 引用:
lsof /var/log/httpd/
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 5062 root cwd DIR 8,6 52 3271451 /etc/httpd/../..
lsof /var/log/httpd/
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 5062 root cwd DIR 8,6 52 3271451 /var/log/httpd
这表明这两个目录应该位于不同的文件系统上。
df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 5109760 1170352 3939408 23% /
devtmpfs 933028 0 933028 0% /dev
tmpfs 942256 0 942256 0% /dev/shm
tmpfs 942256 16928 925328 2% /run
tmpfs 942256 0 942256 0% /sys/fs/cgroup
/dev/sda8 98988 5328 93660 6% /home
/dev/sda5 1020588 32984 987604 4% /tmp
/dev/sda6 1020588 882452 138136 87% /var
/dev/sda7 201388 61384 140004 31% /support
/dev/sda9 47788 10080 37708 22% /var/log/audit
/dev/sda1 252588 153472 99116 61% /boot
tmpfs 188452 0 188452 0% /run/user/0
这显示了 2 个目录的 inode 目录列表:
ll -id /var/log/httpd /etc/httpd/logs/
3271451 drwx------ 2 root root 52 Jun 20 14:06 /etc/httpd/logs/
3271451 drwx------ 2 root root 52 Jun 20 14:06 /var/log/httpd
我的第一个问题是这种配置如何可能?我不认为你可以跨文件系统进行硬链接 - 是否可能使用某种绑定挂载?
我的第二个问题是我们如何在这里停止 Apache 日志记录? Apache 的任何配置文件中都没有任何内容可以引用以下日志记录/var
任何建议将不胜感激。
答案1
你是对的,硬链接不能跨越文件系统边界,尽管在此示例中 /etc/httpd 下有一个用于日志目录的软链接:
logs -> ../../var/log/httpd
这些类型的符号链接可以是跨越这些边界的路径名。您所描述的内容看起来像是 Apache 的典型 Red Hat/Scientific 设置。
在该文件中/etc/httpd/conf/httpd.conf
您可以验证日志记录位置,通常设置 ErrorLog 和 CustomLog,这些可以更改。不过,如果您想将所有日志记录更改为单个位置,您可能需要更改下的符号链接/etc/httpd