Debianで使う
5年以上もの間、24時間365日動き続けていたHDDがついに壊れたので、 HDD交換のついでに ssdlinux から Debian に変えて運用してみる。
基本的なインストール方法は、ぷらっとホームのサポートページの「Debian/GNU Linux」でHDDイメージの配布と手順の説明がある
client code page = 932 coding system = EUCとなっていたのを
dos charset = CP932 unix charset = eucJP-ms display charset = CP932としたら日本語ファイル名が化けなくなった
sshを多段しないと到達できないホストと rsync や scp 等でファイルをやり取りする必要があるときは、以下のようにすればよい。
たとえば、foo.example2.jp に接続したいが、bar.example1.jp を経由しなければ到達できない場合、~/.ssh/config に以下を加える。
Host foo.example2.jp ProxyCommand /usr/bin/connect-proxy -S localhost:8090 %h %p
connect-proxy コマンドが無いときは apt-get install connect-proxy する。
自サーバーを bar.example1.jp への SOCKS サーバーにする
ssh -N -f -D8090 bar.example1.jp
この後、ssh foo.example2.jp とすれば、bar.example1.jp を経由していることを意識する必要がなくなる。rsync や scp で直接ファイルをやり取りすることも可能。
ログアウトするときは、先に SOCKS サーバーを止めないとログアウトできなくなるので注意。
Debianに変えた理由のひとつにIPv6で使ってみたい、というのがある。 西日本のフレッツ網内でしか通用しないが、会社と自宅のサーバーを相互に アクセスするためには、ルーターにアドレス・フィルタを設定するだけなので、 手軽に使える。*1
OpenBlockS266にpostfixを設定して動かしてみると、IPv6のsmtpポートでも接続を
受け付けていることが判明。会社の同じ Debian etchのサーバーはIPv6でsmtpの
待ちうけができないので、postfixのバージョンによってできないのだと思っていたが、
そうではないようだ。設定ファイルに大きな違いはなさそうなので不思議だ。
【後日談】何のことはない、OpenBlockS266の /etc/postfix/main.cf には inet_protocols = all が指定してあるので、IPv6でも待ち受けできているだけのことだ。ipv6が有効だと送信にもIPv6での接続を試みるのだが、会社のサーバーの場合フレッツ網との切り替えがうまくいかないので有効にできないのであった。
ホスト名をIPv6アドレスに変換する適当な方法が無いので、hostsに書き加えるという原始的な方法でごまかしている。私しか使わない接続なのでそれでもなんとかなる。ウイルス・チェッカによってはhostsを書き換えるとアラートが出るので注意。
IPv6アドレスをそのままhostsに書くというのは、プライベートな用途なら問題ないが、少し大きな用途になるとかなり問題になるはずだ。MACアドレスを含むのでサーバーの故障などで機材交換になったときや、回線の都合でISP等のアドレス提供者が変更になった場合は、サーバーのアドレスが変わってしまう。小規模な閉鎖ネットワークではanycastなDNSサーバー*2を用意するのも現実的ではない。
/etc/apt/source.list を
deb http://ftp.jp.debian.org/debian/ etch main contrib non-free deb-src http://ftp.jp.debian.org/debian/ etch main contrib non-free deb http://security.debian.org/ etch/updates main contrib non-free deb-src http://security.debian.org/ etch/updates main contrib non-free
というようにして、aptitude update した後、
apt-get build-dep hello
とすれば、hello worldをセルフ・コンパイルするためのコンパイラやらライブラリを一発でインストールしてくれる。
build-essentialというパッケージをインストールするのもよい。
ログを調べるのに毎回 sudo するか、専用のコンソールを開いて sudo -i しておいて放置しておき、ログを見る場合はそのコンソールを使うなどしていたが、adm group に属していれば、通常のユーザーのままで見ることができる。
sudo /usr/sbin/usermod -G adm otsuka
とやって、一旦ログアウトしてからログインし、id コマンドで adm に属していることを確認。すでに複数の group に属しているときは、usermod の -G オプションでカンマを使って既存の全てのグループを書かなければならないので注意。 自分が属している group は id -nG で出るので、これを,(カンマ)でつないで
sudo /usr/sbin/usermod -G adm,cdrom,audio,video,powerdev,fuse otsuka
などとする。
ここに記載されている内容を実際に運用した場合のトラブルに関しては一切責任を負えませんのでご了承ください。
Copyright 2000-2011 Koichi Otsuka