わさっきhb

大学(教育研究)とか ,親馬鹿とか,和歌山とか,とか,とか.

BYODで,Apacheのビルド

 いきなりですが問題です.

  • 管理者権限で,Apacheのバージョン2.4.41をビルドし,/opt/httpd/httpd-2.4.41 のディレクトリにインストールして起動させ,ブラウザでhttp://localhost/にアクセスしてページが表示するまでの手順を答えなさい.
  • 一般ユーザで,Apacheのバージョン2.4.41をビルドし,~/apacheディレクトリにインストールして起動させ,ブラウザでhttp://localhost:10080/にアクセスしてページが表示するまでの手順を答えなさい.

 今週月曜日の演習の課題でした.本記事においてApacheとは,Apache HTTP Serverのことです.来年度以降も,バージョンを(その時点の最新安定版に)変えて取り組ませる予定なので,解答は書かないことにします.
 これまで,受講生の大部分は,BYODのPCにVirtualBoxをインストールしており,こちらで用意した仮想アプライアンスにより,Debian 10をゲストOSとして使用可能になっています.管理者パスワードは伝えていませんが,かわりに,一般ユーザでログインし,端末でsudoコマンドにより管理者権限で(ゲストOS内で)任意のコマンドが実行できます.Apacheのソースからのビルドに必要なパッケージをインストールして,仮想アプライアンスにしています.
 VirtualBox,またはDebian 10のゲストOSが使えない人向けに,PaizaCloudや,WSLのUbuntuでも,ビルド,インストール,サーバ起動とブラウザでのページ表示を確認しています.ビルドに先立って,端末で以下のコマンドを実行しておきます.

$ sudo -i
# apt update
# apt install build-essential wget expat libexpat1 libexpat1-dev libpcre3 libpcre3-dev

 さて,管理者権限で,Apacheをビルドしインストールするためのコマンドについては,検索すれば以下のページがヒットします.

 赤で囲ったコマンドを順に実行していけばいい,というわけではなく,yumコマンドは不要ですし,Apacheを含めビルドすることになる3件について,tarやconfigureといったコマンドの引数で指定する,バージョン番号を,変えておかないといけません.
 一般ユーザでビルドするのは,昨年度までも実施していましたが,今回,管理者権限でビルドする活動を先に入れ,そのコマンドをよく見て,目的に合うよう変更することをアナウンスしました.ポート番号の変更は,コマンド実行でなくてもよい(テキストエディタで編集すればよい)こととし,次の課題に進む前,課題の答え合わせには,設定ファイル書き換えのワンライナーを記述していました.受講生はそのコマンドも,コピー・貼り付けそして実行しました.
 昨年度までのノウハウがあり,今回時間をとって準備したとはいえ,それでも授業中はさまざまな不具合が発生し,他のスタッフとともに教室内を駆け巡りました.どのようなコマンドを実行したかを知るため,historyコマンド*1を実行してもらいました.あるときはその出力から瞬時に不具合の原因が分かり,またあるときはディレクトリの削除や,ゲストOSの再起動を指導しました.


 1年前と9年前の授業は:

*1:https://takehikom.hateblo.jp/entry/2019/10/29/065858を読み直すと,historyもこの段階で経験したほうがいいと思ったのに加えて,echoが抜けていました.