2007年07月07日

パーティションラベルによるマウント方法

通常Debianを含むLinuxにおいてパーティションをマウントする場合、

/dev/hda1     /anime     ext3   defaults   1 2
と言った形でデバイスを直接指定しますが、ラベルで指定する方法も可能。

この方法を取る理由として、テラタワーだと再起動する毎に認識する順番が変わることがあるという点。基本的には上から順番に認識するようですが、それでも順番が変わることがあるのは事実。ラベルで指定してやれば認識の順番がずれたところで問題なし。ということで、簡単にやり方を記載。と言うか、自分用の備忘録(笑。

やり方としては、

e2label   /dev/hda1   /anime
とパーティションに対してラベル付けを行い、/etc/fstabに以下のように記述。
LABEL=/anime     /anime     ext3   defaults   1 2

としてやればOK。

2007年05月23日

ProFTPD 日本語表示

link caption玄箱にProftpdをインストール - 喫茶『かくれ家』
link captionProFTPD iconv() 文字コード変換パッチ

Debian4.0に標準で入ってるProFTPDの場合、普通に使う分には問題無いものの、日本語というよりはマルチバイト文字を使おうとするとどうしても文字化けする。仲間内でいろんなファイルを共有しようと思うとどうしてもマルチバイトを使用せざるを得ないってとこですなー。

というわけで、ProFTPDのマルチバイト対応を頑張ってみますかな。

上記のために参考にしたのがこのサイト。玄箱に関して書かれていますが一般的なDebianでもやり方は同様。

先ずはtelnetでDebianにログインし「su」でroot権限に移行しておく。「sudo」でも良いっちゃいいですけどね。

先ずは現状入ってるProFTPD他をアンインストール。Webminでの設定用モジュールも不要につき削除。

# aptitude purge proftpd proftpd-common webmin-proftpd

んでもって、ソースからコンパイルする必要があるためgccが必要。ついでにg++も必要。あと、パッチを当てるためにpatchも。
# aptitude update
# aptitude install gcc g++ patch

んでもって、ProFTPDのソースを入手。正式最新版は1.3.0aっぽいのでそれを入手。1.3.1系はまだRC版のようですし、パッチは1.3系のやつしかないので何れにしろ1.3.1を使用するのは不可能。ついでに1.3用のパッチもげと。
# wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.0a.tar.gz
# wget http://www.hakusan.tsg.ne.jp/tjkawa/software/misc/proftpd-iconv/pack/proftpd-1.3.0-iconv.patch.gz

パッチ及び本体を解答。
# gzip -d proftpd-1.3.0-iconv.patch.gz
# tar zxvf proftpd-1.3.0a.tar.gz

んでもって、proftpd-1.3.0-iconv.patchをちょっと編集。1.3.0となっている部分を全て1.3.0aに変更する。これは必須かどうかは不明な物の、変更すればとりあえず実行できたのでオーライ、と。ついでに、分かりやすくするためにもファイル名を「proftpd-1.3.0-iconv.patch」→「proftpd-1.3.0a-iconv.patch」に変更しておこう。

以下、パッチを当ててコンフィグ、メイク、インストールを実行。

# patch -p0 < proftpd-1.3.0a-iconv.patch
# cd proftpd-1.3.0a
# ./configure --prefix=/usr/local --enable-ipv6 --enable-sendfile --with-modules=mod_codeconv:mod_df
# make
# make install

ProFTPDをinetdで立ち上げるかstandaloneで立ち上げるかの選択で、inetdを選択。で、必要に応じてファイルを編集。
# vi /etc/inetd.conf
  ftp stream tcp nowait root /usr/sbin/tcpd /usr/local/sbin/proftpd
# vi /etc/hosts.allow
  proftpd : ALL
# /etc/init.d/openbsd-inetd restart

まぁ、ざっとこんなところかな?もちっといろいろ編集するととこもあったかも?まぁ、思い出せないんでこの辺にしとこう。

link captionANIMANIA -The Maniacs of Animations- » Blog Archive » 持ってたらある意味漢

2006年12月22日

Debian コマンドメモ

  • NTPの再起動:
    # /etc/init.d/ntp restart
  • Apacheの再起動:
    # /etc/init.d/apache restart
  • APTの更新リストを最新版に:
    # aptitude update
  • APTによるアップグレード:
    # aptitude upgrade
  • APTのキャッシュを削除:
    # aptitude clean
  • HDDの状態確認:
    # aptitude update
    # aptitude install hdparm
    # hdparm -d1 /dev/hda /dev/hdb /dev/hdc /dev/hdd

2006年12月02日

APTの警告対策

現在サーバマシンにDebian 4.0(通称Etch、現在はTesting扱い)を使用中。まだStableに移行する前だけあって、何かと更新が多い。で、ここ最近なんだか

# aptitude update
取得:1 http://ftp.riken.go.jp etch Release.gpg [378B]
 ~略~
2B を 1s 秒でダウンロードしました (2B/s)
パッケージリストを読み込んでいます... 完了
W: 以下の鍵 ID に対して利用可能な公開鍵がありません:
A70DAF536070D3A1
W: これらの問題を解決するためには apt-get update を実行する必要があるかもしれません
なんて言うワーニングが出るようになった。「apt-get update を実行する必要があるかもしれません」と書かれても同じ事をやってワーニングが出ている以上実行しても意味はない…と。んで、ちょこちょこ調べてみると当方だけの現象ではなく、各所で話題になっているようですね。どうも公開鍵がらみの問題らしい。


で、探してみたら対処法そのものずばりの解決法が掲載されていたのでそれをを紹介。

# gpg --keyserver pgp.mit.edu --recv-keys A70DAF536070D3A1
# gpg --armor --export 6070D3A1 | apt-key add -
でOK。
# aptitutde update
を実行してワーニングが出ないことを確認できればこれで終了。出たら、、、対処法は分かりません(ぉぃ。


その他下記リンク先に詳細な解説が掲載されていますので、単純な対処だけではなくどうゆう仕組みかも理解したい人は一読の価値あり!ちなみに「玄箱:Etch」に関してかかれていますが、通常のPCにインストールするEtchにも有効です。ちなみに当方は64bit版のEtchを使用中。てか、64bit版と32bit版て別れてたっけ?ちょい忘れた…。

[参考にしたサイト]
link caption気長に日記: aptでつかう公開鍵の更新(玄箱:etch)

2006年11月30日

HDDの容量がー!

自宅サーバのHDDの容量がやばい!ルートに2GB程割り当ててたんで余程の事がなければ問題無いだろうなーと思っていたのですが、いつのまにか空き領域が数パーセントに…。特にでかいファイルを置いたわけでもないのになんでだろなー、、、と思っていたんでちょい調査。

# du -sh /*/
これでディレクトリ毎の使用領域を調査。どうにも /var/ ディレクトリに大量のデータが。
# du -sh /var/*/
で再調査。今度は /var/cache/ がでかそう。さらに同様に
# du -sh /var/cache/*/
とすると /var/cache/apt/ がでかい。


ちょろ~んと調べてみたところapt(aptitude)でアップデートした場合、1度データをローカルにキャッシュした上でインストールが行われるらしい。てことで、そのDLしてきたキャッシュが大量に残っていたって事ですなー。その容量なんと500MB超!そりゃ全領域2GBのうち不要なキャッシュで500MBも喰われたら一杯一杯だわ!てことで、削除する方法を探してみると、

# apt-get clean
で一括クリーン計画!これでまー暫く問題ないっしょぅ、多分。また圧迫されてきたら同じ事を繰り返せば大丈夫かな?

2006年10月21日

NTPで自動で時計を合わせる

link captionDebianサーバ 時計を自動で合せる
link captionntpで時計合わせ - Linux Home Server Memo - 自宅サーバ

コンピュータに内蔵している時計は狂いやすく、時計を定期的に合わせてやらないと気づいたときには数分ずれている、、、なんてことも多々あります。特に、当方がファイル置き場として私用している玄箱はかなりいい加減な時計で1ヶ月程度放置していると30分以上ずれてるなんてコトもあります。さすがにこれじゃぁ、問題があると言うことでntpを用いて自動で時計を合わせる方法を紹介。

ntpによる一般的な時刻調整の方法としては以下の2つが挙げられる(多分。他に方法があるのであれば、ご教示願いたい。

  • ntpdateをcronで定期的に動かす
  • ntpdデーモンで常に正確に保つ
上記の2つのリンクにおいて、上の方はntpdデーモンを常駐させておく方法、下の方はntpdateをcronで回す方法となっています。いろいろ調べてみるとセキュリティ面ではntpdateをcronで回す方が良さそうですが、この方法だと欠点が一つ、、、ntpdデーモンは徐々に時間を補正して正確にな時刻に調整するのに対して、ntpdateは(0.5秒以上ズレていると)すぐに時刻が修正されるという点。つまりは時間が飛ぶわけですね。

ま、定期的にntpdaeを実行するようにスケジューリングしておけば大きな差異は出ないでしょうから、それほど問題はないのかもしれません。

2006年09月29日

Debianサーバ 構築メモ インストール~初期設定

CDブートからのインストールで基本的には問題なし。

ただし、パッケージの選択時何も選ばないorマニュアル以外を選んでインストールを続けようとすると何故かエラーが出る…。あまり気持ちの良いものじゃないので無理栗回避方法を。いや、後から何とかできるならそれにこしたことはないのですが、当方には無理です(涙。

回避方法としては、「manual」を選択してセットアップを続行→その後「q」を押してマニュアルインストール中断。これでまぁ、エラーは出ません。てか、単に強制的にいんすとーるを中断させただけのような気がしますが今のところ問題なく動いているのでよしとしましょう(ぉぃ。

この時点では各モジュールが最新のものではないので、それのアップデートをば。

# aptitude update
# aptitude upgrade
----------
この段階でtelnetはインストールされていない。セキュリティ上はSSHを導入するのが正しいのでしょうが当方の知識では残念ながらそこまでいってない。おいおい何とかしようとは考えていますが。とりあえず、他のマシンからアクセスできるようにtelnetを入れておくとする。
# aptitude update
# aptitude install telnetd
これだけでは自分のマシン以外からtelnetを受け付けない設定になっている。それだとほとんど意味はないのでLAN内の他のマシンからも接続できるように変更。
#vi /etc/hosts.allow
ALL: 127.0.0.1
ALL: 192.168.0.
と言った行を追加または変更する。

----------
ネットワークインストールの場合、Pアドレスは動的に割り当てられており(他のインストール方法は試していないので不明)、サーバとして運用するにはあまり都合の良いことではない。インストール時選択することができなかったので強制的に動的IPに設定されるのだろう、多分。というわけで、性的静的IPに変更しておく。いろいろ考えるのが面倒だったので、以下の通り"interfaces"の内容を全変更ということで(ぉぃ。

# vi /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.0.10
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1

各人の環境に併せて変更する部分は太字のところになりますね。

この設定をしてないとAPTによるアップデートが不可能になる。いけるときもあるだけに不思議。
vi /etc/resolv.conf

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
search
nameserver 192.168.0.1
ここまでやれば1度再起動。再起動後他のマシンからtelnet接続をできることを確認しておく。

2006年09月09日

Debian : MovableTypeのために不足分のモジュールをゲットする。

Apacheをインストールし、MySQLをインストールしてmt-check.cgiで環境をチェックしたところ、HTML::EntitiesImage::MagickCrypt::DSAXML::Atomが不足していた。ほぼ最小インストールでこの状態なので、これより多いと言うことは無いはず。aptitudeで入手できるのは現時点でImage::MagickXML::Atomの二つのみ。後の二つは拾ってくる必要がある。

まずImage::Magick

# aptitude search imageMagick
でそのままのものが出てきたんだが、これをインストールしてもモジュールチェックが通らなかった。モジュールじゃないと駄目かー、ということでそれっぽい奴をさがしたら出てきたのでインストール。
# aptitude install perlmagick
ImageMagickはこれで解決。さて使うことがあるんだろうか。

さらにXML::Atom。これは検索でサクッと出てきた。

# apt-chache search XML::Atom
# aptitude install libxml-atom-perl
何の問題もなく終了。

HTML::EntitiesCrypt::DSAはCPANから直接ソースをいただいてきてインストールする。手順はほぼ同じなので、Crypt::DSAで説明。

ただしHTML::Entities::NumberedはHTML-Parserに依存しているので、予めインストールしておく。

# aptitude install perl-HTML-Parser

link captionCrypt::DSAのソース
link captionHTML::Entities::Numbered のソース

ソース取ってきてあれやこれや

# wget http://search.cpan.org/CPAN/authors/id/B/BT/BTROTT/Crypt-DSA-0.14.tar.gz
# tar zxf Crypt-DSA-0.14.tar.gz
# cd Crypt-DSA-0.14
# ./Makefile.PL
「何かたらんえー」と言われたらそれインストールしてガンガンいったれ。
# make test
# make install

モジュールは

# ./Makefile.PL
# make test
# make install
でインストールが可能。

2006年08月13日

Debian 勉強中

2006072501link captionDebian -- AMD64 移植版
link captionSarge(Debian) をインストールしよう CD編

現在のサーバ構成としてはDuron750MHz+Vine Linux3.2で運用中。通常、外部からのアクセス時実用上耐えられないほど遅い言うほどではないですが、Movable Typeの再構築時にえらい時間がかかる。タグを使いすぎているというのが原因の一つではありますが、サーバスペックの低さも要因であると考えられます。

現在次期メインマシンにCore 2 Duo/Intelを使った物を考えており、現メインマシンに使用しているAthlon64 3200+が浮くわけでせっかくなんでそれを次期サーバマシンにしようかなぁ、、、と。A64 3200+をセカンドにしてXP 2100+を浮かせるという手もありますが、せっかく64bit CPUがあるんだからそれで遊んでみたいというのが正直なところ。

で、使用するOSを検討したわけですが、

  1. 64bit CPUに対応していること
  2. 無償であること
  3. 情報が手に入れやすいこと

以上の3つが絶対条件になるわけです。これらの条件さえ満たしていればRed HatだろうがTurboだろうがVineだろうが何でも良いわけですが、Red Hat, Turboは無償という条件に引っ掛かる。Red Hatは後継のFedora Coreという選択肢もあるかな。ただFedora Coreは糞高いRed Hat Linux Enterpriseの為の人柱用という感じが透けて見えるだけに選ぶのは微妙な感じ。

Vineは無償ではあるが64bit環境を構築するのがなかなか厄介そうと言う点。出来ないことはないですが自分でコンパイルから何からをやらざるを得ないというのは正直遠慮したい、と言うことで却下。

Gentooも考えたもののイマイチどうゆうOSかよく分かっていないので敬遠。

現時点での最有力候補はDebian GNU/Linuxとなっています。Debianに関しては玄箱を弄ったときにそれなりに触ったディストリビューションですのでそれほど違和感なく使えるかなぁ?と考えてます。ただ、AMD64版もリリースされていますが正式リリースではないという点が若干怖いか。あと、次期バージョンの4.0(Etch)ではWebminが削除されている点も気になる。

第一候補はやはりDebianですが併せて、AMD64への正式対応を考慮に入れてFedora Coreも考えていこうかなぁ、、、。

[関連リンク]
link captionFedora JP Project - Official Site
link captionVine Linux Home Page
link captionGentoo Linux -- Gentoo Linux News

2006年07月25日

Debian GNU/Linux 4.0 リリース決定

2006072501.giflink captionDebian -- News -- Upcoming Release of Debian GNU/Linux 4.0

本年12月にDebian GNU/Linux 4.0が正式にリリースされることが決定したようです。最も大きな点は、

AMD64アーキテクチャが公式サポートに加えられ、カーネルは2.6.17、GCCは4.1になり、aptのセキュリティも強化される模様。

という点でしょう。確かに、今年の秋~冬にかけてCore 2 Duoで新しいマシンを組む計画が無いではない(予定は未定)ので、そうすると現メインのAthlon64 3200+が浮くからそれにDebianを突っ込んでも面白いかもしれない。ただ、Debian入れちゃったらクライアントとしては正直使い物にならないのでサーバになるんでしょうが、サーバにするにはあまりにスペックが高すぎる。スペックと言うよりは消費電力の問題が大きすぎるなぁ。

デュアルブートにしたところで結局は使わないだろうし、、、正直あんまり用はないのかな?いや、、、Socket754のMicroATXマザーを買って省エネサーバにしても良いか。ま、Core 2 Duoで新しくマシンを組んだ等の話になるでしょうから、まだだいぶ先の話ですねー。記憶の片隅にでも置いておくとしましょう。