В настройках squid.conf есть директива:
cache_dir ufs /var/spool/squid 100 16 128(да, маленький винт, маленькая сеть, поэтому под кеш всего 100 м)
НО ! мне почему-то казалось, что по достижении этого объема старые объекты должны удаляться из кеша. однако, вместо этого в cache.log просто регистрируется сообщение:
WARNING: Disk space over limit: 109092 KB > 102400 KB
и так далее. постепенно просто забивается раздел и SQUID перестает работать
www.squid-cache.org лежит, гуглеж ошибки не привел ни к чему хорошему. видимо ни у кого не доходило до такого.
вопрос: как обеспечить чтобы при переполнении кеша из него автоматически удалялись старые объекты, до тех пор пока он не достигнет максимального объема предписанного директивой
заранее спасибо за ответы
> заранее спасибо за ответыhttp://www.squid-cache.org/mail-archive/squid-users/200306/0...
>> заранее спасибо за ответы
> http://www.squid-cache.org/mail-archive/squid-users/200306/0...если бы эта ссылка еще бы и открывалась.. ;( цены б ей не было ;)
>>> заранее спасибо за ответы
>> http://www.squid-cache.org/mail-archive/squid-users/200306/0...
> если бы эта ссылка еще бы и открывалась.. ;( цены б ей
> не было ;)This may be seen if swap.state has been corrupted. Such corruption can
occur on unexpected system shutdowns (power failure, kernel panic etc).Try the following:
1. Shut down squid.
2. Remove the swap.state files from your cache directories.
3. Start Squid again. It will slowly rebuild swap.state from the cache
files.
>[оверквотинг удален]
>>> http://www.squid-cache.org/mail-archive/squid-users/200306/0...
>> если бы эта ссылка еще бы и открывалась.. ;( цены б ей
>> не было ;)
> This may be seen if swap.state has been corrupted. Such corruption can
> occur on unexpected system shutdowns (power failure, kernel panic etc).
> Try the following:
> 1. Shut down squid.
> 2. Remove the swap.state files from your cache directories.
> 3. Start Squid again. It will slowly rebuild swap.state from the cache
> files.спасибо. такого рода ответов в сети много. они касаются ситуации когда реально объем папки кеша небольшой, а в логах фиксируются варнинги.
у меня то варнинги абсолютно правдивы !! и место "засирается" вполне по честному. да и опять же, предложенный рецепт требует перезапуска прокси, что не вариант. с перезапуском я и так умею ;) squid -k stop, rm папка, squid -z, service squid start.
надо чтобы этого вообще не происходило. иными словами чтобы squid сам удалял лишние объекты по мере достижения кешем предельного размера. или это категорически невозможно ?
в документации об этом как-то ни слова не сказано. хотя если есть параметр "предельный размер директории кеша", то ведь должен же он для чего-то применяться ? не только же для записи варнингов в логи ???
> надо чтобы этого вообще не происходило. иными словами чтобы squid сам удалял
> лишние объекты по мере достижения кешем предельного размера. или это категорически
> невозможно ?А это?
# TAG: cache_swap_low (percent, 0-100)
# TAG: cache_swap_high (percent, 0-100)
#
# The low- and high-water marks for cache object replacement.
# Replacement begins when the swap (disk) usage is above the
# low-water mark and attempts to maintain utilization near the
# low-water mark. As swap utilization gets close to high-water
# mark object eviction becomes more aggressive. If utilization is
# close to the low-water mark less replacement is done each time.
#
# Defaults are 90% and 95%. If you have a large cache, 5% could be
# hundreds of MB. If this is the case you may wish to set these
# numbers closer together.
#Default:
# cache_swap_low 90
# cache_swap_high 95
>> надо чтобы этого вообще не происходило. иными словами чтобы squid сам удалял
>> лишние объекты по мере достижения кешем предельного размера. или это категорически
>> невозможно ?
> А это?
> # TAG: cache_swap_low (percent, 0-100)
> # TAG: cache_swap_high (percent, 0-100)у меня указано:
cache_swap_high 93
(нижний - дефолтный)но эффекта от этого я не наблюдаю вообще.
кстати, я убрал некоторые домены в no_cache, чтобы они вообще не кешировались...
как убедиться, что эта директива отрабатывает ? не могу этого понять по логам.>[оверквотинг удален]
> # close to the low-water mark less replacement is done each time.
> #
> # Defaults are 90% and 95%. If you have a large cache,
> 5% could be
> # hundreds of MB. If this is the case you may wish
> to set these
> # numbers closer together.
> #Default:
> # cache_swap_low 90
> # cache_swap_high 95
>>> заранее спасибо за ответы
>> http://www.squid-cache.org/mail-archive/squid-users/200306/0...
> если бы эта ссылка еще бы и открывалась.. ;( цены б ей
> не было ;)а она почему то открывается
>>>> заранее спасибо за ответы
>>> http://www.squid-cache.org/mail-archive/squid-users/200306/0...
>> если бы эта ссылка еще бы и открывалась.. ;( цены б ей
>> не было ;)
> а она почему то открываетсяточно. теперь открывается. но толку немного
>>>>> заранее спасибо за ответы
>>>> http://www.squid-cache.org/mail-archive/squid-users/200306/0...
>>> если бы эта ссылка еще бы и открывалась.. ;( цены б ей
>>> не было ;)
>> а она почему то открывается
> точно. теперь открывается. но толку немногоThis may be seen if swap.state has been corrupted.
Там же сказано, это может быть, если swap.state поврежден. Удали его разок и посмотри, что далее будет.
>>>>>> заранее спасибо за ответы
>>>>> http://www.squid-cache.org/mail-archive/squid-users/200306/0...
>>>> если бы эта ссылка еще бы и открывалась.. ;( цены б ей
>>>> не было ;)
>>> а она почему то открывается
>> точно. теперь открывается. но толку немного
> This may be seen if swap.state has been corrupted.
> Там же сказано, это может быть, если swap.state поврежден. Удали его разок
> и посмотри, что далее будет.так я его каждый раз удаляю вместе со всей кеш-директорией. потом создаю заново через squid -z. или он каждый раз портится ? нет, тут что-то другое.
>> This may be seen if swap.state has been corrupted.
>> Там же сказано, это может быть, если swap.state поврежден. Удали его разок
>> и посмотри, что далее будет.
> так я его каждый раз удаляю вместе со всей кеш-директорией. потом создаю
> заново через squid -z. или он каждый раз портится ? нет,
> тут что-то другое.Значит, это баг.
Какая версия squid, кстати?
>>> This may be seen if swap.state has been corrupted.
>>> Там же сказано, это может быть, если swap.state поврежден. Удали его разок
>>> и посмотри, что далее будет.
>> так я его каждый раз удаляю вместе со всей кеш-директорией. потом создаю
>> заново через squid -z. или он каждый раз портится ? нет,
>> тут что-то другое.
> Значит, это баг.
> Какая версия squid, кстати?2.3.STABLE2
>> Какая версия squid, кстати?
> 2.3.STABLE22.3.STABLE2 Thu Mar 2 22:45:32 UTC 2000
С _этого_ же и надо было начинать!