59
自自自 PC 自自自自自自自自自 Linux 自自自自 自自自自自自自自 2015/12 自自 自自

自分のPcに仮想環境を作ってlinuxをインストールしてみよう

Embed Size (px)

Citation preview

自分の PC に仮想環境を作ってLinux をインストールしてみよう

2015/12佐野 尚之

注意事項 サーバー構築をメインの仕事でやっているわけではないのであんまり詳しいことは知りません。基本的に Windows Server で動作するプログラムの開発/運用をやっているので。 よく使うコマンドは、あくまで私がよく使うコマンドです。 今回は Linux のインストールと操作を慣れてもらうだけなのでユーザーを追加せずに root ユーザーで操作を行います。通常は一般ユーザーを追加して、管理者権限が必要なコマンドを実行する時に「 sudo 」を実行するコマンドを前に付与してコマンドを実行します。

2

アジェンダ 仮想マシンの作成 CentOS6.7 のインストール 仮想環境への Tera Term で SSH 接続してみよう CentOS6.7 の設定変更 よく使うコマンドの説明 vi エディタの使い方を覚えよう Linux 初心者にお勧めの本 参考 URL

3

仮想マシンの作成 「 Oracle VM VirtualBox 」をダブルクリックします。

4

仮想マシンの作成 「新規」をクリックします。

5

仮想マシンの作成 以下の情報を入力後に「作成」ボタンをクリックします。

6

仮想マシンの作成 「作成」ボタンをクリックします。

7

CentOS6.7 のインストール 「ストレージ」をクリックします。

8

CentOS6.7 のインストール 「仮想光学ディスクのファイルを選択」を選択します。

「 CentOS-6.7-i386-bin-DVD1.iso 」を選択後に「開く」ボタンをクリックします。

「 OK 」ボタンをクリックします。9

CentOS6.7 のインストール 「起動」をクリックします。

10

CentOS6.7 のインストール 「 Enter 」キーを押下します。

11

CentOS6.7 のインストール Tab キーで「 Skip 」に移動して「 Enter 」キーを押下します。

12

CentOS6.7 のインストール Tab キーで「 Skip 」に移動して「 Enter 」キーを押下します。

13

CentOS6.7 のインストール 「次」ボタンをクリックします。

14

CentOS6.7 のインストール 「キャプチャー」ボタンをクリックします。

15

CentOS6.7 のインストール 「 Japanese( 日本語 ) 」を選択後に「 Next 」ボタンをクリックします。

16

CentOS6.7 のインストール 「次」ボタンをクリックします。

17

CentOS6.7 のインストール 「基本ストレージデバイス」を選択後に「次」をクリックします。

18

CentOS6.7 のインストール 「はい・・・」ボタンをクリックします。

19

CentOS6.7 のインストール 「次」ボタンをクリックします。

20

CentOS6.7 のインストール 「システムクロックで UTC を使用」のチェックを外して「次」ボタンをクリックします。

21

CentOS6.7 のインストール 6 文字入力します。

「次」ボタンをクリックします。

「とにかく使用する」ボタンをクリックします。

22

CentOS6.7 のインストール 「すべての領域を使用する」ボタンをクリックします。

23

CentOS6.7 のインストール 「次」ボタンをクリックします。

「変更をディスクに書き込む」ボタンをクリックします。

24

CentOS6.7 のインストール 「 Basic Server 」と「今すぐカスタマイズ」を選択後に「次」ボタンをクリックします。

25

CentOS6.7 のインストール 「次」ボタンをクリックします。

26

CentOS6.7 のインストール 「デバイス」-「光学ドライブ」-「仮想ドライブからディスクを除去」を選択します。

「再起動」ボタンをクリックします。

27

仮想環境への Tera Term で SSH 接続してみよう Virtual Box の CentOS に root ユーザーでログイン

28

仮想環境への Tera Term で SSH 接続してみよう ONBOOT の値を「 no 」から「 yes 」変更 vi /etc/sysconfig/network-scripts/ifcfg-eth0

インターフェイスの再起動 service network restart

29

仮想環境への Tera Term で SSH 接続してみよう ネットワークをクリックします。

ポートフォワーディングをクリックします。

以下のアイコンをクリックします。

30

仮想環境への Tera Term で SSH 接続してみよう ホストポートに「 3333 」、ゲストポートに「 22 」を入力し、「 OK 」ボタンをクリックします。

31

仮想環境への Tera Term で SSH 接続してみよう 「 OK 」ボタンをクリックします。

「仮想マシン」-「閉じる」ー「電源オフ」を選択します。

32

仮想環境への Tera Term で SSH 接続してみよう 「電源オフ」ボタンをクリックします

「起動」をクリックします。

33

仮想環境への Tera Term で SSH 接続してみよう Tera Term をダブルクリックして起動します。

34

仮想環境への Tera Term で SSH 接続してみよう ホストに「 127.0.0.1:3333 」を入力し、「 OK 」ボタンをクリックします。

35

仮想環境への Tera Term で SSH 接続してみよう ユーザ名とパスフレーズを入力後に「 OK 」ボタンをクリックします。

36

仮想環境への Tera Term で SSH 接続してみよう 以下の画面が表示されたらログイン成功です。

37

よく使うコマンドの説明 再起動

reboot shutdown –r 時間

すぐに再起動の場合は「時間」のところに「 now 」を指定。

停止 halt shutdown –h 時間

38

よく使うコマンドの説明 現在の作業ディレクトリの位置を確認

pwd ・・・ Print Working Directory の略

ディレクトリの中身を確認 ls

ls –l( 詳細表示 ) 、 ls –a( 全て表示 ) をよく使う。 list の略 設定ファイルであるドットファイルは「 -a 」オプションで見ないと存在を確認できない。

ll ・・・ ls –l と同じ動き。どっかのファイルで登録されてるんだと思います。たぶん。

39

よく使うコマンドの説明 ファイルの中身を確認

cat ファイル名 ・・・ cat は concatenate( 繋げる ) の略。 cat –n ファイル名・・・行番号付きで表示。 less ファイル名 ・・・画面表示でページ表示を止めてくれる。 more ファイル名・・・画面表示でページ表示を止めてくれる。

http://d.hatena.ne.jp/midori_kasugano/20100121/1264032849 40

moreコマンドと less コマンドは、機能的にはほとんど同じ。ファイルを最後まで表示し終わった後、moreコマンドは自動的にプロンプトを表示するのに対し、 less コマンドは最後まで表示し終わってもユーザが qを入力しない限り、プログラムを終了しない点が異なる。

よく使うコマンドの説明 ログファイルを見る時に使う (tail 、 head)

マニュアル (man)

41

コマンド 意味tail ファイル名 ファイル末尾 10 行を表示。tail –n N ファイル名 ファイル末尾 N 行を表示。tail –f ファイル名 ファイルの追記を監視。head ファイル名 ファイルの先頭 10 行を表示。head –n N ファイル名 ファイルの先頭 N 行を表示。

コマンド 意味man 1 printf printf の 1 章のマニュアルを見る。man 3 printf printf の 3 章のマニュアルを見る。man –a printf すべての章のマニュアルを順番に表示。

よく使うコマンドの説明 ディレクトリの移動

cd

画面の表示をクリア clear

42

コマンド 意味cd /etc /etc ディレクトリに移動。

よく使うコマンドの説明 ディレクトリ作成

mkdir

ファイル/ディレクトリを削除 rm

43

コマンド 意味rm –rf /perf 「 f 」は削除許可を問い合わせない。

「 r 」はディレクトリをファイルを含めて再帰的に全て削除。rm -i /perf/test.sh 「 i 」は削除許可を必ず問い合わせる。

コマンド 意味mkdir -p /tmp/test/log 「 -p 」を指定すると複数階層を一度に作れる。

よく使うコマンドの説明 ファイルコピー

cp

ファイル移動、ファイル名の変更 mv

mv /usr/local/tomcat/bin/setenv.sh /usr/local/tomcat/bin/setenv.sh.org setenv.sh を setenv.sh.org というファイル名に変更。 44

コマンド 意味cp –i testfie testfile2 「 i 」は同名ファイルがある場合に上書き確認します。cp –a testfie testfile2 「 a 」はファイル構成やアクセス権限を変更しないでコピー。cp –r /base /base2 「 r 」はコピー元ディレクトリを再帰的にコピー。

よく使うコマンドの説明 ファイルやディレクトリの所有者を変更

chown

ファイルやディレクトリのアクセス権を変更 chmod

45

コマンド 意味chmod -R 777 wp-content

wp-content ディレクトリ内のすべてのファイルのパーミッションを777 に変更。

chmod 666 .htaccess .htaccess ファイルのパーミッションを 666 に変更。

コマンド 意味chown -R apache:apache /var/www/wordpress/

WordPress ディレクトリ所有者を Apache実行ユーザへ変更。

よく使うコマンドの説明

ファイルのパーミッション

ファイルタイプ

46

ファイルタイプ 所有者のパーミッション

グループのパーミッション

その他のパーミッション

d r w x r w x r w x

記号 解説- 通常ファイルd ディレクトリl シンボリックリンク

よく使うコマンドの説明 アクセス権

47

場所 記号 解説1 文字目 r 読み込み可

- 読み込み不可2 文字目 w 書き込み可

- 書き込み不可3 文字目 x 実行可

- 実行不可

よく使うコマンドの説明 ディレクトリのパーミッション

読み込み権限・・・ ls コマンドなどでファイルの一覧を見ることができる。 書き込み権限・・・ファイル操作ができる。 実行権限 ・・・ファイルへのアクセスができる。実行権限がないと読み書きできない。

48

パーミッション 8 進数--- 0--x 1-w- 2-wx 3r-- 4r-x 5rw- 6rwx 7

よく使うコマンドの説明 パッケージを取得してインストール / アップデート (yum)

ファイルの圧縮/解凍 (tar)

49

コマンド 意味yum install パッケージ名 パッケージをインストール。yum update インストールされているパッケージをアップデート。yum remove パッケージ名 パッケージをアンインストール。yum info パッケージ名 パッケージ情報を表示。

コマンド 意味tar cfvz archive.tar.gz dir/ ディレクトリ( dir)ごと gzip形式のアーカイブファイル

( archive.tar.gz)に圧縮。tar xfvz archive.tar.gz gzip形式で圧縮されたアーカイブファイル( archive.tar.gz)を展

開。

vi エディタの使い方を覚えよう よく使うもの

50

コマンド 意味vi ファイル名 指定したファイルを開く。存在しない場合は新規ファイル。i インサートモードに移行。コマンドモードに戻るには「 ESC 」を押す。:set number 行番号を表示。:wq ファイルを保存して終了。:q! 強制終了。/ 文字列 文字列パターンを下方向に検索。? 文字列 文字列パターンを上方向に検索。x 1 文字削除。yy カーソル行を 1 行コピー。 3 行コピーは「 3yy 」 。p カーソル行に貼り付け。dd 1 行削除。

Linux 初心者にお勧めの本[改定第 3版 ]Linux コマンドポケットリファレンス (2015/6/30 。技術評論社 )

サーバ / インフラエンジニア養成読本 基礎スキル編 (2015/6/1 。技術評論社 )

たった 2 日でわかる Linux サーバー CentOS 7.0 対応版 (2015/2/16 。秀和システム )

たった 2 日でわかる Linux CentOS 7.0 対応版 (2014/12/30 。秀和システム )

開発ツール徹底攻略 (2013/5/15 。技術評論社 )

51

参考 URLVirtualBox に CentOS7.0 をインストールして ssh ログイン + yum コマンドを使えるようにするまでhttp://d.hatena.ne.jp/shouh/20150429/1430283666VirtualBox (Windows) 上に CentOS 7 をインストールするhttp://qiita.com/100/items/80a899fbaeb1e82b3f67VirtualBox に CentOS をとりあえずインストールhttp://d.hatena.ne.jp/yk5656/20131208/1386476543VirtualBox のネットワーク設定と CentOS6.5 のインストールhttps://blog.apar.jp/linux/402/CentOS 6.6 LAMP サーバ インストールメモ【CentOS6.6+ Apache+MySQL+ PHP】https://blog.apar.jp/linux/793/VirtualBox上の仮想サーバーに Tera Term で SSH 接続http://w.builwing.info/2013/09/28/virtualbox上の仮想サーバーにtera-termでssh接続/CentOS7 でサービスの管理方法が変わった!http://qiita.com/haisaihiroki/items/c38cb3c0a331db9b6f69 52

参考 URL[ 指摘 ] 「 SELinux無効化でカーネルパニック - CentOS6 の備忘録」に対する指摘http://ishikawa84g.hatenadiary.jp/entry/20120229/1330442433viエディタの使い方http://net-newbie.com/linux/commands/vi.htmlVirtualBox:仮想マシンの作成で 64bit OS を選択可能にする方法http://did2memo.net/2015/07/10/virtualbox-64-bit-os/VirtualBox で 64ビット版OS をインストールできない場合の対処方法http://little-beans.net/howto/virtualbox-64bit-os/CPU の仮想化機構を有効化しないと Virtual Box で 64bit OS が選択できないhttp://totech.hateblo.jp/entry/2014/06/22/220050VirtualBox で 64bitVM を作れるようにする (Hyper-V有効な Windows 8.1 Pro編 )http://qiita.com/alaif-net@github/items/57a10b6e6d4de3b4583f 53

参考 URLVirtualBox上の CentOS に Teraterm から ssh 接続するhttp://skkskynw.hateblo.jp/entry/2015/10/12/011236Linux をシングルユーザーモードで起動するhttp://www.linuxmaster.jp/linux_skill/2012/10/linux-12.htmlCentOS6 で root のパスワードを忘れてしまった時の対処http://d.hatena.ne.jp/Loups-garous/20120911/1347366010root のパスワードをうっかり忘れてしまったhttp://itpro.nikkeibp.co.jp/article/COLUMN/20061030/252224/?rt=nocnt

54

( おまけ )Linux の特徴 UNIX 互換 OS

POSIX(IEEE で取り決められた UNIX の標準アプリケーション・インターフェイス ) 準拠 多くの UNIX系アプリケーションが動く ( はず ) 。

マルチユーザー環境 同時に複数のユーザーが Linux の端末を利用できる。

マルチタスク環境 同時に複数のプログラムが動作する。 Windows もそうですよね。

安定性 1つプログラムの問題は他のプログラムに影響を及ぼさない。 プログラムの作りが悪いと他のプログラムに影響が出る。

55

( おまけ )Linux の基本的な流れ 起動 ログイン シェルによる作業

別のユーザーや管理者権限でコマンドを実行する場合も サービスの起動/停止/自動起動設定 パッチ適用 (RedHat系の場合は yum コマンド )

スケジュール設定 (cron) ログアウト 再起動 停止

56

( おまけ )Linux へのログイン 端末が近くにある場合

ディスプレイの電源に入れる。 ユーザー名とパスワードを入力してログイン。 作業する。 exit コマンドでログアウト。 ディスプレイの電源を切る。

端末が近くにない場合 Tera Term や PuTTY( パティ ) などで接続。 ユーザー名とパスワードを入力してログイン。 作業する。 exit コマンドでログアウト。

57

( おまけ ) ユーザーについて 管理者ユーザー (root)

プロンプトは「 # 」 Linux システム関して全ての操作が行える。システムを破壊することもできる。

一般ユーザー プロンプトは「$」・・・環境によっては違うかもしれません。 決められた範囲内の作業しかできない。

<メモ> sudo( superuser do) コマンドで、指定した一般ユーザーに対して 特定の root コマンドを実行するのが一般的です。 「 su - 」で root ユーザーに切り替える方法もあります。

58

( おまけ ) シェル ログインシェル・・・ログインした時の最初のシェル。 シェルスクリプト・・実行したい命令をファイルに保存して実行するもの。 シェルの語源

貝殻 (shell) の意味。カーネル (核 ) をちょうど真珠を包み込むように位置するところ から名づけられたとする説が有力らしい。 シェルの種類

B シェル (sh) bash( バッシュ ) ・・・ B シェルが発展したもの。 C シェル (csh) tcsh ・・・ C シェルを改良したもの。 ksh ・・・ Korn シェル。 zsh ・・・ Z シェル。 ash ・・・ A シェル。

59