28.2. 配置和优化

Squid 代理服务器不能以超级用户 root 身份运行,因此我们必须创建一个没有 shell 的特殊用户来运行 Squid 代理服务器。
                 [root@deep] /# useradd -d /cache/ -r -s /dev/null squid >/dev/null 2>&1
                 [root@deep] /# mkdir /cache/
                 [root@deep] /# chown -R squid.squid /cache/
               
首先,我们添加用户squid/etc/passwd文件。然后,我们创建/cache目录,如果该目录不存在,我们只在它不存在时重复操作。最后,我们更改目录的所有者cache为用户squid.

Tip: 通常我们不需要执行命令 mkdir/cache/,因为我们在安装 Linux 期间对硬盘进行分区时已经创建了这个目录。如果此分区不存在,您必须执行此命令来创建该目录。

  1. 移动到新的 Squid 目录并在终端上键入以下命令:编辑Makefile.in文件,vi +18icons/Makefile.in并更改行
                       DEFAULT_ICON_DIR  =  $(sysconfdir)/icons
                     
    更改为
                       DEFAULT_ICON_DIR  =  $(libexecdir)/icons
                     

  2. 我们更改变量,sysconfdirlibexecdir。通过此修改,iconsSquid 目录将位于/usr/lib/squid目录。

    1. 编辑Makefile.in文件,vi +34src/Makefile.in并更改以下行
                             DEFAULT_CACHE_LOG  =  $(localstatedir)/logs/cache.log
                           
      更改为
                             DEFAULT_CACHE_LOG  =  $(localstatedir)/log/squid/cache.log
                           

    2.                      DEFAULT_ACCESS_LOG  =  $(localstatedir)/logs/access.log
                         
      更改为
                           DEFAULT_ACCESS_LOG  =  $(localstatedir)/log/squid/access.log
                         

    3.                      DEFAULT_STORE_LOG  =  $(localstatedir)/logs/store.log
                         
      更改为
                           DEFAULT_STORE_LOG  =  $(localstatedir)/log/squid/store.log
                         

    4.                      DEFAULT_PID_FILE  =  $(localstatedir)/logs/squid.pid
                         
      更改为
                           DEFAULT_PID_FILE  =  $(localstatedir)/run/squid.pid
                         

    5.                      DEFAULT_SWAP_DIR  =  $(localstatedir)/cache
                         
      更改为
                           DEFAULT_SWAP_DIR  =  /cache
                         

    6.                      DEFAULT_ICON_DIR  =  $(sysconfdir)/icons
                         
      更改为
                           DEFAULT_ICON_DIR  =  $(libexecdir)/icons
                         
      我们更改以下文件的默认位置cache.log, access.log,store.log文件,使其位于/var/log/squid目录。然后,我们将 Squid 的 pid 文件放在/var/run目录,最后,将iconsSquid 的目录放在/usr/lib/squid/icons,使用变量libexecdir如上。