Squid
Squid
自体の説明やインストール方法は割愛します。バージョンはVersion 3.5.12
です。
cache_dir を設定したら接続に失敗する
/etc/squid/squid.conf
を編集して*1、cache_dir
を有効にしたら接続に失敗した場合の対処法です。
結論
squid -z
を実行する。
説明
後述するようにsquid -z
を実行すると指定した場所の配下に必要なディレクトリを作ってくれます。その後、再起動をして接続すれば接続に失敗しません。ただし私の場合は、当該階層のディレクトリまで予め作ってあげて、かつ、権限を付与してあげないとダメでした。これが全ての環境に当てはまるかは分かりません。
具体例
具体的な例は以下のとおりです。まず、下記のようにsquid.conf
に記述したとします。
cache_dir ufs /var/spool/squid 1024 16 256
これで単にSquid
を再起動しただけだとつながりません。squid -z
する必要があります。ただしその際には/var/spook/squid
を作ってあげないといけません。すなわち以下のようになります。権限の部分は余計かもしれません。
$ sudo mkdir /var/spook/squid $ sudo chmod 777 /var/spook/squid
この後にsquid -z
してやると必要なディレクトリを作ってくれます。
$ sudo squid -z 2017/04/23 09:50:59 kid1| Set Current Directory to /var/spool/squid 2017/04/23 09:50:59 kid1| Creating missing swap directories 2017/04/23 09:50:59 kid1| /var/spool/squid exists 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/00 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/01 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/02 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/03 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/04 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/05 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/06 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/07 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/08 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/09 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/0A 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/0B 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/0C 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/0D 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/0E 2017/04/23 09:50:59 kid1| Making directories in /var/spool/squid/0F
Squid
を再起動してあげればディスクキャッシュが有効になった状態で接続できているはずです。
*1:Ubuntu 16.04 LTS の場合の設定ファイルの場所です