LANDISK HACKING DIARY
Since2005/8/17
TOPへ戻る

 


   各種パッケージのアップグレード&第一目標クリア

 

 


 apt-line に iohack を加えたら、今までに足りなかったパッケージはほとんど手に入るようになった。apache2.0.5.4 も samba3.0.14a 、proftpd1.2.10 など普通にdeb パッケージ化できるようになった。今までの苦労はなんだったんだと思うぐらいアホらしい。素晴らしいです、iohack project!!以下では、アップグレードの簡易手順を載せてみる。でも、iohack には、samba の 3.0.14a のパッケージが既に置いてあるので、apt-get してインストールした方が速いです。そして、samba3 以上が手に入るので普通にゴミ箱機能も使えるようになりました。

■samba3.0.14a

landisk:~# mkdir 3.0.14a
landisk:~# cd 3.0.14a
landisk:~# apt-get source samba
landisk:~# cd samba-3.0.14a
landisk:~# dpkg-buildpackage -rfakeroot
libcupsys2-dev (>=1.1.20final+cvs20040330-4) autoconf libacl1-dev (>= 2.2.11-1) libkrb5-dev python2.3-dev type-handling (>= 0.2.1)


足りないパッケージをインストールする。このあたりのパッケージが何の苦労もせずに入ってしまう。なんとも拍子抜け。

landisk:~# apt-get -s install autoconf libacl1-dev libkrb5-dev python2.3-dev type-handling libcupsys2-dev
landisk:~# dpkg-buildpackage -rfakeroot //セルフコンパイルで4〜5時間かかるので寝る前にでも…


コンパイルが終了すると、以下のように12個のパッケージが作成されます。

landisk:~# ls | grep deb
-rw-r--r-- 1 root staff 399306 8月 28 18:29 libpam-smbpass_3.0.14a-3_sh4.deb
-rw-r--r-- 1 root staff 808580 8月 28 18:29 libsmbclient-dev_3.0.14a-3_sh4.deb
-rw-r--r-- 1 root staff 639528 8月 28 18:29 libsmbclient_3.0.14a-3_sh4.deb
-rw-r--r-- 1 root staff 5546882 8月 28 18:31 python2.3-samba_3.0.14a-3_sh4.deb
-rw-r--r-- 1 root staff 2076760 8月 28 18:28 samba-common_3.0.14a-3_sh4.deb
-rw-r--r-- 1 root staff 6751618 8月 28 18:36 samba-dbg_3.0.14a-3_sh4.deb
-rw-r--r-- 1 root staff 12116690 8月 28 18:21 samba-doc_3.0.14a-3_all.deb
-rw-r--r-- 1 root staff 2673914 8月 28 18:27 samba_3.0.14a-3_sh4.deb
-rw-r--r-- 1 root staff 2694700 8月 28 18:28 smbclient_3.0.14a-3_sh4.deb
-rw-r--r-- 1 root staff 389432 8月 28 18:29 smbfs_3.0.14a-3_sh4.deb
-rw-r--r-- 1 root staff 4081468 8月 28 18:29 swat_3.0.14a-3_sh4.deb
-rw-r--r-- 1 root staff 1596340 8月 28 18:29 winbind_3.0.14a-3_sh4.deb



■apache2.0.54

apache もapt-get するだけでいけます。iohack \(^_^)/ばんざーい。

landisk:~# apt-get install apache2


まぁ、ここまでは気楽だった。だが、apache2.0.54 のhttpd.conf の形式が随分変わってしまっている。めんどくせー。とりあえず、httpd.conf を開いてみる。なにも書かれていない。なぜ?

landisk:~# cat /etc/apache2/httpd.conf
# This is here for backwards compatability reasons and to support
# installing 3rd party modules directly via apxs2, rather than
# through the /etc/apache2/mods-{available,enabled} mechanism.
#
#LoadModule mod_placeholder /usr/lib/apache2/modules/mod_placeholder.so


ディレクトリ構成を見てみると、/etc/apache2/apache2.conf なんてのが作成されている。どうやら、ここに設定がかかれているようだ。だが、妙に短い。apache の設定ファイルってこんなに短かったっけ?どうやら、ソースからインストールした場合と、deb パッケージでインストールした場合は設定方法が異なるようだ。ひとつづつ確認してみると、ところどころに、include されているファイルがある。全て抜き出すと以下の5箇所だ。

landisk:~# cat /etc/apache2/apache2.conf | grep Include
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
Include /etc/apache2/httpd.conf
Include /etc/apache2/ports.conf
Include /etc/apache2/conf.d/[^.#]*
Include /etc/apache2/sites-enabled/[^.#]*


まず、簡単なのから潰していこう。

■ポートの設定

landisk:~# vi /etc/apache2/ports.conf
Listen 8080


■サイトの設定

/etc/apache2/sites-available 内に「default」というファイルが置いてある。中身を見ればすぐにわかると思うが、Virtual Host の形式で記述されている。1サイト1ファイルという形で、作成するサイトの数だけ設定ファイルを置いていけばよい。最初からある default ファイルはテンプレートとしてバックアップしておき、自分のサイトにあった設定ファイルを新規に作成すると良い。

landisk:~# ls
lrwxrwxrwx 1 root root 36 8月 29 15:47 000-default -> /etc/apache2/sites-available/default


だが、sites-available にファイルを作成しただけではそのサイトは有効にはならず、/etc/apache2/sites-enabled 内にある000-default から、/etc/apache2/sites-available/default へシンボリックリンクを貼ってあげる必要がある。実際には、 a2ensiteコマンドを実行するだけで、自動でシンボリックリンクが作成される。例えば、新規に、landisk.kororo.jp の設定ファイルを作成し、a2ensite を実行すると、/etc/apache2/sites-enabled/ にも landisk.kororo.jp へのシンボリックリンクが作成される。

landisk:~# a2ensite landisk.kororo.jp
Site landisk.kororo.jp installed; run /etc/init.d/apache2 reload to enable.
landisk:~# ls
lrwxrwxrwx 1 root root 36 8月 29 15:47 000-default -> /etc/apache2/sites-available/default
lrwxrwxrwx 1 root root 46 8月 29 16:21 landisk.kororo.jp -> /etc/apache2/sites-available/landisk.kororo.jp


その肝心な landisk.kororo.jp の設定だが、特に迷うところもないだろう。筆者は以下のように設定した。

landisk:~# vi /etc/apache2/sites-available/landisk.kororo.jp
ServerName 172.16.50.30
NameVirtualHost *:8080

<VirtualHost *:8080>
        ServerAdmin kororo@kororo.jp
        ServerName landisk.kororo.jp
        DocumentRoot /share/public_html
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /share/public_html/>
                Options ExecCGI
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>

        ErrorLog /var/log/apache2/error.log
        LogLevel warn
        CustomLog /var/log/apache2/access.log combined
        ServerSignature Off
</VirtualHost>

最後にapache2 を再起動させるだけだ。

landisk:~# /etc/init.d/apache restart



■全体の設定 : /etc/apache2/apache2.conf

全体に影響する設定はここでするっぽい。

ServerRoot "/etc/apache2"
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml
AddHandler cgi-script .cgi
LanguagePriority ja en ca cs da de el eo es et fr he hr it ・・・






TOPへ戻る
 
Copyright © KORO All Rights Reserved.