いきなりですが問題です.
今週月曜日の演習の課題でした.本記事において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が抜けていました.