{% extends "base.html" %} {% block title %}日志轮转 - Squid Manager{% endblock %} {% block content %}

📘 logrotate 怎么配合 Squid

本页面会生成 /etc/logrotate.d/squid,内容由 Squid Manager 维护。流程:

  1. logrotate 检测到当前日志达到 size 阈值(或到 daily 时间)时,把当前文件改名为 .1;
  2. logrotate 用 create 0640 proxy proxy 创建新空文件(原属主为 Squid 用户);
  3. logrotate 执行 postrotate 块里的 squid -k rotate,让 Squid 关闭旧 fd 并重开新文件 — 这是核心联动;
  4. 老日志按 rotate N 数量保留,多余的会被删除/压缩 (compress);
  5. 当本页面「卸载」配置时,只删除 /etc/logrotate.d/squid,不会动 Squid 本身。

{% if logrotate_available %} ● logrotate 可用 {% else %} ● logrotate 未安装 请先 apt install logrotate。 {% endif %}

⚙️ 安装 / 重新生成配置

目标文件: {{ logrotate_path }}

{% if not paths %}
📂

未在「路径设置」里配置任何日志路径,无法生成。

{% else %}
{% if is_installed %} {% endif %}
{% if is_installed %} {% endif %} {% endif %}

📋 当前已安装

{% if is_installed %}

{{ current_msg }}

状态 ● 已安装
路径{{ logrotate_path }}
管理日志 {% for p in paths %}
{{ p }}
{% endfor %}
{% else %}

{% if not current_msg %}{% endif %} 尚未安装 logrotate 配置 ({{ current_msg or '文件不存在' }}),点击左侧表单写入。

{% endif %}

📄 当前 {{ logrotate_path }} 内容

{% if current_content %}
{{ current_content }}
{% else %}

暂无内容 (尚未安装)。

{% endif %}
{% if preview %}

🧪 预览 (尚未写入磁盘)

下面是根据当前表单参数生成的预览,仅供检查。点「写入配置」才会落盘。

{{ preview }}
{% endif %}

ℹ️ 提示

{% endblock %} {% block scripts %} {% if is_installed %} {% endif %} {% endblock %}