1、COSS will not function without large file support (off_t is 4 bytes long. Please reconsider recompiling squid with --with-large-files

Bungled squid_webcache.conf 。。。。。。。

检查是否在编译squid的时候未加入 --with-large-files 选项,如果是,重新加入此选项再编译一次squid

2、使用coss缓存格式的时候,squid不断重建cache

可能原因为maxfullbufs值过低,去掉maxfullbufs限制,让其值为无限

3、日志中有类似如下的内容:

2007/03/05 14:46:56| Ready to serve requests.

2007/03/05 14:46:59| clientReadRequest: FD 11 (192.168.1.5:34061) Invalid Request

Illegal character in hostname; underscores are not allowed

注释: 无效的字符串,访问地址中不允许下划线。

解决办法 :

squid 2.5 中,编译的时候加入如下参数

--enable-underscore

允许解析的URL中出现下划线,因为默认squid会认为带下划线的URL地址是非法的,并拒绝访问该地址。

对于 2.6 版本,编译时没有这个参数,这个参数出现在 squid.conf 的配置文档里,说明是这样的:

allow_underscore New option to allow _ in hostnames, replacing the similar build time configure option in 2.5 and earlier.

具体的在 squid.conf 中的参数,可以在配置文档里搜索一下 allow_underscore,看一下配置文档的具体注释。

4、squid的cache.log日志中又类似如下的警告:

WARNING: 100 swapin MD5 mismatches

这个错误是说squid读入一个缓存文件的时候,存储在接口对应的位置的URL不是

squid认为应该存储在那里的数据。这可能是swap.state有错误或文件指到了磁盘

上错误的块(文件系统有错误)。

停止squid应用,删除swap.state然后启动squid,让它通过读取缓存文件来重建缓存

记录,如果重建后仍然出现上面的情况,那应该就是文件系统或磁盘有问题了。

5、日志中出现下面警告:

Jun 28 11:14:38 localhost squid[27178]: squidaio_queue_request: Syncing pending I/O operations.. (blocking)

Jun 28 11:14:59 localhost squid[27178]: squidaio_queue_request: Synced

Jun 28 11:14:59 localhost squid[27178]: storeAufsOpenDone: (2) No such file or directory

Jun 28 11:14:59 localhost squid[27178]:         /data/squid/cache_webcache1/00/6B/00006B29

Jun 28 11:14:59 localhost squid[27178]: storeAufsOpenDone: (2) No such file or directory

Jun 28 11:14:59 localhost squid[27178]:         /data/squid/cache_webcache1/00/DC/0000DC36

Jun 28 11:14:59 localhost squid[27178]: WARNING: 1 swapin MD5 mismatches

Jun 28 11:14:59 localhost squid[27178]: WARNING: Disk space over limit: 18925740 KB > 16777216 KB

Jun 28 11:14:59 localhost squid[27178]: storeAufsOpenDone: (2) No such file or directory

Jun 28 11:14:59 localhost squid[27178]:         /data/squid/cache_webcache2/00/92/0000924F

Jun 28 11:14:59 localhost squid[27178]: storeAufsOpenDone: (2) No such file or directory

Jun 28 11:14:59 localhost squid[27178]:         /data/squid/cache_webcache1/03/6F/00036FB6

Jun 28 11:14:59 localhost squid[27178]: squidaio_queue_request: Async request queue growing uncontrollably!

解决方法:

检查配置文件,cache设置为aufs文件系统格式,将此设置改为ufs,重建cache缓存目录

6、运行reconfigure的时候出现squid: ERROR: no running copy

原因是找不到pid文件,如果不是使用默认的squid.conf作为squid的设置文件,在用squid目录下sbin/squid进行重新启动等动作的时候要加上-f的参数制定配置文件,同时检查pid文件是否存在,有时候可能错误地配置了pid文件到不存在的目录,或者将pid文件配置到了应用没有权限写入的目录,导致没有创建pid文件,如果pid文件不存在,可以手工创建该pid,然后获取squid的pid并写人pid文件。

7、squid在压力大的情况下响应非常慢

检查是否文件描述符太小,如果是,调整文件描述符限制,重启squid,检查squid运行的文件描述符,如果为调整后的,则在启动脚本处启动squid的地方加入调整文件描述符的命令,否则除此外还需先调整文件描述符限制然后重新编译安装一次squid

8、缓存效率下降,查看日志无报错,netstat -na查看连接有比较多的连接为SYN_RE,且多为同一IP过来的连接

优化TCP网络

echo 1 > /proc/sys/net/ipv4/tcp_syncookies

echo 1 > /proc/sys/net/ipv4/tcp_synack_retries

echo 1 > /proc/sys/net/ipv4/tcp_syn_retries

9、缓存效率低,网卡输入输出流量差距很小。

首先查看系统日志有无squid的报错,如果没有再查看dmesg,看看有无丢包,是否网卡问题,如果没有再查看网关

使用squid的时候网关问题关系重大,如果网关没有配置正确,将可能导致用户访问不了。

10、日志报如下错误:squid: Could not determine fully qualified hostname. Please set 'visible_hostname'

检查/etc/hosts文件、/etc/sysconfig/network文件、和hostname命令结果,看看三者是否对应,如果不对应,需要修改为对应,并且/etc/hosts文件中对应的配置还需要有合法域名格式

/etc/sysconfig/network中的hostname是系统启动时候加载的hostname值,如果此值与/etc/hosts文件中的值不对应并且squid中没有设置visible_hostname选项的话,会导致系统重启后squid不能正常启动。

11、日志大量报如下错误:

Apr 29 08:28:56 localhost squid[13851]: httpReadReply: Excess data from "HEAD http://192.168.230.1/"

Apr 29 08:28:56 localhost squid[13851]: httpReadReply: Excess data from "HEAD http://192.168.230.1/"

这表明服务器返回一个超过squid声明的响应对象最大值的返回值。即:对请求做了限制,例如大小限制。

它违反了HTTP协议并导致服务器返回被截断。

12.runcache发现频繁重启后停止服务:

  :./bin/RunCache Running: squid -sY >> /usr/local/squid//var/squid.out 2>&1

  ./bin/RunCache: line 35: 20000 File size limit exceededsquid -NsY $conf >>$logdir/squid.out 2>&1

  ./bin/RunCache: line 35: 20177 File size limit exceededsquid -NsY $conf >>$logdir/squid.out 2>&1

  RunCache: EXITING DUE TO REPEATED, FREQUENT FAILURES

  故障原因: log超过了ext3文件系统最大支持容量2G导致,解决办法:

  1)每天轮循一次日志0 0 * * * /usr/local/squid/sbin/squid -k rotate

转自:http://hi.baidu.com/ncache/blog/item/661914102839c176cb80c444.html

以下为个人总结

一:报错信息:
FATAL:  Failed to verify one of the swap directories, Check cache.log
        for details.  Run 'squid -z' to create swap directories
        if needed, or if running Squid for the first time.
Squid Cache (Version 2.6.STABLE18): Terminated abnormally.
未执行squid -z命令需要执行该命令初始化cache目录,假如想观察这个过程 squid -zX

Creating Swap Directories
FATAL: Failed to make swap directory /usr/local/squid/var/cache/00:
    (13) Permission denied
确认/usr/local/squid/var/cache目录的所有组成都可被squid.conf给定的用户ID访问

二:

WARNING:squidaio_queue_request: WARNING - Queue congestion

IO的队列满了, ,重谝一下源代码,加大IO的队列或换一种IO方式。

编译时:--enable-async-io=40 (我的是40,少了)

三:

helperOpenServers: Starting 5 'dnsserver' processes
ipcCreate: fork: (12) Cannot allocate memory
WARNING: Cannot run '/opt/squid/libexec/dnsserver' process.

系统内存被耗光,没有内存分配给squid的dns进程

四:

FATAL: xcalloc: Unable to allocate 1 blocks of 4108 bytes!

Squid 开启大内存导致进程内存溢出

五:

cache.log
2009/08/27 20:49:55| HTCP Disabled.
2009/08/27 20:49:55| sendto FD 17: (1) Operation not permitted
2009/08/27 20:49:55| ipcCreate: CHILD: hello write test failed
????

cu的朋友总结是configure时编译了--enable-icmp参数,去掉即可。

六:

commBind: Cannot bind socket FD 17 to *:80: (98) Address already in use
FATAL: Cannot open HTTP Port

这个消息出现在bind()系统调用失败时,,因为请求端口已经被其他们应用程序所打开..通常,,若已有一个squid在运行,而又试图启动第2个squid实例,就会发生这种情况..假如你们见到这个错误消息,请使用ps来观察是否squid已经在运行..
Squid 使用SO_REUSEADDR socket选项,,以便bind()调用总能成功,,即使仍有一些残余(的)socket位于TIME_WAIT状态..若该消息出现,,尽管 squid没有在运 行,,但你们(的)操作系统可能在处理这个问题上有bug..重启操作系统是解决问题(的)一个方法..
squid运行时间长了  系统bug?

Squid故障的更多相关文章

  1. squid故障汇总

    1.COSS will not function without large file support (off_t is 4 bytes long. Please reconsider recomp ...

  2. centos samba/squid 配置 samba配置 smbclient mount fstab自动挂载samba curl -xlocalhost:3128 www.qq.com squid配置 3128 DNSPOD 第二十七节课

    centos  samba/squid 配置  samba配置 smbclient  mount fstab自动挂载samba curl -xlocalhost:3128 www.qq.com squ ...

  3. web cache server方案比较:varnish、squid、nginx

    linux运维中,web cache server方案的部署是一个很重要的环节,选择也有很多种比如:varnish.squid.nginx.下面就对当下常用的这几个web cache server做一 ...

  4. Squid服务日志分析

    Squid服务日志分析 Apache 和 Squid 是两种著名的代理缓存软件,但Squid 较 Apache 而言是专门的代理缓存服务器软件,其代理缓存的功能强大,支持 HTTP/1.1 协议,其缓 ...

  5. 使用Varnish代替Squid做网站缓存加速器的详细解决方案----转载

    [文章作者:张宴 本文版本:v1.2 最后修改:2008.01.02 转载请注明出处:http://blog.s135.com] 我曾经写过一篇文章──<初步试用Squid的替代产品──Varn ...

  6. Squid 反向代理加速网站

    本实例的域名是 wenjin.cache.ibm.com.cn,通过DNS的轮询 技术,将客户端的请求分发给其中一台 Squid 反向代理服务器处理,如果这台 Squid 缓存了用户的请求资源,则将请 ...

  7. varnish和squid的对比

    Varnish与Squid的对比  说到Varnish,不能不提Squid,Squid是一个高性能的代理缓存服务器,它和varnish之间有诸多的异同点,这里分析如下:  下面是他们之间的相同点:   ...

  8. CentOS 6.4下Squid代理服务器的安装与配置,反向代理

    CentOS 6.4下Squid代理服务器的安装与配置 一.简介 代理服务器英文全称是Proxy Server,其功能就是代理网络用户去取得网络信息. Squid是一个缓存Internet 数据的软件 ...

  9. Vanish/squid

    http://www.yl1001.com/article/5291411898652918.htm HTTP加速 简单的说,在本次测试中,Varnish将来自80的请求转发到后端的nginx8080 ...

随机推荐

  1. [BC]BestCoder Round#86小结

    1001 [题意] 给定一个长度为n(n<=100000)的正整数序列,给出m(m<=100000)个子集合和的记录,问哪些一定比正确的记录多了 [题解] 对正整数序列求和,记录比和大的一 ...

  2. PHP之implode与explode函数讲解

    implode (PHP 4, PHP 5) implode — 将一个一维数组的值转化为字符串 说明¶ string implode ( string $glue , array $pieces ) ...

  3. jsp的常用指令有哪些(编译指令/动作指令整理)

    jsp的常用指令有哪些(编译指令/动作指令整理) JSP动作指令 JSP - JSP中的脚本.指令.动作和注释

  4. Even Fibonacci numbers

    --Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting ...

  5. C# 使用TimeSpan计算两个时间差

    转载:http://www.cnblogs.com/wifi/articles/2439916.html 可以加两个日期之间任何一个时间单位. private string DateDiff(Date ...

  6. 深入浅出Java并发包—锁机制(二)

    接上文<深入浅出Java并发包—锁机制(一)  >  2.Sync.FairSync.TryAcquire(公平锁) 我们直接来看代码 protected final boolean tr ...

  7. XCODE 出现 The operation couldn't be completed.(LaunchServicesError error 0.)错误修复

    XCODE 出现 The operation couldn't be completed.(LaunchServicesError error 0.)错误修复   XCODE 出现 The opera ...

  8. 朴素贝叶斯方法(Naive Bayes Method)

        朴素贝叶斯是一种很简单的分类方法,之所以称之为朴素,是因为它有着非常强的前提条件-其所有特征都是相互独立的,是一种典型的生成学习算法.所谓生成学习算法,是指由训练数据学习联合概率分布P(X,Y ...

  9. Error building Player: Win32Exception: ApplicationName=‘xxxxxxxxxxxxxxxxxx//sdk\tools\zipalign.exe' , CommandLine='4 的解决办法

    更新了安卓SDK后,有时候Unity编译失失败,报错类似 Error building Player: Win32Exception: ApplicationName='D:/Program File ...

  10. C语言指针的概念

    在计算机中,所有的数据都是存放在存储器中的.一般把存储器中的一个字节称为一个内存单元,不同的数据类型所占用的内存单元数不等,如整型量占2个单元,字符量占1个单元等,在前面已有详细的介绍.为了正确地访问 ...