「Linuxのこと」カテゴリーアーカイブ

個人的 Linux メモ – 4 –

Apacheは半ばあきらめ中。
その前にいろいろやっておく。

■IPをDHCPから固定に変更する。
「/etc/sysconfig/network」/内の
ifcfg-eth-id-00:MACアドレス
を編集する。

複数ある場合は、実際にネットワークにつながっているネットワークカードのファイルを開く。

・変更
BOOTPROTO=’dhcp’

BOOTPROTO=’none’

あとはIPなどを設定する。

個人的Linux メモ – 3 –

■Apacheのインストールの続き
結局
gawk -f /usr/local/src/httpd-2.2.3/build/make_exports.awk `cat export_files` > exports.c
ここで止まるまま解決策が見えず。

http://www.damapon.org/blog/index.php?itemid=40
↑こういうエラーがあるということは分かったがそれ以前・・・。
awkが悪いのか何が悪いのかさっぱり。

と言う事で本格的にrpmでのインストールを試みる。

・rpmコマンド
[詳細を表示しながらインストール]
rpm -ivh パッケージ名

以下の依存関係に問題ありとのこと

/usr/share/magic.mime は httpd-2.2.3-1.i386 に必要とされています
apr >= 1.2.0 は httpd-2.2.3-1.i386 に必要とされています
apr-util >= 1.2.0 は httpd-2.2.3-1.i386 に必要とされています
libapr-1.so.0 は httpd-2.2.3-1.i386 に必要とされています
libaprutil-1.so.0 は httpd-2.2.3-1.i386 に必要とされています
libcrypto.so.4 は httpd-2.2.3-1.i386 に必要とされています
libexpat.so.0 は httpd-2.2.3-1.i386 に必要とされています
liblber-2.2.so.7 は httpd-2.2.3-1.i386 に必要とされています
libldap-2.2.so.7 は httpd-2.2.3-1.i386 に必要とされています
libpq.so.3 は httpd-2.2.3-1.i386 に必要とされています
libssl.so.4 は httpd-2.2.3-1.i386 に必要とされています
openldap は httpd-2.2.3-1.i386 に必要とされています

いろいろ探しているとどうも「libtool」と「autoconf」と言うものがあるらしい。

そしてインストールにはそれが必要らしい。

とりあえずApacheのインストールを一時中断する。

■autoconfのインストール
ftp://ftp.ring.gr.jp/pub/GNU/autoconf/
↑このへんからいただいてくる。
ダウンロード(現段階でautoconf-2.60.tar.gzが最新の模様)
あとは例によってconfigureとmake

congigureでエラー発生。
GNU M4 1.4 is required
このM4というのはautoconfの実現に必要な物でかなり高機能なマクロ言語らしい。
(中毒を起こすくらいすごいらしい。)
ダウンロードは、先ほどautoconfをダウンロードしたサイトの一つ上のディレクトリ「m4」の中にある。
とりあえず現時点最新版の「m4-1.4.6.tar.gz」をいただいてきた。

こいつをまたまた例によってインストールする。

よしよし。うまく言ったぽい。

戻ってautoconfを再びconfigure。
configure 成功
make 成功
make install 成功

■libtoolのインストール
これも先ほどのサイトのから。(一つ上のlibtoolディレクトリ)
libtool-1.5.8.tar.gzをいただく。
例によってconfigureとmake、make install

■Apacheのインストールの続き その2
いやん!
何にもかわんないじゃん!
えええええええええええ。

いけねw
yastでインストールしたんじゃなかったw

はい。再起動。

rpm -ivh httpd-2.2.3-1.i386.rpm

ちょwwwwwwwっおまwwww

ねーよwwwwwwwww

インスコできねーよw

エラー内容同じだよwwwwww

仕方が無いので上から順番に探してインストール
・apr
aprってのはApache Portable Runtimeで一種のフレームワークっぽいものみたい。
公式ページ:http://apr.apache.org/

今度は
ftp.kaist.ac.kr/pub/Apache/
↑このへんからいただく。
とりあえず
apr-1.2.7.tar.gz
apr-util-1.2.7.tar.gz
をいただいてきた。

aprのインストール成功
apr-utilのcofigureを実行すると

configure: error: APR could not be located. Please use the –with-apr option.
はいはい
sh configure –with-apr=/usr/local/apr/
これでよーござんすか?

よーござんすw

apr-utilインストール成功

ここで一度Apacheのconfigureを実行して見る。

なんかね。
俺ね、今はまだ良くわかんないけどたぶん、
何か壮大な勘違いか間違いをしてると思うんだ。

あああああああああ。

もしかして、rpmで依存関係云々言われたら足りないものをrpmで入れないとだめなのか!?

ためしに「apr-util-1.2.7-1.i386.rpm」を落としてきてインストールしたら・・・

やっぱり・・・・。

よくよく考えればそうだよね。

という訳で
「apr-util-1.2.7-1.i386.rpm」もいただいてきた。
が、ここでまた依存関係のエラー。

libexpat.so.0 は apr-util-1.2.7-1.i386 に必要とされています
liblber-2.2.so.7 は apr-util-1.2.7-1.i386 に必要とされています
libldap-2.2.so.7 は apr-util-1.2.7-1.i386 に必要とされています
libpq.so.3 は apr-util-1.2.7-1.i386 に必要とされています

ふむ。いくつかApacheともかぶってる(当たり前)のでまた一つずつ探す。
・libexpat
expatってのはXMLパーサーらしい。
ライブラリなのでコンパイルしてlibフォルダに・・・・・
いやrpmでインストールしよう。

rpmパッケージがなかなかみつかんないなぁ。

だめもとで
http://jaist.dl.sourceforge.net/sourceforge/expat/expat-2.0.0.tar.gz
↑こいつをいただいてきて、コンパイル、make。
再起動してみる。

rpm -qa|grep xp
expat-2.0.0-11
あれ?入ってる。あ、もともと入ってたぽい。先に確認しろよ。
けど、こういう場合どうなるんだろ。

なんか正直rpmで入れたのと、ソースコンパイルしたのがごっちゃになって
沸け分かんなくなってきた。

とりあえず今日はここまで。
明日またrpmパッケージ探そう(CDの中にありそうだけどw)

やっぱりちゃんとrpmとかの仕組みを理解せずに使ってるのが問題だね。
いろいろ勉強しないと。

悪戦苦闘の日々は続く。

個人的 Linux メモ – 2 –

先日までで

・openSuSE 10.1のインストール
・openSSHのインストール

が完了。

■ Apacheのインストール。
・FTPダウンロード
ftp://ftp.apache.jp/pub/net/apache/dist/httpd/
上記アドレスからApacheのソースをダウンロード。
今まではwindows版の1.3系を使用してきたが、今回は2.2.3にする。

・ファイルの移動コマンド
mv -b 移動するファイル名 移動先ディレクトリ
-bオプションは、移動先に同名のファイルがあった場合バックあぷするオプション。

・ダウンロードしたhttpd-2.2.3.tar.gzを解凍
gunzip httpd-2.2.3.tar.gz
・Tarコマンドで復元
tar xvf httpd-2.2.3.tar.gz
x:展開 v:展開の様子を表示 f:ファイルを展開

・httpd-2.2.3というディレクトリが出来るので移動する。

・configureを実行
sh configure
※シェルなので”.”とかでも実行できるけど、嫌いなのでshと明示的に書く。

が、問題発生コンパイラが無いとの事。
「no acceptable C compiler found in $PATH」
どうもSuSE二はgccが入ってないくさい。

どうする?どうする俺?

YaSTで入れました。

うわー。だめじゃん俺。

だいたいYaSTが便利すぎる。まぁそれはおいといて。

結局まだ一回もrpm使ってインストールした事ないや。

まぁPHPはrpmでいれよう。

ということで再び
sh configure

今度はうまくいった模様。

・make実行
make

あらら。
なんか
gawk -f build/make_exports.awk
↑この辺で躓くw

これ調べとこう。

続きは明日で。

個人的 Linux メモ

linux一般・キーマップと言語の変更
yastで出来た。

・インストール済みパッケージを探す
rpm -qa | grep 検索条件

・インストール済みパッケージの確認
rpm -ql パッケージ名

・sshdの起動
sh /etc/rc.d/sshd start

・現在実行中のプロセスを表示(スナップショット)
ps aux | grep 検索条件

・特定のポートをオープンしているプロセスを調べる
lsof -i:ポート番号

・windowsで言うとこのipconfig
ifconfig

・実行中のプロセスをリアルタイムに表示(タスクマネージャぽいもの)
top

・suseにはrc.localはない。その代わり「/etc/init.d/boot.local」を使う

・viの使い方
http://www.linux.or.jp/JF/JFdocs/vi-user-usage.html#toc3

ファイアウォール関連
・suseはsusefirewallの関係からiptablesが他とは違う。
参考:http://www.aconus.com/~oyaji/suse/iptables_suse.htm
iptablesがサービスじゃなかったり。
だから再起動の仕方が分からなかった(泣)

・iptables解説(RHなど用。構文などは同じ)
http://www10.plala.or.jp/keomin/miscell/iptables01.htm

・iptablesと同等の設定を
「/etc/sysconfig/SuSEfirewall2」にて行う。
参考:http://sukoburu.no-ip.com/index.php?e=11

今回SSH用に22番ポートを開放したかったので、

「/etc/sysconfig/SuSEfirewall2」内の
FW_CUSTOMRULES=
をコメントアウトし上の行の
FW_CUSTOMRULES=”/etc/sysconfig/scripts/SuSEfirewall2-custom”
とする。

「/etc/sysconfig/scripts/SuSEfirewall2-custom」をviで開き
サンプルを見つつ

fw_custom_after_antispoofing()関数内に
iptables -A INPUT -p tcp –dport 22 -j ACCEPT
と追記。(ちゃんと使用するネットワークカードや、厳密なIPとか書いたほうが良さゲかな?)
保存したら
SuSEfirewall2を実行して再起動する。
エラーがあったら直す。

ポートスキャンしたらちゃんと22番空いてたヾ(*・∀・)ノシ゚.:。+゚ ヤッタァ

SSH設定
・設定を見たところrootでログインできるようなので
PermitRootLogin no
と書き換え。
それと下記二行もいじる。
PasswordAuthentication yes
PermitEmptyPasswords no
これでrootではログインできないようになるし、パスワード無しでのログインも不可になる。

とりあえず切り替え機地獄から脱出。

ひとまずこれからはSSHで作業する事になりそう。

ついでなのでPocket PCからもつないで見る。
PocketPuTTYを使用。
無事ログインできた。なんか楽しいw
が、半角スペースや一部記号が入力できない模様。
詳細は調査中。
因みにデスクトップは Utf-8 TeraTerm Pro

備忘録
IPがDCHPから取得するようになってるので、固定する。
ルーターは22番あけて無いので外からは入れない。
なんだかSSHだと日本語版になるみたい。yastもwこれも調べることw

なるべくYaSTなしでがんばろう。