2017/10/10 通信処理ネットワーク研究室 河田直樹
今日は Linuxの環境作り と コマンドの紹介 をする.
環境作りではWindowsパソコンに仮想PCを立ち上げるためのソフトをインストールする.
立ち上げた仮想PCにはWindowsOSを入れればWindowsが、MacOSを入れればMacOSが使える.
そこに今回はCentOS(*.isoファイル)をインストールして使えるようにする.
環境構築ができたら来週からも触れるであろうLinuxコマンドについて学ぶ.
Linuxに少しでも興味を持ってくれたら嬉しい.
まず、使用するソフトとデータをダウンロードしよう.
仮想PC起動用ソフト 「VMWare Workstation Player」のダウンロード↓
VMWare Workstation Player ダウンロードサイト
LinuxのISOファイル「CentOS」のダウンロード↓
ディスクイメージの違いについてはこちらを参照↓
http://yuukiyg.hatenablog.jp/entry/2017/03/19/033948
(2018年11月10日現在の最新版[VMware:15.0.1]、[CentOS:1804]でも問題なく動作します。)
※このソフトは64ビット版のみ対応しているので、32ビットOSを使用している人がいたら別途対応します.
① 先ほど準備したVMWare Workstation Playerのインストーラ
VMware-player-14.0.0-6661328.exe
をダブルクリックで起動する.
② 起動して以下の画面が出たら、[次へ]をクリック
図1
③ 使用許諾契約書の同意にチェックを入れて、[次へ]をクリック
図2
④ 任意のインストール先を選択
拡張キーボードドライバにチェックを入れる(推奨)
[次へ]をクリック
図3
⑤ ここのチェック項目は任意でどうぞ
確認したら[次へ]をクリック
図4
⑥ 両方にチェックを入れる(推奨)
[次へ]をクリック
図5
⑦ そのまま[インストール]をクリック
図6
⑧ インストールが始まるので完了するまで待つ.
※完了後に再起動するため、待ち時間に作業途中のデータがあれば保存しておく.
図7
⑨ [完了]をクリック
図8
⑩ 以下の画面が出たら[はい]をクリックして再起動する.
以下の画面が出なくても手動で再起動する.
図9
ここではVMWare Workstation Playerで仮想PCを作り、そこにCentOSをインストールする手順を説明します.
「1-1. ソフトウェアのインストール」で手に入れたCentOSのISOファイルを用意します.
① 1-1でインストールしたVMWare Workstation Playerを起動する.
図10
② 初めて起動したときに以下の画面が出るので、「非営利目的でVMWare Workstation 14 Playerを無償で使用する」を選択して[続行]をクリック
図11
③ [完了]をクリック
図12
④ 起動画面右側の[新規仮想マシンの作成]をクリック
図13
⑤ 中央の 「インストーラ ディスクイメージファイル」を選択し、用意したCentOS-7-x86_64-Minimul-1708.iso を参照する.
確認できたら[次へ]をクリック
図14
⑥ マシン名とその場所を任意に決めて[次へ]をクリック
図15
⑦ 特にこだわりがなければそのまま[次へ]をクリック
図16
⑧ そのまま[完了]をクリックして仮想マシンを起動させる.
※これ以降、仮想マシンから実装マシンに切り替える場合は[Alt]+[Ctrl]を押す.
(マウスが仮想マシン内から出ない場合など)
図17
⑨ ポップアップで以下の画面が出ますがインストールは任意です
図18
⑩ 起動して以下の画面が出たら上の「Install CentOS 7」を矢印キーで選択し[Enter]で決定
図19
⑪ しばらくすると以下の画面に変わるので日本語を選択し、[続行]をクリック
図20
⑫ 次の画面(図21)でシステムの「インストール先」と「ネットワークとホスト名」の設定をする.
「インストール先」項目(図22)ではデバイスの選択を行い、チェックがついていることを確認して[完了]をクリック
「ネットワークとホスト名」(図23)項目では右側のスイッチをオンに切替
「接続済みです」が表示されていることを確認して[完了]をクリック
図21
図22
図23
⑬ 危険マークが消えてインストールできる状態になるので[インストール開始]をクリックする
図24
⑭ 以下の画面(図25)になりインストールが始まる(約10分)
インストール中に「ROOTパスワード」と「ユーザーの作成」を行う.
「ROOTパスワード」項目(図26)では任意のパスワード(※重要)を入力して[完了]をクリック
「ユーザー作成」項目(図27)では、名前とパスワードを入力する
ボックス2つにチェックがついていることを確認して[完了]をクリック
時間が余ったら → 【1-3. Linuxとは】
図25
図26
図27
⑮ インストールが終わり[再起動]をクリックすることでLinuxが使えるようになる.
図28
⑯ 再起動が完了すると以下の画面(図29)になる.
"localhost login:"に続いて「root」と入力し[Enter]
⑭で決めたrootのパスワード(画面上には表示されない)を入力し[Enter]
ログインが成功すると"[root@localhost ~]#"と表示される(図31).
これによりコマンドを入力し操作することができるようになった.
図29
図30
図31
※exitでログアウト処理が可能
また、作成したユーザーでのログインも可能
ログインは通常はユーザーを使い、インストールなどシステムメンテナンス時はrootで行う.
ここではLinuxについて説明する.
Linuxの歴史 と 基本的な操作 について紹介していく.
1960年頃にアメリカでMulticsというOSが作られた.
しかし、Multicsは機能が多すぎたため、当時のコンピュータのスペックではろくに動かなかった.
そこで機能を減らしてできたシンプルなOSがUNICSだ.
後に名前がUNIXとなった.
Linuxは1991年にリーナス・トーバルズ(当時大学生)によって開発されたOSだ.
彼は学校の授業で渡されたUNIXの機能が不足していると感じ、改造し始めた.
UNIXは当時著作権の問題もあり、新しく独立したOSを作った.
それがLinuxである.
UNIX系OSはライセンスで縛られていたため、自由な公開や改良がしにくかった.
反面、Linuxはオープンソースで自由に改変もできるし、それを使った商売もできる.
また、導入・運用コストが安いこと、特定メーカーの独占を回避できること、
移植性が高いことなどの理由から急速な普及をしており、代表的OSの一つになっている.
GUI(Graphical User Interface)とは、ファイル操作をグラフィカルに行うインターフェイスのこと.
Windowsのマウス操作やスマートフォンのタッチ操作などがこれにあたる.
CUI(Character User Interface)とは、すべての操作をキーボードから行うインターフェイスのこと.
Linuxでは基本的にCUIでキーボードのみでの操作となる.
図32
画像はこちらから引用 (illustration by Youko Watanabe)
以下のような画面をコンソール画面と言い、コマンドを使ってパソコンを操作することができる.
図33
まず最下行に表示されているものの説明だが、
先頭の[]内は[ユーザー名@ホスト名 カレントディレクトリ]を表している.
「~(チルダ)」はホームディレクトリを指す.
この場合は「localhostのdspとしてホームディレクトリ内で操作する」という意味だ.
[ ]のあとの $ はプロンプトを指し、rootの場合は $ の代わりに # が表示される.
$ や # は「この後にコマンドを入れる」という解釈でよい.
ここにコマンドを入れることで操作ができる.
基本的なコマンドについては【1-5. コマンドを学ぶ】で紹介する.
デスクトップ環境(GUI)の構築手順を説明する.
① Linuxを起動し、rootでログインする.
図34
② コマンドラインに以下を入力(↵はEnterキーを表す.)
# yum -y groupinstall "GNOME Desktop" ↵
図35
③ デスクトップ環境のダウンロードとインストールが終わるまで待つ(約15分)
待っている間に→【1-5. コマンドを学ぶ】
図36
④ 「Comple!」 が表示されれば完了
続けてデスクトップを起動するために
# startx ↵
をコマンドラインに入力する.
図37
⑤ しばらくするとデスクトップ(図38)が起動するが、初期設定画面(図39)が出るまで待つ.
日本語(自信のある人は英語)を選択して[次へ]をクリック
図38
図39
⑥ 一番上の日本語(かな漢字)を選択して[次へ]をクリック
図40
⑦ プライバシーの位置情報サービスは特に使わないためオフを推奨
確認して[次へ]をクリック
図41
⑧ オンラインアカウントも特にこだわりがなければ必要ないので[スキップ]をクリック
図42
⑨ [CrntOS Linuxを使い始める]をクリックして完了
図43
⑩ 左上より[Applications]→[Favorites]→[Terminal]を選択する.
図44
⑪ Terminalが起動したら
# systemctl set-default graphical.target ↵
図45
⑫ エラーが出なければ
# shutdown -r now ↵
※再起動します.
図46
⑫ 再起動すると以下の画面(図47)が出るので
ライセンス項目画面(図48)でライセンスに同意し、[設定の完了]をクリック
図47
図48
⑫ 1-2 ⑭で作成したユーザーにログインする.
(「アカウントが見つかりませんか?」からrootとしてログインできる.)
ログインすると⑩のように端末を呼び出すことによりコマンドが書けるようになる.
もしくは[Ctrl]+[Alt]+[F2]でコンソール画面に移動することもできる.
図49
コマンドにはたくさんの種類があり全ては紹介しきれない.
ここでは今日使ったコマンドと基本的なコマンドについて紹介する.
yum -y groupinstall "GNOME Desktop"
「yum」はパッケージを取得してインストールするコマンド
「-y」など「-」や「--」のつくものはオプションといい、付随機能を呼び出すもので、
今回の場合yesかnoか応答を必要としたときに全てyesで返すという機能だ.
「groupinstall」はパッケージを1つではなく、決められたグループをインストールするコマンドだ.
「"GNOME Desktop"」はインストールの対象となるパッケージのグループである.
startx
「startx」はXウィンドウシステムを起動するコマンド
これによりGUIが起動する.
systemctl set-default graphical.target
「systemctl」は systemd マネージャ(様々なサービス)のコントロールをするコマンドだ.
「set-default」でデフォルトモード(起動時の優先度)を変更する.
「graphical.target」を指定することで、起動中モードの優先度を上げることになり、
次回起動時は優先度の高いモードを起動する.
今回はGUIモードの優先度を上げたので、起動時にCUIではなくGUIの起動が優先された.
shutdown -r now
「shutdown」はシステムをシャットダウンするコマンド
「-r」オプションにより再起動を指定できる.
「now」オプションで待ち時間を取らずにすぐにシャットダウンに入る.
各オプションについては使用頻度の高いものを紹介する.
root権限で「コマンド'」を実行するためのコマンド
【実行結果】
[dsp@localhost ~]$ yum update-minimal Loaded plugins: fastestmirror, langpacks You need to be root to perform this command. //権限がないので失敗 [dsp@localhost ~]$ sudo yum update-minimal Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: ftp.jaist.ac.jp * extras: ftp.jaist.ac.jp * updates: ftp.jaist.ac.jp No Packages marked for minimal Update //成功
ファイルやディレクトリの情報を表示するコマンド
「-l」オプションはファイル名だけでなくファイルタイプなどの詳細も表示する.
【実行結果】
[dsp@localhost ~]$ ls Desktop Documents Downloads Music Pictures Public Templates Videos [dsp@localhost ~]$ ls -l total 0 drwxr-xr-x. 2 dsp dsp 6 Oct 9 18:27 Desktop drwxr-xr-x. 2 dsp dsp 6 Oct 9 18:27 Documents drwxr-xr-x. 2 dsp dsp 6 Oct 9 18:27 Downloads drwxr-xr-x. 2 dsp dsp 6 Oct 9 18:27 Music drwxr-xr-x. 2 dsp dsp 6 Oct 9 18:27 Pictures drwxr-xr-x. 2 dsp dsp 6 Oct 9 18:27 Public drwxr-xr-x. 2 dsp dsp 6 Oct 9 18:27 Templates drwxr-xr-x. 2 dsp dsp 6 Oct 9 18:27 Videos
現在のディレクトリの場所を絶対パスで表示するコマンド
【実行結果】
[dsp@localhost ~]$ pwd /home/dsp
新しくディレクトリを作成するコマンド
【実行結果】
[dsp@localhost ~]$ ls Desktop Documents Downloads Music Pictures Public Templates Videos [dsp@localhost ~]$ mkdir hoge [dsp@localhost ~]$ ls Desktop Documents Downloads hoge Music Pictures Public Templates Videos
ディレクトリを移動するためのコマンド
使用例
「cd ../」 : 一つ上のディレクトリへ移動
「cd ~」 または「cd」 : 自身のホームディレクトリへ移動
【実行結果】
[dsp@localhost ~]$ ls Desktop Documents Downloads hoge Music Pictures Public Templates Videos [dsp@localhost ~]$ cd hoge [dsp@localhost hoge]$ pwd /home/dsp/hoge [dsp@localhost hoge]$ cd [dsp@localhost ~]$ pwd /home/dsp
nanoはnanoエディタ(テキストエディタ)を呼び出すコマンド
例えば「nano hoge.txt」を入力すると以下のようにエディタが起動する(図50).
図50
エディタの下部にはコマンドが書かれている(^は[Ctrl]を示す).
エディタで編集が終わったあと、[Ctrl]+[X]を押すと変更を保存するか質問される(図51).
図51
y(yes)を選択すると保存するファイル名を聞かれるので、確認して[Enter]で保存される(図52).
図52
なお、日本語環境であればWindowsボタン+スペースを押すことで英字入力と日本語入力を切り替えられる.
【実行結果】
[dsp@localhost ~]$ nano hoge.txt [dsp@localhost ~]$ ls Desktop Downloads hoge.txt Pictures Templates Documents hoge Music Public Videos
ファイルを連結して標準出力に出力するコマンド
ここでは単に1つのファイルの中身を出力するために使用する.
【実行結果】
[dsp@localhost ~]$ cat hoge.txt THIS IS TEST FOR LINUX 2017/10/10
ファイルやディレクトリの移動・名前の変更をするコマンド
【実行結果】
[dsp@localhost ~]$ ls Desktop Downloads hoge.txt Pictures Templates Documents hoge Music Public Videos [dsp@localhost ~]$ mv hoge.txt hoge [dsp@localhost ~]$ ls Desktop Documents Downloads hoge Music Pictures Public Templates Videos [dsp@localhost ~]$ cd hoge [dsp@localhost hoge]$ ls hoge.txt
ファイルやディレクトリをコピーするコマンド
【実行結果】
(※ ~/ はホームディレクトリを指す.)
[dsp@localhost ~]$ ls Desktop Documents Downloads hoge Music Pictures Public Templates Videos [dsp@localhost ~]$ cp hoge/hoge.txt ~/ [dsp@localhost ~]$ ls Desktop Downloads hoge.txt Pictures Templates Documents hoge Music Public Videos
ファイルやディレクトリを削除するコマンド
「-r」オプションでディレクトリを指定することができる.
【実行結果①】
[dsp@localhost hoge]$ ls hoge.txt [dsp@localhost hoge]$ rm hoge.txt [dsp@localhost hoge]$ ls
【実行結果②】
[dsp@localhost ~]$ ls Desktop Downloads hoge.txt Pictures Templates Documents hoge Music Public Videos [dsp@localhost ~]$ rm hoge rm: cannot remove ‘hoge’: Is a directory //失敗 [dsp@localhost ~]$ rm -r hoge [dsp@localhost ~]$ ls Desktop Documents Downloads hoge.txt Music Pictures Public Templates Videos //成功
次週以降使うRaspberry PiもLinuxで動かすので、上記の基本的なコマンドは覚えておこう.