「清水美樹の本」の目次へ戻る

次へ進む

UbuntuでRals3.2.3 (1) 端末を操作して、全体をアップグレードする

Linuxを使ってみたいが、具体的に何を使う?

無料だし楽しそうだし、プライドをくすぐる

 Linuxの多くのディストリビューションは、「オープンソース。」これが、筆者も含めてあまり熟達していないユーザーにもたらすメリットは「無料」「自由に使える」ということでしょう。また、あまり多くの人が使っていないOSを使ってみるのは「楽しそう」ですし、「人とは違うちょっとしたプライド」も、正直、あるでしょう。そうした「適度な知的プライド」は、適度であればですが、向上心につながると筆者は思っています。

開発をやってみよう

 だが、そんなLinux、インストールしたところで何をやるのか。ファイルの操作も、アプリの利用も、何か目的がなければむなしいものです。
 そこで、「アプリ開発」をやってみましょう。その中で、以下のような操作を行ってみることができるでしょう。
 (「アプリ」「アプリケーション」「ソフトウェア」の違いは、実は厳密には「ない」のですが、このページでは、「アプリ」とは我々がアイコンをクリックしたり、Webブラウザからアクセスしたり - Webアプリ - して操作できるものをイメージして使っています)。

 - 開発言語の導入:Linuxの「レポジトリ」からのネットワーク・インストール、Webブラウザを利用したWebサイトからのダウンロードという操作
 - プログラムの記述:テキストエディタの扱い、ファイルの扱い
 - アプリの作成、実行:「端末」などLinuxに付属のアプリの起動や操作



Ruby on Railsをやってみよう

 だが、多くの言語や、開発手法にはたいてい、「Windows版」があります。さすがは多くのユーザを有するOSといったところです。
 その中で、「Linuxのほうが少し良さそう」と思われる手法の一つに、「Ruby on Rails」があります。

 「Ruby on Rails」は、最初に登場した2005年あたりは、非常にシンプルで、「初心者でも高度な知識なしに開発できる」ものでした。しかし、世の中のソフトウェアの宿命として、アップデートのたびに機能が増え、それに従って構造が複雑になって行きます。筆者の感想ですが、今のRailsは「熟達者が退屈な作業を行わずに済む」ものであり、「初心者には、開発環境の準備が第一の難関」になってしまっていると思います。

 でも、前向きに考えましょう。この開発環境の準備の大変さが、Linuxの操作の学習のなかなかよいサンプルです。
 Windowsの最大の弱点は二つ、「プログラミング用のテキスト・エディタを調達しなければならない」、「コマンド・プロンプトが使いにくい」です。さらにもうひとつ「誰かが『Windows版』を提供してくれなければ、我々にはどうしようもない」・・・
 それらの弱点を克服できるのが、Linuxです。なぜ克服できるのか・・・までは、さらに説明を加えるよりも、これから実際にやってみた方が早いと思います。

 

この記事の環境

Ubuntu 11.10 Desktopを使用

 そこで、このページでは「Ubuntu 11.10 Desktop」を使ってRuby on Rails3.2を立ち上げるまでに行う、いろいろな操作を解説します。
 「Ubuntu」は、日本の「Ubuntu Japanese Team」が、日本語環境で使い易いように整えたディストリビューションを提供してくれています。Ubuntuのダウンロードやインストールの方法は、そちらを参照してください。

最初に全体をアップグレード - (1)概要

「アップグレード」とは

 さて、Ubuntu をインストールして起動できましたでしょうか。
図1 初めて起動したUbuntu 11.10

 まず最初にすることは、Ubuntu全体のアップグレードです。

「Ubuntu」というLinuxの「種類」とは、「Linuxという基本のシステムに、どんな付属のアプリケーションがついているか」という「種類」です。
 ここで言う「アプリケーション」とは、「ハードウェアドライバ」から「ネットワーク接続ツール」「テキストエディタ」「デスクトップ」など全てを含むものです。
 「Ubuntu」を開発管理する人たちは、常にこれらの付属アプリケーションを修正・更新しています。たまには、基本システム自体を修正します。OS は巨大なプログラムですから、さすがにところどころエラー(バグ)があります。アップグレードにより、それらを改良することができるのです。

 「アップグレードしたことで、新しいエラーが出るんじゃないの?」... 確かに、それはあります。しかし、「前の状態よりはよい」はずです。それができなければよいOS とは言えず、人気は下がるでしょう。「Ubuntu」の評判が良いのは、やはりアップグレードを繰り返すことでより良くなるなど、ユーザーの信頼に応えるものであるからだと思われます。

新しいデータは、「レポジトリ」に

 今は、Windows関係のソフトでも「オンラインアップデート」ということが普通になってきましたが、同じようなしくみです。
 Ubuntuには、Ubuntuを開発・管理する人たちが、新しいデータを置いておく専用のファイルサーバがあります。これを「レポジトリ」と呼びます。
 ソフトウェアをアップグレードしたり、新しく導入したりするときは、このファイルサーバに接続して、ダウンロードするのです。

必要な作業は「アプリケーション」として備わっている

 では、その「レポジトリ」はどこにあって、どうやって接続するのか?ダウンロードしたら、どうやってインストールするのか?...それは、全て設定済みのアプリケーションが、Ubuntuには全て備わっています。
 たとえば、図2のように、画面の左を見てください。そこには、Ubuntuで使える代表的な機能の一覧が、アイコンで示されています(この部分を「ランチャー」と呼びます)。その中に、図2の水色枠の中に示したように、アップデートを自動で感知し、マウス操作で実行できるアプリがあります。「アップデートマネージャー」と言います。図2では、それをアイコンから起動したところです。
図2 「ランチャー」のアイコンから起動した「アップデートマネージャー」

図2の「アップデートをインストール」というボタンをクリックすれば、自動的に全体をアップグレード...と、なってくれれば理想的なのですが、このアプリ、筆者が試したときには、残念ながらエラーになりました。どうやら、レポジトリにうまく接続できなかったようです。
でも大丈夫。方法はちゃんとあります。

最初に全体をアップグレード - (2)「端末」アプリを出すまで

アップグレードを「コマンド」で命令しよう

 Linuxには、ひとつ特徴があります。それは、「マウス操作でできることは、全てコマンドでできる」ということです。コマンド、すなわち専用の入力画面から、文字で命令を打つ操作です。
 むしろ、「本当はコマンドでできることを、マウス操作で『も』できるようにした」ものが、Linuxの「デスクトップ環境」と呼ばれるものである、と考えるほうがよいでしょう。
 図2の「アップデートマネージャ」は、「apt」で始まる一連のコマンドを、マウス操作で行えるようにしたものです。「apt」は「advanced packaging tool」の略です。

コマンド入力専用画面を提供するアプリ「端末」

 コマンド入力のための画面を提供するアプリは、Windowsでは「コマンドプロンプト」に相当しますが、Ubuntuの日本語版では「端末」と呼びます。
「端末」は「ターミナル(terminal)」という英語に相当します。由来は、昔のコンピューターシステムは、どこかの施設にある大きなコンピュータに、離れたところにある入出力機器からユーザーが命令を送信したからです。今の「サーバーとクライアント」に似ていますが、昔のそれは「クライアント(お客様)」などと呼ばれる機能を持ち合わせていない、ほんとうに文字を送信するだけの機能しかなかった、と考えればよいと思います。

「Dash」でアプリ一覧を表示させる

「端末」というアプリは、図2の「ランチャー」にはありません。
「ランチャー」にない、全てのアプリを表示させるには「Dash」というアプリを使います。「アプリ表示アプリ」です。
図3 ランチャーにないアプリは「Dash」で表示する

クリックすると、ちょっと大きすぎて気後れするほど、大きなアイコンのウィンドウが立ち上がります。これが、最近のLinuxの操作画面です。ずいぶん親しみ易くなりました。
図4 「dash」の最初の画面

「端末」は華々しいアプリではありませんので、「それ以外のソフト」になります。クリックしてみましょう。「それ以外のソフト」の一覧が現れますが、まだ「端末」は見えません。そこで、「インストール済み」という項目の横に小さく書いてある「さらに90個の結果を見る」をクリックします(この「90個」は状況によって変化すると思います)
図5 「それ以外のソフト」一覧。さらに探す

「90個」近くもあるのですから、さらなる結果が出て来たら、ゆっくり探しましょう。画面をスクロールして下の方に「端末」というアイコンが見つかったら、それをクリックします。(他にも似たようなアプリがありますが、「端末」というタイトルのついたアプリが、ユーザー向けに一番よく整備されているのです)
図6 「端末」というアイコンをクリックして、開く

図7 これがコマンドの入力画面


最初に全体をアップグレード - (3)「端末」上でコマンドを打つ

システム管理者として作業するには

 システム全体のアップグレードですから、「管理者」として作業することが必要です。
 Windowsでは、ユーザーを作成時に、管理者権限が付与されれば、そのままほぼあらゆる作業を管理者として行えます。個人的に購入などしたパソコンでは、特に意識せずとも、そのようになっています。しかし、Linuxでは、ちょっとだけ違います。
 ユーザーはそのままでは管理者権限を持ちません。管理者としての作業には、パスワードが必要です。ただし、Ubuntuなど、「個人使用」を普通のこととするLinuxでは、初めてインストールするときのユーザーのパスワードが、そのままシステム管理者のパスワードになります。今のMacもそうでしょう。
図8 システム設定で入力したユーザーのパスワード。「まあまあ」との評価だった

 端末内で「管理者」としてコマンドを打つには、最初に「sudo」というコマンドを打ってから(改行せずに、空白を置いて)目的のコマンドを打つと、それが管理者として作業する命令になります。
 そのとき、まずパスワードの入力を求められ、それを正しく入力すると、目的のコマンドが実行されます。通常、同じ端末ウィンドウでは、最初にsudoと打ったときに一度パスワードを与えれば、次回からはパスワードを聞かれません(常にsudoで始めることは必要です)。

アップデート情報をアップデート

 よくあることですが、最新のアップデートを行うには、そのアップデート情報や、またはアップデートソフトウェア自身をアップデートしなければなりません。
 Ubuntuが使っているアップデートのコマンド「apt」では、アップデートソフトウェア自身を最新にすることを「アップデート」、システム全体をアップデートすることを「アップグレード」と指定することになっています。そこで、この解説ページのこのへんの見出しは「システム全体をアップグレード」になっているのです。

 では、端末から、はじめてのコマンドを打ってみましょう。「アップデート情報のアップデート」です。
実行例1 sudoで始める、初めてのコマンド。アップデート情報のアップデート
sudo apt-get update
すると、以下のようなメッセージが出て、パスワードの入力を求められます。
実行例2 sudoに対するパスワードの要求
[sudo] password for ユーザー名:
 図9は、コンピュータ名が「supportdoc-VitrualBox」, ユーザー名がsupportdocの場合です。カーソル(白い長方形)のあるところに、図8で指定したユーザーのパスワードを入れます。
図9 実行例1及び実行例2の実際の様子。

 すると、URLのようなものが次々と表示されます。それは、今インストールされているパッケージのどれがどのレポジトリにあるかをチェックしているのです。これはそれほど長い時間かからないでしょう。
 図10のように「パッケージリストを読み込んでいます・・・完了」と出れば、アップデートソフトウェアのアップデートは完了です。
 図10では、「1,239kBを6秒で取得しました」と書いてあります。
図10 URLのようなものが次々と表示されて、「完了」と出る

全体をアップグレード

 これで、アップグレードができます。同じ端末ウィンドウで続けて打てば、パスワードはもう要求されないでしょう。実行例3のように打ちます。
実行例3 sudoで始めるコマンドでアップグレード
sudo apt-get upgrade

図11 実行例3の実際の様子。図10の長々とした応答のあとに打っている(白枠の部分)

 今度はもう少し時間がかかるでしょう。また、いくつかの段階に分かれます。まず、アップグレードの対象となる「パッケージ名」の全てが表示され、これらをアップグレードしますかという確認を求められますから、「Y」と入力して確認します。
図12 アップグレードするパッケージ名が全て表示され「続行しますか」と出る

 すると、まず、リポジトリからの新しいパッケージの「ダウンロード」が行われます。ネットワーク経由ですから、これが一番時間のかかる段階となるでしょう。
図13 URLのようなものが表示されているうちは「ダウンロード中」

   次に、ダウンロードしたものを展開して、古いパッケージと「置き換える」作業が行われます。
図14ダウンロードしたものを古いパッケージと「置き換える」

 最後が「設定」です。このように長い時間かかりますが、辛抱強く待って、終わったところが図15です。終了メッセージのようなものは出ず、新しいコマンドの入力を促す「プロンプト」が出る事が、終了のしるしになります。
図15 新しい「プロンプト」が出たら作業終了

これで、最新の状態で作業を進めることができます。そして、Dashからのアプリの起動、コマンドの打ち方も実践できました。
Ruby on Railsの構築を目指して、さらに作業を進め、Ubuntuの使い方を学んでいきましょう。今開いている端末のウィンドウは、まだ閉じないでください。
次へ進む
   このサイトの目次へ戻る