01. ガイダンス and 準備

Photo by Claudio Schwarz on Unsplash

この授業はなにを学ぶのか

この授業では Unix と呼ばれる OS(コンピュータのシステムソフトとでも言うかな)について一定の操作を学び,実際に「できる」ようになることにある. 多くの学生にとって Unix という名称にはあまり馴染みがないかもしれないが,これは大変多くのコンピュータの根幹ソフトとなっているもので,例えば下記のようなものはある意味 Unix であると言って良い.

  • Android OS
  • MAC OS X, iOS
  • Linux, FreeBSD 等
  • 世界中のほぼすべてのスーパーコンピュータの OS
  • Windows (WSL が POSIX準拠)

表面的にはこれらの OS は異なるのだが,その根幹には Unix が共通部分として存在するというわけだ. なので,多くのコンピュータで何か少し突っ込んだことをしようとするとほぼ必ず Unix の知識やそのコマンドを使って操作をすることになるので,これを学んでおこうというわけだ.

「超」初心者用ガイド

Unix OS の超初心者向けの資料として、 Unix 初心者ガイド (pdf) を置いておこう. ざっと目を通すだけでも、Unix の基本を知るのにだいぶ助けになるのではないだろうか.

授業環境について

さて,この授業では Unix OS 環境を実際に触ってみる必要がある. それにはいくつか選択肢があるので,以下に示そう.いずれかを選び,準備するのだ.

選択肢 1. 自分のPCを持ち込んで, そこで Unix を使えるようにする.

せっかく自分のPCがあるのならば,そこでも Unix をすぐ使えるうようにしておくとなにかとこれから便利だ. そこで,自分のPCで Unix を使えるようにしてしまえ,というのがこの選択肢だ. 詳しくは下記を読もう.

1-1. Windows, Mac どちらでも. 仮想環境ソフトをインストールしてそこに Unix をインストールする方法.

これは Windows でも Mac でも使えるし,真の Unix 環境まるごとを使えるので,本授業でお勧めの方法だ.

仮想環境とは,まあ大雑把に言えば,今ある環境に「仮想のハードウェアを用意して,その中に『別の』OSをインストールして使えるようにする」もの,とでも言えばいいだろうか. 要するに、OS の中に仮想的なコンピュータ(ハードウェア)を創りだして、その上で違う OS を走らせることが出来るのである. これを利用して、Windows/Mac OS の中で好きな Unix を走らせるのだ.

仮想環境を作り出すソフトウェアとしては,Windows だと VMWare, VirtualBox などが有名で,Mac では同様に Pallels, VMware, Virtual Box などが知られている. まあ簡単に紹介しておこう.

Windows 用仮想環境

名称 簡単な説明
Oracle VirtualBox 昔はちょっと遅かったが,今は結構スムーズに動く仮想環境で無料.
阪大の以前の情報教育システム上の Unix環境はこれで動いていた.悪くない選択肢といえよう.
VMware Workstation Pro Windows 用仮想環境としてはほんのちょっと前まで定番だった.
この数年、ライセンス形態の変化が頻繁なためやや敬遠されてしまったという経緯がある.現在は無償なはずなので、これを用いるのもよいだろう.現状、ダウンロードはややこしいので、窓の杜のレビュー "無償化された「VMware Workstation Pro」はダウンロードが超難関に?" などを参照するのが良いだろう.

Mac 用仮想環境

名称 簡単な説明
Oracle VirtualBox 昔はちょっと遅かったが,今は結構スムーズに動く仮想環境で無料.
阪大の以前の情報教育システム上の Unix環境はこれで動いていた.悪くない選択肢といえよう.
VMware Fusion 仮想環境として少し前までの定番.
この数年、ライセンス形態の変化が頻繁なためやや敬遠されてしまったという経緯がある.現在は無償なはずなので、これを用いるのもよいだろう.現状、ダウンロードはややこしいので、窓の杜のレビュー "無償化された「VMware Workstation Pro」はダウンロードが超難関に?" などを参照するのが良いだろう.
Parallels desktop for Mac Mac の上で Windows を動かすための仮想環境として有名.
約 9,000円/年 程度.
Windows 以外の OS も扱えるはずだが,メーカーからして "Mac で Windows を実行" と銘打って売っているぐらいなので,まあそこはそういうものと考えるのが無難だろう.

というわけで,特に理由がなければ,無料 & 阪大の以前の情報教育システムと同じ,という利点があるので,仮想環境ソフトウェアとしてはとりあえず Oracle VirtualBox をダウンロードしてインストールしておけばいいんじゃないかな. インストールは単にインストーラーをダブルクリックで済むけど,不安な人は web で "VirtualBox インストール" などの文言で検索すれば,図入りで解説がたくさんあるぞ.

仮想環境上に Unix を用意する

例えば VirtualBox をインストールしたとして,次に気になるのはその上へ Unix をどう用意するかである. 仮想とはいえ 1台の PC 相当であるので、詳しい人は自分でゼロからインストールしても良い.

ただ,その手間は結構面倒だ.なので,普通の人は既に作られたイメージをダウンロードして使うのが良いだろう.

例えば VirtualBox/VMware 用のイメージ(vdi, vmdkファイルなど)は、一般的なものは OSboxes などで入手できる(他のソフトウェアの場合も,検索すればすぐ見つかるぞ).

少しだけ紹介すると,

OSBoxes 上の OS イメージ その OS の解説
Ubuntu Linux の中では人気がある.「デスクトップOS として使う」なら必ず候補にあがる OS だろう.
ずっと使っていくつもりならこの選択肢は良いんじゃないかな.
FreeBSD Unix OS の正当な嫡流 OS,かな.正統派というなら BSD系になるだろうが,使ってる人は少なめかな.

という感じだな.

まあ,ここではおすすめの Ubuntu のインストールを紹介しておこう.

Ubuntu 24.10 on VirtulBox のインストール

上に書いたように,使い勝手の良さと将来性の点では Ubuntu を使うのが良いだろう. というわけでその手順を下記に紹介しよう.

1) Ubuntu が既にインストールされたハードディスクイメージのダウンロード & 解凍

まず,下図を参考にして, OSBoxes web の  Ubuntuイメージが置いてある場所 から VirtualBox 用の Ubuntu 24.10 イメージをダウンロードしよう.

aa

次に、ダウンロードしたファイル(64bit.7z)を解凍しよう. もちろん、7z ファイルを解凍するための必要なソフトのインストールもしないといけないね.

解凍すると "Ubuntu 24.10 (64bit).vdi" という、6.3GB ぐらいのファイルが出てくる. これが欲しかったものだ.このファイルを PC のSSD/ハードディスクの適当なところへ移動させておこう.

ちなみにこのファイルは Ubuntu OS がインストールされているハードディスクのイメージデータだ.

2) VirtualBox インストールと extension pack の追加

VirtualBox そのものは、  Download VirtualBox にて、左側にあるリンクの中から自分の使っている OS に合わせてダウンロードしてダブルクリックすればインストールできる.簡単だ.

同じ web の右側に "extension pack" の説明がある. これは VirtualBox の使い勝手を良くしてくれるオプションパックだ. この "extension pack" は個人利用、学習利用ならばライセンス上無償で使えると思うが、一応はライセンスについて読んで確認して、問題ないと思ったら "Accept and download" を押して "extension pack" をダウンロードしよう.

"extension pack" のダウンロードが終わったら、VirtualBox を起動しよう. そして、下の図を参考にして "extension pack" を VirtualBox に追加しよう.

3) VirtualBox に Ubuntu をインストール

まず、下図のようにして VirtualBox の新しいシステム登録を開始する.

次に、出てくるウィンドウ上で下図のようにして新しいシステムの名前をつけるとともに、OS の種類を登録する.

次に、下図のように同じウィンドウ上で「ハードウェア」タブを押し、新しいシステムのメモリ量とCPU数を設定する. メモリもCPUも数字が大きいほど仮想PCの性能が上がるが、そのぶん VirtualBox が動いている「おおもとのPCのメモリとCPUを食う」ので、バランスを考える必要がある. まあ、メモリはできれば 4から8GB ぐらい欲しい.CPU は 2ぐらいで良いだろう.

次に、下図のように「ハードディスク」タブを押し、さっきダウンロードしたイメージを使う設定に入る.

出てくるウィンドウで、下図のように「追加」を押す.

そして、下図のように、さきほどダウンロードして得たファイル "Ubuntu 24.10 (64bit).vdi" を指定する.

あとは下図のように確認しつつ戻っていき…

下図のように設定をいったん完了する.

しかし、下図のようにして、追加で少しだけ細かい設定作業をしておく.

これで Ubuntu on VirtualBox のインストール作業は終了だ.

ちなみに、 この作業の解説が OSBoxes の web に置いてある のだが、対象としている VirtualBox のバージョンがやや古くわかりにくい… また、上のwebのすぐ後に書いてある "How to install Guest Additions?" の作業は,今回は不要だと思う.

4) VirtualBox インストールした Ubuntu の起動

これでインストールと設定は基本的には完了した. そこで、VirtualBox で下図のように操作すれば Ubuntu が起動する.

無事にログインできると次のような画面になるはずだ.ただし、必要なパスワードについては下の図のさらに下に書いた「注: Ubuntu by OSBoxes のパスワード」を読もう. ubuntu-on-virtualbox

注: Ubuntu by OSBoxes のパスワード

OSBoxes から入手した Ubuntu などでパスワード等を要求されるような場面があったら,以下のアカウントとパスワードを使おう.

OSBoxes に置いてある OSイメージのパスワードは?
通常ユーザ "osboxes" のパスワードは "osboxes.org" だ.

注: 管理者 "root" のパスワードは設定されていない様子.

5) Ubuntu インストール後にやっておくと良い整備

この素の Ubuntu をそのまま使っても良いが,少しだけ以下のように整備しておくと良い.ぜひやっておこう.

5-1) 入っているものを最新バージョンに更新する

Ubuntu in VirtualBox にログインし,端末エミュレータソフトを起動して(次回授業資料の頭に書いてある),次の文字列を入力する. あと,左端の数字は表示をわかりやすくするための行番号だ.入力するものではないぞ.

また,途中でパスワードを要求されたら上のパスワードを使おう.

1sudo apt update
2sudo apt upgrade
3sudo reboot

5-2) 最低限の開発ツールをインストール

Ubuntu in VirtualBox が再起動したら再度ログインし,やはり端末エミュレータソフトを起動して次の文字列を入力する.

1sudo apt install build-essential

1-2. Windows のみ. WSL をインストールし,その上に Linux をインストールする方法.

Microsoft が正式に提供している WSL(Windows Subsystem for Linux)とよばれる一種の仮想環境を Windows にインストールし,その後そこに Linux をインストールして用いる方法がある. この方法の良い点は,Microsoft が正式にサポートしていて,いろいろスムーズに動く(はず)なところだろう.

そして,このインストール作業だが,かなり簡単だ. "WSL インストール"という文言などで web検索すれば数多くの解説が見つかるのでそれらを参考に行おう.

ちなみに,WSL にインストールする Linux だが今だと Ubuntu 24.04 あたりがおすすめだね.

1-3. Mac のみ.Mac に既にインストールされている「ターミナル」アプリを使う.

実は Mac OS X の根本は Unix なので,ターミナルアプリから Unix コマンドが使える. デフォルトでインストールされているコマンドは少ないかもしれないが,気になるなら追加でインストールすればよいだろう.

1-4. Windows のみ.簡易環境 cygwin on Windows をインストールする方法.

Windows のみにであるが,cygwin on Windows という擬似的な Unix 環境があってこれでも良い. ただし,これは簡易的なものなので,できないことも多い.これはこれで使える場面もあるので紹介しておこう.

これは、 Red Hat 社によって提供されているフリーソフトウェア で Unix のコマンドの一部を Windows で使えるようにしたものであり、無料で使えるのだ. Windows 用コマンドになっているので当然 Windows との親和性は高く、使い勝手はなかなか良いのでぜひインストールして利用するのをおすすめしたい. 下の画面は cygwin を使っているシーンである.

cygwin terminal sample
  • インストールの方法
    cygwin にアクセスし、 setup-x86.exe (32bit 版)か setup-x86_64.exe (64bit 版) のいずれか好きな方を選んでダウンロードし、それを起動すれば良い. 後は適当にメッセージに従えばインストールできる. 途中、インストールするアプリケーションの選択画面が出るが、よくわからなければそのまま OK でも良い. インストールするアプリケーションはあとから追加も削除も自由にできるので、必要になった/不要になった 時に適宜追加/削除すれば良い. なお、32 bit と 64 bit とのいずれが良いかであるが、Windows に合わせておけば良いだろう.

  • 利用の仕方
    インストールが終了すると、とりあえず mintty と呼ばれる文字端末エミュレータへのリンクが用意されるので、しばらくはそれを使うと良いだろう. その使い勝手にあまり満足出来ない人は、たとえば Teraterm と呼ばれる windows のアプリケーションをインストールすると、このアプリケーションがcygwin に対応した文字端末を持っている(cyglaunch, cygterm)ので、それを用いると幸せになれるだろう.

選択肢 2. すべての環境で.Web browser 経由で Jupyter のコンソール環境を用いる.

阪大D3センターが提供をはじめた JupyterHub 環境 "VIORAS" がある. これは web browser 上で Julia, Python および簡易的な Unix コマンドラインが使える環境で,本授業の受講生は阪大の ecs アカウントでログインできる.

阪大の情報教育システムからでも良いし,自分の PC からでも良いので,Web browser で

にアクセスしログインすると下記のような画面になる. そこで "Terminal" アイコンをクリックすると Unix 環境が使える. ただし,インストールされているコマンド等は少ないのでそう思っておこう.

選択肢 3. 阪大情報教育システム上の MSYS を用いる

あらためて書くと,情報教育システムとは教室に置いてある PC に直接ログインするか, 情報教育システムWebサイトに記載があるように,

新システム https://ecsosaka.citrixcloud.jp/

に外部から接続し,OUMailアカウント(例: u000000a@ecs.osaka-u.ac.jp) でログインすることでアクセスする環境のことだ. なお,ログイン後,2つ以上選択肢が出る場合は授業名に合致したものを選ぶとよいだろう.そうでない場合は自習用を選べば良い.

そして,この環境の中に MSYS とよばれるアプリがインストールされていてこれを使う方法だ.

ただ,MSYS では擬似的な Unix OS 環境しか使えないことと,授業開始時点(R5.4月時点)ではこの MSYSアプリが途中で動かなくなってしまうなどの支障があるのでおすすめできない状況だ.

ちなみに、情報教育システムに接続してみると次のような画面がでる.

BYOD-sample

ここから MSYS と呼ばれる擬似的な Unix の簡易環境を起動するのである. 具体的には,Windows のメニューアイコンをクリックして,右上の「すべてのアプリ」を選んだ後, MSYS2 フォルダー中の "MSYS2 MSYS" を選ぶと,文字端末エミュレータが起動し,その中で MSYS 環境(擬似的な Unix環境的なもの)を使えるようになる.

ただし,どうも情報教育システムの Windows11 と相性が悪いようで,しばしば動かなくなるようなので,そういう意味でもこの環境を授業用に用いることはお勧めしない.

レポート No.1

以下の課題について,なるべく一生懸命な調査と考察を行って,
     学籍番号-氏名-01.pdf
というファイルとしてレポートを作成し、 webフォーム から教官宛に提出しよう.

なお,レポートを $\TeX$ 等で作成したものを印刷した「紙媒体」を教官に直接手渡す形で提出してもよいが、物質によるレポート提出は常に破損や紛失の可能性があるのであまりお勧めはしないぞ.

  注意
  近年はセキュリティ上の懸念から,実行形式のプログラムなどをメールに添付するとそのメールそのものの受信を受信側サーバが拒絶したりする. そういうことを避けるため,レポートをファイルで提出するときはそういった懸念のあるファイル形式のものではないようにしよう.

まあ要するに,レポートは pdf ファイルにして送るのが良い ということだと思っておこう.

  1. 自分の PC に仮想環境ソフト(windows の場合は WSL でも可)をインストールし,Unix のどれかを使えるようにしよう. こうした記録・報告の練習として,
  • どのような仮想環境ソフトをインストールしたのか
  • どのような Unix をインストールしたのか
  • その際の作業手順

    等を他人にわかるように書いてこれをレポートとして報告しよう.