マシンスペックには制限は特にありませんが、Squidにとって最も重要なリソースはメモリです。 次にディスクのスペックも性能に影響を与えるでしょう。ディスクは可能であればIDEではなくSCSIが良いでしょう。 CPU性能はそれほど要求しません。 1998年現在、私なら以下のスペックを推奨するでしょう。
- 300 MHz Pentium II CPU
- 512 MB RAM
- 9 GB以上の UW-SCSI ディスク
squidを実行を起動するには、最初にsquid.confという設定ファイルに各種の情報を設定する必要があります。 squid.conf で設定できる全項目に関しては
squid.conf(squid2)詳細または
squid.conf(squid3)詳細を参考にしてください。取り敢えず動けば良いのであれば「
最小限の設定を行う」を参考にしてください。
なお、squid.conf がどこにあるか判らない場合は
# find / -name squid.conf [Enter]
で検索してみてください。
ソースファイルからsquidをインストールした場合、squid.confの設定が完了したなら設定した内容に基づいてsquidのキャッシュエリアを確保します。
キャッシュエリアの確保は以下のコマンドを入力します。 なお確保に先立ち、キャッシュディレクトリが「cache_effective_user」で指定したユーザの権限で書き込みできるようにしておく必要があります。
# squid -z [Enter]
上記コマンドを実行することでsquidで利用するキャッシュディレクトリが作成されます。なお、Redhat(CentOS)やDebia(Ubuntu)などでパッケージを使いsquidをインストールした場合には、インストール時に自動的にキャッシュが作られるようになっているので、手動でキャッシュを作成する必要はありません。
squidを起動するには
# /usr/local/squid/bin/RunCache & [Enter]
を実行すれば、このスクリプトによって起動されます。このスクリプトから起動された場合、なんらかの理由でsquidが終了してしまっても、再度、squidが自動的に起動されます。
# squid -k parse [Enter]
を実行してみてください。 もし、squid.confに構文エラーがあれば間違いを指示してきます。なにも出てこないなら、squid.confに構文のミスはありません。
また、squidを起動しようとしているマシンの名前がDNSに登録されているかも確認してください。
% nslookup 自分のマシン名 [Enter]
ex.)
nslookup proxy.robata.org
:::
Server: 192.168.0.254
Address: 192.168.0.254#53
Name: proxy.robata.org
Address: 192.168.0.2
良くあるミスに、logやキャッシュディレクトリが、Squidを起動したユーザの権限で書き込めないことがあります。
/var/log/messagesを確認してsquidがこれらのディレクトリのオープンに失敗していないか確認してみてください。
squidを起動するユーザは"cache_effective_user"で明示的に指定できます。
/etc/rc.d/init.d/squidファイルを次の内容で作成します。
#!/bin/sh
#
# This starts and stops squid proxy chache
#
# chkconfig: 345 90 42
# description: squid is Proxy server.
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
# Check that smb.conf exists.
[ -f /usr/local/squid/etc/squid.conf ] || exit 0 # See how we were called.
case "$1" in
start)
echo -n "Starting Squid services: "
/usr/local/squid/bin/RunCache &
echo
;;
stop)
echo -n "Shutting down Squid services: "
kill -9 `cat /usr/local/squid/logs/squid.pid`
echo
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: squid {start|stop|restart}"
exit 1
esac
作成後、実行属性を与えます。
# chmod +x /etc/rc.d/init.d/squid [Enter]
また、以下のコマンドを入力して、各ランレベルで上記のスクリプトが実行されるようにしえおきます。
# chkconfig --add squid [Enter]