Squid 代理服务器错误:启动时

Squid 代理服务器错误:启动时

我在使用命令启动 Squid 代理服务器时收到此错误sudo squid -z

fatal: ipc::mem::segment::create failed to shm_open(/squid-cf__metadata.shm): 13 permission denied

我该如何修复它?我使用的是 Squid 3.5.26 版本。我尝试实施在网上找到的以下修复:

 Just add the following line to your /etc/fstab file: 
 shm /dev/shm tmpfs nodev,nosuid,noexec 0 0 
 After that use (as root): 
 # mount shm 

不幸的是,它不起作用。网络上另一个可能的修复是读取squid.pid时出错

 squid: ERROR: Could not read pid file
 /var/run/squid.pid: (13) Permission denied

不幸的是,当我查看目录时,我找不到squid.pid.我如何让我的 Squid 工作?谢谢。

答案1

squid使用了错误的用户运行,这创建了具有错误权限的文件。

鱿鱼:错误:无法读取 pid 文件

你需要运行sudosudo squid

致命: ipc::mem::segment::create 无法 shm_open(/squid-cf__metadata.shm):13 权限被拒绝

您需要删除 Squid 的.shm文件/dev/shm或分配正确的权限。

$ sudo rm -v /dev/shm/squid*.shm

还要确保:

  • Squid 的日志目录 ( /var/log/squid?) 由正确的用户 (?) 拥有proxy
  • Squid 的缓存目录 ( /var/spool/squid?) 由正确的用户拥有。

有关完整示例,请检查以下 Docker 容器:sameersbn/docker-squid

相关内容