« 今月号の「げんしけん」の長文感想 | Home | ソニーとSo-netが用意した、Aシリーズ促販用ブログ炎上の件について »

エビフライががんばってLinuxを使ってみるよ日記

2005/11/29 火曜日 13:52:00 | ソフト — By ebifly

ついにエビフライのやりたいことがコンパネのPleskにできる領域を大幅に突破してきたので、仕方なくSSHとかSCPとかで中に入ってファイルをごにょごにょできるようなソフトを放り込んでみた。
WinSCP
http://winscp.net/eng/docs/lang:jp

とりあえず公開鍵とか秘密鍵とか作るのが面倒という理由で、鍵作らずにサーバにログイン。快適にファイルを操作できてウヒョヒョー、内蔵エディタとか使えばコンソールからTelnetライクに操作するよりラクチンじゃねーか、ウヒョー!とか思っていたのも束の間、なんだかパーミッションの関係で中身が見られないフォルダがチラホラ。どうやらこのサーバはSSH用のユーザーアカウントだとrootではないらしい。ああ、じゃあrootでログインし直すかーと思って再設定。だがはねられる。なんじゃこりゃ?と思って専用サーバを借りた際の説明をよく読むと、

PermitRootLoginをNO

とか書いてある……ああ、ログイン後にrootにスイッチするのか……SUとかいうコマンドでスイッチすればいいのねん。というわけで、WinSCPからスイッチしようと試みるが、できない……なんだこりゃ?「su root」が通らないぞ、どーなってんだ?

WinSCP :: How do I change user after login (e.g. su root)?
http://winscp.net/eng/docs/faq_su

えーっと、要するにSCPのプロトコルではそんなことはできませんよ、と…。「sudo」でも使ってろ、バカ、と…。そんなの使うんだったら最初からこんなことしてないんじゃヴォケがぁーッ!などとわめきながら、仕方ないのでSCPではなく普通にSSHを使うことに。専用サーバの説明だとTeraTermProをあーしてこうして…とか書いてあるが……TeraTermProの操作性の悪さがイヤなので、これを機にもうちょっとWindowsっぽくGUIでもう少し操作しやすくなっているようなものはないのかといろいろとインストールしてみる。で、最終的にこれに落ち着く。

Poderosa(ポデローサ)
http://ja.poderosa.org/

Poderosa(ポデローサ) は、タブ式 GUI・SSH2 をサポートしているオープンソースの Windows 用高機能ターミナルエミュレータです。

とりあえずタブ機能とかウインドウの分割とか同時接続を複数行っても整理できて楽しいのでこれを使うことに…。SSH2を使ってログインして、rootになってファイルを操作したりしていたが、せめてファイル操作ぐらいは全部WinSCPで完結させようというセキュリティのカケラもないことを考え、さらに「あー、PermitRootLoginをNOにしてるんだから、これをYESにしてから、秘密鍵と公開鍵作ってそれでrootでログインできるようにしてからもう一度PermitRootLoginをNOにして…」などと気が狂っているとしか思えないことを延々と実行。「vi」って使いにくいなーとかぶつぶつ言いながら、設定を変更。WinSCP付属のPuTTYGenとか使って公開鍵と秘密鍵を作成。とりあえず「.ssh」とかいうところに秘密鍵を放り込んで自分の方には公開鍵を置き、パスフレーズは難解な意味不明文字列を設定、根性で暗記。Pageantの世話にはならないぞ…(ここはわらうところ)。

で、今度はphp.iniを変更。というのも、サムネイル画像を作らせようとしたら

Fatal error: Allowed memory size of 8388608 bytes exhausted

などと反抗的なメッセージを吐き出したため。メモリが足りないのだな…。というわけで、調子に乗ってポデロ~サで中に入ってphp.iniを開いて

max_execution_time = 60
memory_limit = 12M

というように変更。あー、できたできたーと思いながらexitして、サムネイル作成をやらせようとするがまたしても同じエラーを吐き出す。なんだこれは…?ああ、Apacheの再起動やってないや、てへ♪って、てへじゃねーよ、この愚かエビめ。SSHで中にはいるのもアレなので、ものは試しということでPleskからApacheの再起動を試みる。そういうボタンがあるんです。クリックして待つこと1秒、再起動終了。ちゃんとサムネイル作成できるようになりました、やたー、やたーよ。

さらに調子に乗ってサムネイルをGD2ではなくImageMagick使おうかな~とか思ってよく見たらインストールされてない。チチィッ!と舌打ちして悪態を付きながら「そうだ、aptを使えるようにしてパッケージ管理できるようにしよう♪」などと愚かしいことを思いつき、wgetでパッケージを入手してインストール、こりゃラクチンじゃねーかと思いながら、いざやろうとするとImageMagickがインストールできない……というかリストには出てくるのだけど、サーバからダウンロードできない……なぜ?Why?と思ってエラーメッセージとかを色々読んだり調べたりして判明。ああ、RedhatLinux9用のImageMagick自体がそもそも(略)つまり、自分でソースから作れ、と?この時点で絶望的気分に陥り、ふて寝。明後日かその次かさらにその先の課題として放り出す。

こんなことならOSをRHEL4にしておくんだった、そうすればRedhatのサーバからダウンロードできてそのまま依存関係も何も気にせずに「アアアア~アアアアア~♪」とか言いながらサクっと入ったものを……。この時点で泣きながらエビフライのようなビルゲイツの窓帝国出身マドフライ改めエビフライは窓の宿命として「ラクして管理する」のが至上命題であると認識。今度からOSを選ぶときには手厚いサポートの受けられるものか、あらかじめしたいことをリストアップしてそれらを全部懇切丁寧に衣まみれのエビフライでもすぐに実行できるようなFAQがネット上のどこかの親切な方々によって研究され尽くされているような、ブログとかそのあたりでいっぱい例が出てくるような、そんなOSにしようと固く固く心に誓うのでありました。

……で、よく考えたらどういうLinuxを選べばいいのかなーと思って調べてみる。

・採用候補その一「Red Hat Enterprise Linux 4」
http://www.atmarkit.co.jp/flinux/prodreview/rhel4/rhel4a.html

これだったらFedora Coreを採用した方がいいんじゃないかとかものすごいことが頭をよぎるが、ミッションクリティカルな用途を妄想したいエビフライ的には二の足を踏まざるを得ない……。ああ、CentOSとかWhite Box Enterprise Linuxという選択肢も…。

・採用候補その二「Novell SUSE LINUX Enterprise Server 9」
http://www.atmarkit.co.jp/flinux/prodreview/sles9/sles9a.html

AutoBuildって面白そうですね……。あとはTurboLinuxとかもやたらマニュアルが懇切丁寧なのでいいかもしれない。マニュアル読みながらその通りにとりあえずやっていけばなんとかなる。やさしすぎず、きびしすぎず…あれ、もしかしてエビフライの求めるズボラLinuxはTurboなのか?

そうそう、エビフライの場合、ファイル操作のほとんどをWinSCPに投げてるので、わざわざターミナルで使うコマンドは

pwd:とりあえず自分がドコにいるのかが分からないと不安
ls:何のファイルがあるのか常に見えていないと不安
rm:ゴミ箱がないので不安
more:なんだかよくわからないファイルは覗いてみないと不安
rpm:パッケージ入れないと使い物にならないので不安
make:ソースしかないので不安
su:いちいち切り替えたり戻したりしないと不安
exit:はやく脱出しないと不安

覚えてるコマンドはこれぐらいです、アヒャ!オプションがざらざらつながっているような場合はまずWindowsのエディタで下書きしてからコピペするという論外なことをやってます。Linuxの達人の方々ごめんなさい。あるいはGoogleでやりたいことを可能にする長大なコマンドの文字列を探して、それをコピペしてきたり。もちろん適時書き換えながら実行。これだけで大体のことができるのだからもうムチャクチャです、いい時代になりましたね。依存関係が発生したらとりあえず足りないと言われたものを片っ端から放り込んで…というのを繰り返してみたり。ああ、Windows出身者でLinux操作で何をビビり倒す原因になるのかなーと思って考えてみると、要するに「失敗したらどうするの」というのがあるわけで。そんなのアンインストールとかダウングレードとかすればいいじゃないかっつーことで。

@IT:rpmコマンドでパッケージをダウングレードするには
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/796downgrdrpm.html

あとはソースから作るならとりあえずRPMにしてみると、ちょっと安心できる。理由は、どのディレクトリに…とか考えずに済むから。ええ、Windows信者の悪いくせですね。

@IT:ソースファイルからRPMファイルを作成するには
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/530mkrpmfs.html

そういえばなぜこんなことをしているのかというと、トラックバック機能を別個に分けてしまおうと考えたため。手動トラックバックという方法もあるにはあるのだけど、あれだと送信元が自分のIPアドレスになるので、送信元サーバのIPアドレスとトラックバック記事元との比較を行って不一致だったら弾くタイプのブログが相手だと悲しいことになるわけで。また、実体参照とか数値参照とかそのあたりのややこしい諸事情により、トラックバックしたら文字が化けまくりとか言う悲惨極まりない状況を解決するため、相手先の文字コードをある程度自動判別してくれるような、そんな感じで「確実に」トラックバックできる(主に送信)ようにしたかったわけで。

とりあえずこれが一番まともっぽい。

tb-standalone 日本語化 + メール送信: blog.bulknews.net
http://blog.bulknews.net/mt/archives/000383.html

これを動かそうとしたら500エラーとかを吐くのでおかしいなーと思って説明をよく読んでみた結果、モジュールが足りないのかな?という結論に。

OKWave 使用可能なモジュールの一覧取得
http://okwave.jp/kotaeru.php3?q=703012

上記で説明されているmodlist.plを作って表示させてみると、Jcodeが入ってませんでした。だったらくそまじめにJcodeを入れればいいのですが、後々のことを考えて、できるだけ簡単にモジュールをとっかえひっかえできる方法はないのかな~ということで「CPAN」ってのを使うことに。

CPAN経由でLinuxにモジュールを組み込む
http://y-kit.jp/saba/xp/cpan.htm

とりあえずコピペを繰り返し、Enterキーを押しまくり、設定完了。Jcodeもちゃんと入りました。わーい。あとは色々なブログのアカウントを取得してそれぞれにトラックバックPingを打ちまくってどうなるか調べてみるだけですな。

そうそう、WindowsからLinuxのサーバをいじくる上でこれを読んでおくと気分が楽に。

各ディレクトリの役割を知ろう(ルートディレクトリ編)(1/2)
http://www.atmarkit.co.jp/flinux/rensai/theory02/theory02a.html

各ディレクトリの役割を知ろう(サブディレクトリ編)(1/2)
http://www.atmarkit.co.jp/flinux/rensai/theory03/theory03a.html

とりあえず今までWindowsにApache入れたりPerl入れたりPHP入れたりMySQL入れたりしてきた人であれば、そういう作業はたぶんというか確実にLinuxの方がラク。勉強はしない、ただやりたいことを明確にしてGoogleでひたすら同じ事をした人のやり方をまねる、もうこれしかない。心がけることはできるだけ簡潔に、ラクに、手抜きでできる方法を王道の中から選ぶこと。まずはデフォルト設定で。とりあえず「何をすればいいのかも分からずに行き詰まる」のはそれこそ、目的別にサーバの設定をカスタマイズしようとか、そのレベルなのではないかと。動けばいい、メンテナンスがラクであればいいというのであれば、いくらでも方法はありそうな感じ。

というわけで、エビフライの次にやること覚え書き。

・ソースから作ってインストールするよ
・サーバの負荷とかを監視するよ
・JMeterでベンチマークするよ
・ApacheとMySQLの設定をチューニングするよ
・メモリ増やすよ(さらに上位の構成の専用サーバに移動することも考慮)
・バックアップするよ(RAIDぢゃない)
・X Windowつかってみるよ

Topics: ソフト |

トラックバック URL :

コメント