LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1021|回复: 13

更新系统后,squid代理发生 backtrace, free()错误, proxy - (已解决)

[复制链接]
发表于 2008-5-18 12:26:43 | 显示全部楼层 |阅读模式
本来squid都能运行的,squid2.6.2 和 squid3都好,
后来,运行了emerge -avuDN world, 更新系统了,
然后再emerge squid, squid2.6.2 和 squid3都发生同样错误,不能使用。

  1. boot # squid -z
  2. *** glibc detected *** squid: free(): invalid next size (fast): 0x082ba770 ***
  3. ======= Backtrace: =========
  4. /lib/libc.so.6[0xb7d2c3b6]
  5. /lib/libc.so.6(cfree+0x89)[0xb7d2e029]
  6. squid[0x80c79c4]
  7. squid[0x80c7b3b]
  8. squid[0x80a1ff0]
  9. squid[0x80a349e]
  10. /lib/libc.so.6(__libc_start_main+0xe0)[0xb7cdb400]
  11. squid(i2d_SSL_SESSION+0x359)[0x804c5e1]
  12. ======= Memory map: ========
  13. 08048000-0811f000 r-xp 00000000 03:08 42460537   /usr/sbin/squid
  14. 0811f000-08120000 r--p 000d6000 03:08 42460537   /usr/sbin/squid
  15. 08120000-08122000 rw-p 000d7000 03:08 42460537   /usr/sbin/squid
  16. 08122000-082c6000 rw-p 08122000 00:00 0          [heap]
  17. b7b00000-b7b21000 rw-p b7b00000 00:00 0
  18. b7b21000-b7c00000 ---p b7b21000 00:00 0
  19. b7c88000-b7c92000 r-xp 00000000 03:08 67176768   /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcc_s.so.1
  20. b7c92000-b7c93000 r--p 00009000 03:08 67176768   /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcc_s.so.1
  21. b7c93000-b7c94000 rw-p 0000a000 03:08 67176768   /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcc_s.so.1
  22. b7c94000-b7ca5000 r-xp 00000000 03:08 8513299    /lib/libz.so.1.2.3
  23. b7ca5000-b7ca6000 r--p 00010000 03:08 8513299    /lib/libz.so.1.2.3
  24. b7ca6000-b7ca7000 rw-p 00011000 03:08 8513299    /lib/libz.so.1.2.3
  25. b7ca7000-b7cb0000 r-xp 00000000 03:08 101200308  /lib/libnss_files-2.7.so
  26. b7cb0000-b7cb1000 r--p 00008000 03:08 101200308  /lib/libnss_files-2.7.so
  27. b7cb1000-b7cb2000 rw-p 00009000 03:08 101200308  /lib/libnss_files-2.7.so
  28. b7cb2000-b7cba000 r-xp 00000000 03:08 101440792  /lib/libnss_nis-2.7.so
  29. b7cba000-b7cbb000 r--p 00007000 03:08 101440792  /lib/libnss_nis-2.7.so
  30. b7cbb000-b7cbc000 rw-p 00008000 03:08 101440792  /lib/libnss_nis-2.7.so
  31. b7cbc000-b7cc2000 r-xp 00000000 03:08 101440794  /lib/libnss_compat-2.7.so
  32. b7cc2000-b7cc3000 r--p 00005000 03:08 101440794  /lib/libnss_compat-2.7.so
  33. b7cc3000-b7cc4000 rw-p 00006000 03:08 101440794  /lib/libnss_compat-2.7.so
  34. b7cc4000-b7cc5000 rw-p b7cc4000 00:00 0
  35. b7cc5000-b7df4000 r-xp 00000000 03:08 101440769  /lib/libc-2.7.so
  36. b7df4000-b7df6000 r--p 0012e000 03:08 101440769  /lib/libc-2.7.so
  37. b7df6000-b7df7000 rw-p 00130000 03:08 101440769  /lib/libc-2.7.so
  38. b7df7000-b7dfa000 rw-p b7df7000 00:00 0
  39. b7dfa000-b7e0d000 r-xp 00000000 03:08 101440791  /lib/libnsl-2.7.so
  40. b7e0d000-b7e0e000 r--p 00012000 03:08 101440791  /lib/libnsl-2.7.so
  41. b7e0e000-b7e0f000 rw-p 00013000 03:08 101440791  /lib/libnsl-2.7.so
  42. b7e0f000-b7e11000 rw-p b7e0f000 00:00 0
  43. b7e11000-b7e34000 r-xp 00000000 03:08 101200278  /lib/libm-2.7.so
  44. b7e34000-b7e35000 r--p 00022000 03:08 101200278  /lib/libm-2.7.so
  45. b7e35000-b7e36000 rw-p 00023000 03:08 101200278  /lib/libm-2.7.so
  46. b7e36000-b7e37000 rw-p b7e36000 00:00 0
  47. b7e37000-b7e4b000 r-xp 00000000 03:08 101440768  /lib/libpthread-2.7.so
  48. b7e4b000-b7e4c000 r--p 00013000 03:08 101440768  /lib/libpthread-2.7.so
  49. b7e4c000-b7e4d000 rw-p 00014000 03:08 101440768  /lib/libpthread-2.7.so
  50. b7e4d000-b7e4f000 rw-p b7e4d000 00:00 0
  51. b7e4f000-b7e56000 r-xp 00000000 03:08 101200310  /lib/librt-2.7.so
  52. b7e56000-b7e57000 r--p 00006000 03:08 101200310  /lib/librt-2.7.so
  53. b7e57000-b7e58000 rw-p 00007000 03:08 101200310  /lib/librt-2.7.so
  54. b7e58000-b7e5a000 r-xp 00000000 03:08 101200282  /lib/libdl-2.7.so
  55. b7e5a000-b7e5b000 r--p 00001000 03:08 101200282  /lib/libdl-2.7.so
  56. b7e5b000-b7e5c000 rw-p 00002000 03:08 101200282  /lib/libdl-2.7.so
  57. b7e5c000-b7f89000 r-xp 00000000 03:08 50331815   /usr/lib/libcrypto.so.0.9.8
  58. b7f89000-b7f91000 r--p 0012c000 03:08 50331815   /usr/lib/libcrypto.so.0.9.8
  59. b7f91000-b7f9e000 rw-p 00134000 03:08 50331815   /usr/lib/libcrypto.so.0.9.8
  60. b7f9e000-b7fa2000 rw-p b7f9e000 00:00 0
  61. b7fa2000-b7fe1000 r-xp 00000000 03:08 50331818   /usr/lib/libssl.so.0.9.8
  62. b7fe1000-b7fe2000 r--p 0003e000 03:08 50331818   /usr/lib/libssl.so.0.9.8
  63. b7fe2000-b7fe5000 rw-p 0003f000 03:08 50331818   /usr/lib/libssl.so.0.9.8
  64. b7fe5000-b7fee000 r-xp 00000000 03:08 101200285  /lib/libcrypt-2.7.so
  65. b7fee000-b7fef000 r--p 00008000 03:08 101200285  /lib/libcrypt-2.7.so
  66. b7fef000-b7ff0000 rw-p 00009000 03:08 101200285  /lib/libcrypt-2.7.so
  67. b7ff0000-b8018000 rw-p b7ff0000 00:00 0 Aborted
复制代码

----------------------------------------
解决办法:
这是一个bug,见http://bugs.gentoo.org/show_bug.cgi?id=223051,
squid 不支持>=sys-kernel/linux-headers-2.6.25,
所以这样解决问题
emerge =sys-kernel/linux-headers-2.6.24  //安装2.6.24的headers
emerge squid                          //安装squid,(不管以前系统里有没有squid都没关系,因为是重新编译的)
emerge sys-kernel/linux-headers         //安装现在的headers,也就是最近的headers(我的是linux-headers-2.6.25-r3), 这以后不要再执行emerge squid,否则又恢复到原来的 Backtrace 问题了。(等bug修复了,才能执行emerge squid哦)
 楼主| 发表于 2008-5-18 12:28:36 | 显示全部楼层
怀疑是某个lib发生了问题。但找不到。
没准还得把glibc包降下来
回复 支持 反对

使用道具 举报

发表于 2008-5-18 14:54:10 | 显示全部楼层
都升级了那些包?
revdep-rebuild 做过了吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-18 15:02:06 | 显示全部楼层
Post by zhou3345;1851375
都升级了那些包?
revdep-rebuild 做过了吗?


还没做revdep-rebuild
系统的包都升级了,
现在运行emerge -pv system 显示都空了。
回复 支持 反对

使用道具 举报

发表于 2008-5-18 15:20:15 | 显示全部楼层
请用revdep-rebuild修复升级导致的错误依赖关系。
如果找不到revdep-reuild命令,请先 emerge gentoolkit
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-18 15:41:58 | 显示全部楼层
Post by zhou3345;1851389
请用revdep-rebuild修复升级导致的错误依赖关系。
如果找不到revdep-reuild命令,请先 emerge gentoolkit




谢谢。
我补充一下我的问题: 以前安装好gentoo(内核是2.6.25-gentoo-r3的),emerge安装了squid2.6的版本,运行squid -z  ----> squid 正常的。 (因为是新手新安装的gentoo,所以手痒想测试所有碰到的操作,所以...)昨天就开始更新系统:
    emerge --sync
    emerge -avuDN world
更新完毕,squid2.6还是能运行的,知道现在有squid3.的稳定版,就想试试,所以
    emerge squid
升级squid到3版, 配置好后,就建立squid的缓冲运行 squid -z 出现这样的错误; 然后降回到squid2.6
    emerge -C squid
    emerge "<squid3"
安装完2.6配置好,运行squid -z 还是出现这样的错误,直接运行squid也是这样的错误.

------------
今天经楼上兄弟指导运行revdep-rebuild, 还是一样的错误现象;
下面是重启动第二次运行revdep-rebuild的结果,好像没问题:

  1. gtnature sys-apps # revdep-rebuild
  2. * Configuring search environment for revdep-rebuild

  3. * Checking reverse dependencies
  4. * Packages containing binaries and libraries broken by a package update
  5. * will be emerged.

  6. * Collecting system binaries and libraries
  7. * Generated new /root/.revdep-rebuild.1_files

  8. * Collecting complete LD_LIBRARY_PATH
  9. * Generated new /root/.revdep-rebuild.2_ldpath

  10. * Checking dynamic linking consistency
  11. [ 100% ]                 

  12. * Dynamic linking on your system is consistent... All done.
  13. gtnature sys-apps # squid -z
  14. *** glibc detected *** squid: free(): invalid next size (fast): 0x0832ef68 ***
  15. ======= Backtrace: =========
  16. /lib/libc.so.6[0xb7bdd3b6]
  17. /lib/libc.so.6(cfree+0x89)[0xb7bdf029]
  18. squid[0x8120078]
  19. squid[0x812067b]
  20. squid[0x8121180]
  21. squid[0x812141d]
  22. squid[0x8073ffe]
  23. squid[0x80e66dd]
  24. /lib/libc.so.6(__libc_start_main+0xe0)[0xb7b8c400]
  25. squid[0x804e011]
  26. ======= Memory map: ========
  27. 08048000-081c8000 r-xp 00000000 03:08 92740415   /usr/sbin/squid
  28. 081c8000-081c9000 r--p 0017f000 03:08 92740415   /usr/sbin/squid
  29. 081c9000-081cb000 rw-p 00180000 03:08 92740415   /usr/sbin/squid
  30. 081cb000-0834b000 rw-p 081cb000 00:00 0          [heap]
  31. b7a00000-b7a21000 rw-p b7a00000 00:00 0
  32. b7a21000-b7b00000 ---p b7a21000 00:00 0
  33. b7b0c000-b7b14000 r-xp 00000000 03:08 101440792  /lib/libnss_nis-2.7.so
  34. b7b14000-b7b15000 r--p 00007000 03:08 101440792  /lib/libnss_nis-2.7.so
  35. b7b15000-b7b16000 rw-p 00008000 03:08 101440792  /lib/libnss_nis-2.7.so
  36. b7b16000-b7b1c000 r-xp 00000000 03:08 101440794  /lib/libnss_compat-2.7.so
  37. b7b1c000-b7b1d000 r--p 00005000 03:08 101440794  /lib/libnss_compat-2.7.so
  38. b7b1d000-b7b1e000 rw-p 00006000 03:08 101440794  /lib/libnss_compat-2.7.so
  39. b7b1e000-b7b22000 r-xp 00000000 03:08 101200302  /lib/libnss_dns-2.7.so
  40. b7b22000-b7b23000 r--p 00003000 03:08 101200302  /lib/libnss_dns-2.7.so
  41. b7b23000-b7b24000 rw-p 00004000 03:08 101200302  /lib/libnss_dns-2.7.so
  42. b7b24000-b7b2d000 r-xp 00000000 03:08 101200308  /lib/libnss_files-2.7.so
  43. b7b2d000-b7b2e000 r--p 00008000 03:08 101200308  /lib/libnss_files-2.7.so
  44. b7b2e000-b7b2f000 rw-p 00009000 03:08 101200308  /lib/libnss_files-2.7.so
  45. b7b2f000-b7b72000 rw-p b7b2f000 00:00 0
  46. b7b72000-b7b74000 r-xp 00000000 03:08 101200282  /lib/libdl-2.7.so
  47. b7b74000-b7b75000 r--p 00001000 03:08 101200282  /lib/libdl-2.7.so
  48. b7b75000-b7b76000 rw-p 00002000 03:08 101200282  /lib/libdl-2.7.so
  49. b7b76000-b7ca5000 r-xp 00000000 03:08 101440769  /lib/libc-2.7.so
  50. b7ca5000-b7ca7000 r--p 0012e000 03:08 101440769  /lib/libc-2.7.so
  51. b7ca7000-b7ca8000 rw-p 00130000 03:08 101440769  /lib/libc-2.7.so
  52. b7ca8000-b7cab000 rw-p b7ca8000 00:00 0
  53. b7cab000-b7cb5000 r-xp 00000000 03:08 59598241   /usr/lib/gcc/i686-pc-linux-gnu/4.2.3/libgcc_s.so.1
  54. b7cb5000-b7cb6000 r--p 00009000 03:08 59598241   /usr/lib/gcc/i686-pc-linux-gnu/4.2.3/libgcc_s.so.1
  55. b7cb6000-b7cb7000 rw-p 0000a000 03:08 59598241   /usr/lib/gcc/i686-pc-linux-gnu/4.2.3/libgcc_s.so.1
  56. b7cb7000-b7cda000 r-xp 00000000 03:08 101200278  /lib/libm-2.7.so
  57. b7cda000-b7cdb000 r--p 00022000 03:08 101200278  /lib/libm-2.7.so
  58. b7cdb000-b7cdc000 rw-p 00023000 03:08 101200278  /lib/libm-2.7.so
  59. b7cdc000-b7dbc000 r-xp 00000000 03:08 59602753   /usr/lib/gcc/i686-pc-linux-gnu/4.2.3/libstdc++.so.6.0.9
  60. b7dbc000-b7dc0000 r--p 000df000 03:08 59602753   /usr/lib/gcc/i686-pc-linux-gnu/4.2.3/libstdc++.so.6.0.9
  61. b7dc0000-b7dc1000 rw-p 000e3000 03:08 59602753   /usr/lib/gcc/i686-pc-linux-gnu/4.2.3/libstdc++.so.6.0.9
  62. b7dc1000-b7dc7000 rw-p b7dc1000 00:00 0
  63. b7dc7000-b7dda000 r-xp 00000000 03:08 101440791  /lib/libnsl-2.7.so
  64. b7dda000-b7ddb000 r--p 00012000 03:08 101440791  /lib/libnsl-2.7.so
  65. b7ddb000-b7ddc000 rw-p 00013000 03:08 101440791  /lib/libnsl-2.7.so
  66. b7ddc000-b7ddf000 rw-p b7ddc000 00:00 0
  67. b7ddf000-b7ded000 r-xp 00000000 03:08 101200299  /lib/libresolv-2.7.so
  68. b7ded000-b7dee000 r--p 0000d000 03:08 101200299  /lib/libresolv-2.7.so
  69. b7dee000-b7def000 rw-p 0000e000 03:08 101200299  /lib/libresolv-2.7.so
  70. b7def000-b7df1000 rw-p b7def000 00:00 0
  71. b7df1000-b7e05000 r-xp 00000000 03:08 101440768  /lib/libpthread-2.7.so
  72. b7e05000-b7e06000 r--p 00013000 03:08 101440768  /lib/libpthread-2.7.so
  73. b7e06000-b7e07000 rw-p 00014000 03:08 101440768  /lib/libpthread-2.7.so
  74. b7e07000-b7e09000 rw-p b7e07000 00:00 0
  75. b7e09000-b7e10000 r-xp 00000000 03:08 101200310  /lib/librt-2.7.so
  76. b7e10000-b7e11000 r--p 00006000 03:08 101200310  /lib/librt-2.7.so
  77. b7e11000-b7e12000 rw-p 00007000 03:08 101200310  /lib/librt-2.7.so
  78. b7e12000-b7f3f000 r-xp 00000000 03:08 50331815   /usr/lib/libcrypto.so.0.9.8
  79. b7f3f000-b7f47000 r--p 0012c000 03:08 50331815   /usr/lib/libcrypto.so.0.9.8Aborted
  80. gtnature sys-apps # uname -r
  81. 2.6.25-gentoo-r3
复制代码
回复 支持 反对

使用道具 举报

发表于 2008-5-18 17:17:47 | 显示全部楼层
因为安装了很多个不同版本,因此建议把squid先完全卸载掉,再安装。另外把相关的配置文件也先删除掉。

另外问一下,你更新了glibc? 实在不行的话,发点狠,emerge -e system && emerge -e world,哈哈。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-18 17:33:30 | 显示全部楼层
Post by zhou3345;1851441
因为安装了很多个不同版本,因此建议把squid先完全卸载掉,再安装。另外把相关的配置文件也先删除掉。

另外问一下,你更新了glibc? 实在不行的话,发点狠,emerge -e system && emerge -e world,哈哈。


在我当时更新的时候,所有的包都更新了(包括glibc)
哈哈, 我也是这么想啊, 反正在找有问题的lib, 如果还是弄不好,就下刀子了,呵呵。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-19 09:57:09 | 显示全部楼层
emerge -e system后还是不行,估计新的lib和squid不和啊, 只有改用3proxy了。
还支持sock4/5
回复 支持 反对

使用道具 举报

发表于 2008-5-19 12:41:20 | 显示全部楼层
要-e world
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表