Безопасность и оптимизация Linux.Редакция для Red Hat



         

Компиляция и оптимизация


Шаг 1

Перейдите в каталог с исходными кодами Squid и введите следующие команды на вашем терминале:

CC="egcs" \

CFLAGS="-O9 -funroll-loops -ffast-math -malign-double -mcpu=pentiumpro -march=pentiumpro -fomit-frame-pointer -fno-exceptions" \

./configure \

--prefix=/usr \

--exec-prefix=/usr \

--bindir=/usr/sbin \

--libexecdir=/usr/lib/squid \

--localstatedir=/var \

--sysconfdir=/etc/squid \

--enable-delay-pools \

--enable-cache-digests \

--enable-poll \

--disable-ident-lookups \

--enable-truncate \

--enable-heap-replacement

Эти опции говорят Squid:

  • Использовать delay pools для ограничения и контроля использования полосы пропускания пользователями.
  • Использовать Cache Digests для улучшения времени ответа клиентам и использования сети.
  • Использовать poll() вместо select(), так как это предпочтительней чем select.
  • Отключить ident-lookups для удаления кодов, которые выполняют Ident (RFC 931) lookups и уменьшить возможность denial-of-service.
  • Разрешить усекание, чтобы осуществить некоторое улучшение в производительности при удалении файлов.
  • Использовать возможность Squid, называемую heap-replacement, чтобы иметь возможность выбора различных вариантов алгоритма замены кэша вместо стандартного алгоритма LRU для улучшения производительности. Смотрите ниже для более детального объяснения.
  • Шаг 2

    Сейчас, мы должны скомпилировать и инсталлировать Squid на сервере:

    [root@deep squid-2.3.STABLE2]# make -f makefile

    [root@deep squid-2.3.STABLE2]# make install

    [root@deep squid-2.3.STABLE2]# mkdir -p /var/log/squid

    [root@deep squid-2.3.STABLE2]# rm -rf /var/logs/

    [root@deep squid-2.3.STABLE2]# chown squid.squid /var/log/squid/

    [root@deep squid-2.3.STABLE2]# chmod 750 /var/log/squid/

    [root@deep squid-2.3.STABLE2]# chmod 750 /cache/

    [root@deep squid-2.3.STABLE2]# rm -f /usr/sbin/RunCache

    [root@deep squid-2.3.STABLE2]# rm -f /usr/sbin/RunAccel

    [root@deep squid-2.3.STABLE2]# strip /usr/sbin/squid

    [root@deep squid-2.3.STABLE2]# strip /usr/sbin/client




    Содержание  Назад  Вперед