見出し画像

その1 Linuxインストールとaptの設定

この記事では、2020年度のネットワークシステムの授業で使用しているLinux PCについて紹介したいと思います。

Ubuntu Linux

ネットワークシステムでは、メインの実習用マシンとしてデスクトップPCを使用しています。このデスクトップPCは、情報理数科1年生が「情報産業と社会」の授業の実習で、自作PCパーツから組み立てたものです。このPCにLinuxのOSをインストールして使用しています。

ネットワークシステムの授業でLinuxを使用するメリットとしては
・OSの費用がかからない
・標準で入っているネットワーク関連のツールが多い
などがあげらると思います。

しかし、
・細かい設定を変更しようとするとWindowsより難しいこともある
・学習のための情報を探すのが難しい
・CUI(キャラクタ ユーザ インタフェース)での操作が必要になる
といったデメリットもあると思います。

使用したディストリビューション

LinuxのOSは、基幹となる部分であるKernel(カーネル)以外にユーザランドと呼ばれる部分で成り立っています。Kernel以外の部分で違いを出している様々なディストリビューションがあります。

今年の授業では、ディストリビューションとしてUbuntu Linuxを選択し、2020年4月にリリースされた長期サポート(LTS : Long Term Support)版 Ubuntu 20.04 LTSを採用しました。

Ubuntu Linuxは毎年4月と10月に新しいバージョンがリリースされるため、学校の授業で使う場合にどのバージョンを使うかの予定が立てやすく、授業に向いていると思います。また2年に1度のペースでLTS版がリリースされ、LTSを選択した場合は複数年にわたってサポートを受けられる保障があります。
リリースされたばかりのバージョンは不具合があったり、情報が少なかったりすることがあるのですが、今年は新型コロナウイルスによる一斉休校の影響で、対面授業の開始が6月だったこともあり、20.04のバージョンについても問題はないと考えました。

教員が、あらかじめISO形式のインストールイメージをダウンロードしておき、ネットワークシステムの受講者数分のDVDに書き込んでおき、DVDからインストールしました。

インストールDVDから起動して

・管理者アカウント
・最小限のネットワーク情報
・タイムゾーン
・キーボードや表示言語

などを設定して、あとは待っているだけですんなりとインストールが完了しました。インストール後の細かいトラブルはありましたが、ネットで検索して解決するレベルのものでした。


aptについて

今回はDVDからオフラインでOSをインストールしましたが、今後はソフトウェアを追加したり、OSをアップデートしてセキュリティを保つためには、インターネットを経由したアップデートが必要となります。

Ubuntu LinuxはDebianと呼ばれるディストリビューションから派生しているため、アップデートは以下のaptというコマンドを使っていきます。

$ sudo apt update
$ sudo apt upgrade

かつては「apt-get」や「apt-cache」という個々のコマンドを使い分けていましたが、2014年にリリースされたUbuntu 14.04 から統一した書式で扱える「apt」コマンドが導入され、現在は「apt update」といった書き方が推奨されています。ただし、互換性の観点から「apt-get update」も残されています。

工夫した点

残念なことに県立高校のインターネット環境は速度が十分ではない時間帯もあります。小さいソフトを追加する場合は問題ありませんが、大きなソフトを追加するときや大規模なアップデートを適用しようとするときには、ダウンロード待ち時間が長くなったりして授業中に終わらない可能性がでてきます。

この授業では、LinuxのデスクトップPCをもう1台用意して授業内サーバとし、aptのProxyサーバ(キャッシュサーバ)の役割を持たせることにしました。こうすることで複数の生徒が同じソフトウェアを追加するときでも最初の1人がダウンロードしてきたパッケージがキャッシュサーバに残り、2人目以降の生徒は授業内サーバを見に行くので、速度の向上が期待できます。

使用したパッケージは、Apt-Cacher NGというソフトで、代表的なproxyのソフトウェアであるsquidをapt用にカスタマイズしているものになります。

Apt-Cacher NG

授業用サーバのIPアドレスが192.168.1.1だとした場合、生徒はこのIPアドレスをaptのプロキシサーバとして以下の手順で設定します。
まず次のフォルダに移動します。

$ cd /etc/apt/apt.conf.d
$ sudo vi 00aptproxy

このフォルダにある設定ファイルはすべて読み込まれる前提になっているので、新たに「00aptproxy」というファイルを作成し、中身を以下のように記述しました。

/etc/apt/00-apt-proxy
Acquire::http::Proxy "http://192.168.1.100:3142";
Acquire::ftp::Proxy "ftp://192.168.1.100:3142";

生徒がviコマンドを使って編集しましたが、その練習については別の記事でお伝えします。

これ以降は aptコマンドを実行した場合には、インターネット上のサーバではなく同一LAN上にある授業内サーバに見行くことになり、速度が向上します。なお授業用サーバでの設定内容について割愛します。

Apt-Cacher NGの管理画面からみた実際の節約効果です。

画像1

この表の下の段から、aptで発生した約126MiB(メビバイト)の通信のうち、Apt-Cacher NGに蓄えられているキャッシュにすでに蓄えられていたデータが約94.4MiBほど再利用されていて、その分のトラフィックが節約されたことがわかります。実際に通信した容量は31.6MiBでした。

※Mi(メビ)とは…MB(メガバイト)などと使われる接頭語M(メガ)が1000を基準にしているか1024を基準にしているか正確に区別するために使い分ける接頭語です。1024(2の10乗)Bが1 KiB(キビバイト)で、1024kiBが1MiBになります。

みんなにも読んでほしいですか?

オススメした記事はフォロワーのタイムラインに表示されます!