SSHで遠隔地のパソコンにログインしたら、そのパソコンの全ての機能を利用することができます。あなたはもうそのパソコンの前に座っているのと全く同じ状況なのです。パソコンを操作するにはLinux(UNIX)コンピュータに命令します。前章、その1)Windows
からSSHを利用するための準備、では、Windowsから安全にリモート操作する手段を提供するソフトについて、インストールの方法から、テレビパソコンへログインするところまでを説明しました。ここでは、その2)SSH接続してのLinuxコマンド発行について詳しく説明していきます。
その2)SSH接続してのLinuxコマンド発行
Linux は決して難しくない:
Linux は歴史のあるUNIXの流れをくんだインターネット対応OSであります。特にインターネットサーバでは、昔からUNIXが使用されてきました。Linuxを使用すれば、インターネットサーバを無料で構築する事ができますし、ソフトウェアのインストール解説本や、関連するホームページ記載されている多くの体験記に従えば、UNIXに精通していなくてもソフトのインストール、サーバの管理が可能です。また、毎日の管理はほとんどLinux自信が行う仕様になってきたため、個人のサーバを管理する程度であれば、基本的なコマンドの利用方法を会得するだけで十分でしょう。
コマンドの基本:
Linuxコンピュータを管理するには、コマンド(命令)を発行する必要がありますが、コマンドの出し方の基礎を説明します。
上図を見てください。UNIXでは、ログインしたユーザーからの命令を待ち受けていることを示すのに、特定の文字列(通常、この文字列をプロンプトといいます。)が表示されます。上図では、『 kuro@shlsev2:~$ 』の部分がプロンプトです。プロンプトに続けて、命令を出します。
上図の例では、プロンプトの後に、man というコマンドを発行した例で、マニュアルを表示させることが目的です。コンピュータに対してマニュアルを表示しろ!と命令していますが、他だ単に「マニュアルを表示しろ!」と言ってしまったので、コンピュータはきっと「何の?」ととまどうばかりで、困ってしまいます。そして「What
manual page do you want?」と返答してきました。「どのマニュアルページが欲しいんだ?」との返答は、何となく怒られているようにも思えますが、このように、目的語を伴わない曖昧な命令は聞いてもらえないのです。下記では「何の」にあたる条件「shell」を指定して命令を発行します。
上図は、プロンプトの後に、コマンド名、半角スペースを入力したあと、「shell」という条件(引数/parameter)を与え、最後にリターンを押します。これで、「shell」
に関するマニュアルページを表示しないさい。と命令できました。下記がその返答画面です。
このように、Linux のコマンドラインインターフェースは、決して難しいものではなく、Windowsなどのグラフィカルな画面とマウスにより命令を出していくのに比べ、キーボードを利用してコンピュータと会話(チャット)をするようなイメージの、より人間と話をするのに近いインターフェースであると言えます。
基本型:
プロンプト$に続いて、①コマンド名②半角スペース③引数④リターン(Enter) |
実際の利用・管理:
Windows OS になって以来、GUI(グラフィカルインターフェース)で簡単になったと思われますが、では実際に普段
Windowsで、どんな操作をされているのでしょう?
実際に一般的なユーザーがよく利用する操作をピックアップして表にまとめました。(下記の表)
Windows
OS 上での基本操作一覧表 |
# |
操作 |
操作説明 |
対応コマンド |
1 |
ディレクトリの内容の一覧を表示 |
対象フォルダをダブルクリックして、どんどんウィンドウを開いていく操作。一覧表ではファイルの名前の他に、アイコンと言われる絵がついて表示される。 |
ls,cd,pwd |
2 |
ファイルの中身を表示 |
対象ファイルをダブルクリックし、中身を表示する操作。 |
less |
3 |
ファイルの複製(コピー) |
対象ファイルを右クリックし、コピーを選択、ファイルを複製する目的の場所に移動して、また右クリックで貼り付けを選ぶ操作。 |
cp |
4 |
ファイルの削除 |
対象ファイルを選択し、右クリックで削除を選ぶ操作。 |
rm |
5 |
ファイルの移動 |
対象ファイルを選択し、右クリックで切り取りを選択、ファイルの移動先でまた右クリックで貼り付けを選ぶ操作。 |
mv |
6 |
フォルダ(ディレクトリ)の作成 |
対象フォルダを作成したい場所で右クリックし、新規>フォルダを選ぶ操作。 |
mkdir |
7 |
フォルダ(ディレクトリ)の削除 |
削除対象とするフォルダを選択し、右クリックし、削除を選ぶ操作。 |
rmdir |
8 |
ファイルやディレクトリ名の変更 |
名前を変更するべきファイルやディレクトリを右クリックし、名前の変更を選び、キーボードから新しいファイル名を入力する操作。 |
mv |
|
たったこれだけです。
よくよく考えてみると、WindowsというOSでの操作はたかだか上記の10にも満たない動作を繰り返しているだけなのです。ワードの使い方、エクセルの使い方といったレベルは、OSで動くソフトの使い方の話で、OSの使い方とは全く関係ありません。現にMacとWindowsの両方で動作するワードはOSを問わず、MacでもWindowsでもほぼ同じ操作で利用できます。さらには、WindowsにもCommand
PromptというコマンドラインインターフェースもLinuxと同じように実装されていて、数千ものコマンドラインから命令を受け付けるプログラムがほとんど使われず(?)に格納されています。Linuxも同じで、数あるコマンドのうち本当に基本的なものはほんの少しなのです。
上記のようにOSの操作という点では、たったの8個程度の操作しかしていないことに驚かれるでしょう。Windowsでは8程度の操作を繰り返しているだけなのです。ではこれら8個に対応するLinuxのコマンドをマスターすることは難しいのでしょうか?そんなことはありません。たった8程度のコマンドをマスターするだけで、Windowと同じことが可能なわけですから、Linuxを利用する難易度は非常に低いと言えます。これまで、ほとんどの方が文字だけの表示されている画面を見て、つい反射的にあきらめてしまっているだけでしょう。これは、すなわち、「やる気の問題」でしょう。誰でも使える様になりますので、もう少々読み進んでください。
「たった8つの命令」とは言っても、かなりの操作を行うことができますね。これらの最低限のコマンドを覚え、いくつかの定番のソフトの使い方を覚えてしまえば、実は
Linuxなんて簡単に使うことが出来ます。特に英語に自信がある方であれば、英語に近い文法で「何をしろ!(verb) これを!(object) ああして!(object)」という非常に単純な構文で命令を出すだけなので、難しいどころか、なぜこんなものを難しいと思っていたのだろう?という感想をお持ちになられることでしょう。
ここでは、Windows OS のコンピュータを操作するのと同程度のことを Linux OS のコンピュータで操作できるように、基本コマンドの使い方を説明します。コマンドラインを見ただけで、「難しい」と先入観を抱かず、「コンピュータとのチャット画面だ!」と思って、トライしてみてください。いずれにしても、「習うより慣れろ」です。お使いのテレビパソコンもそうですが、UNIXでは、多少操作ミスしても、重大な影響はありません。なぜならば、上記に示したように、曖昧な命令は全く受付ないのですから、ご心配は無用です。
自分のテレビパソコンにログインしながらやってみよう!!
これさえマスターすれば、あなたも立派なLinuxユーザー!!
コマンドはとっても簡単体験コーナー
上記表1に対応:
「ls」コマンドは、ディレクトリ(ディレクトリとはMacやWinのフォルダに相当する、以下単にディレクトリ)の中身の情報を一覧を表示するコマンドです。
例:
~$ ls
としてリターン(エンターキーを押すこと、コマンド入力を終えたら、コマンドをシステムに渡すためリターンしますが、以下の説明では「リターンしてください」との説明は省略します)すると、カレントディレクトリ(現在自分のいるディレクトリのこと)の内容の一覧表示します。
また、よく使うオプションとしては [-la]、[-t]などがあります。
~$ ls -la
とすると、ディレクトリの中身の一覧についての詳しい情報を表示します。
~$ ls -t
とすると、ディレクトリの中身の一覧を日付順にならべかえて表示します。
上記表1に対応:
「cd」コマンドは、別のディレクトリへ移動するためのコマンドです。 カレントディレクトリから、各ディレクトリへ自由に移動できます。
例:
~$ cd
とすると、自分のホームディレクトリに移動します。
また、よく使う方法は、
~$ cd [ディレクトリ名]
とする方法で、指定したディレクトリに移動するコマンドです。
~$ cd ..
とすると一つ上階層のディレクトリに移動します。
pwd |
print working
directory から命名 |
上記表1に対応:
「pwd」コマンドは現在自分がいるディレクトリを表示するためのコマンドです。特に自分がどのディレクトリにいるのかわからなくなった場合に便利です。
例:ユーザ『hoge』(hogeはあなたのユーザー名に置き換えてください)がログインした直後に、
~$ pwd
とすれば、
/home/hoge
と表示されます。homeというディレクトリの下にあるhogeというディレクトリがいまいるディレクトリすなわちカレントディレクトリです。/home/hogeは、ユーザーhogeさんが自由につかえる領域で特別にホームディレクトリと呼びます。
上記表2に対応:
「less」コマンドは、ファイルの中身を表示するコマンドです。ファイルに何が書かれてあるか見たいときに利用します。
例:
~$ less this.txt
とすると、this.txtというファイルの中身を表示させます。less は1ページ以上の長い文章であるファイルを表示する際には、1ページずつ表示します。次のページを見るには
『スペース』キー、前のページにもどるには『b』(Backの意)を押します。『q』(Quitの意)を押せば表示を終了します。
上記表3に対応:
「cp」コマンドは、ファイルをコピー(複製)するコマンドです。ファイルを編集する前にオリジナルを壊してしまう場合を想定して、バックアップしておいた方が良いと思った場合等に便利です。
例:
~$ cp test1.txt test2.txt
とすると、test1.txtというファイルをtest2.txtというファイル名で複製(コピー)します。
上記表4に対応:
「rm」コマンドは、ファイルを削除するコマンドです。削除したいときに使いますが、本当になくなりますので、気をつけてください。
~$ rm test.txt
とすると、test.txtというファイルを削除します。
MacやWinのゴミ箱のような一時隔離場所に移動するわけではありませんので、削除してしまったファイルやディレクトリを復活させることはできません。当然ですが、何を消すか、しっかりとした意思と意識を持って「rm」コマンドを使いましょう。
上記表5と8に対応:
「mv」コマンドはファイルを移動するコマンドです。ファイルを別のディレクトリに移動、つまり保管場所を変更するときに利用します。
~$ mv test.txt docs
とすると、test.txtというファイルを docs ディレクトリ中に移動します。また、mvコマンドには、名前を変えることができる特殊な用法があります。
~$ mv test1.txt test2.txt
とすると、test1.txt と言うファイル名を(同じフォルダ内に移動して結果的に)test2.txt という名前に変更します。test1.txtを移動してファイル名をtest2.txtとしなさい。と命令していると理解すると納得できます。このときtest2.txt
というファイルが既に存在するときには、test2.txt は上書きされます。
mkdir |
make
directory から命名 |
上記表6に対応:
「mkdir」コマンドは、ディレクトリを作成するコマンドです。新しいディレクトリを作る時に利用します。
~$ mkdir docs
とすると、docs というディレクトリを新たに作成します。 ディレクトリはマックやWinのフォルダに相当します。
rmdir |
remove
directory から命名 |
上記表7に対応:
「rmdir」コマンドは、ディレクトリの削除を行うコマンドです。
~$ rmdir docs
とすると、docs というディレクトリを削除します。 ただし、このコマンドはディレクトリ内にファイルがない時しか使えませんので、通常は、
~$ rm -r docs
とすることが殆どです。-r のオプションはRecursively(リカーシブリー)を意味し、フォルダ中のファイルごとまとめての意味です。要するにディレクトリ毎一括削除しろというオプションです。
Linuxはユーザーからの命令を100%信頼するため、一度削除命令すると本当に消してしまいます。ゴミ箱などのような一時的な隔離場所に移動する訳ではありませんので、2度ともとに戻せません。
いかがでしたか。Linuxで普段頻繁に用いるコマンドは大体この程度です。たったこれだけで、皆さんが普段Windowsでやっていることは全てできてしまいます。なお、冒頭に紹介したとおり、Liunxには
man (コマンド名)とすれば、各コマンドの使い方を詳しく教えてくれます。暗記する必要はありません。決して難しいものではなく、誰にでもできる操作であることがご理解頂けたと思います。
|