Windows10においてTortoiseSVNを使ってBacklogのSubversionを使う方法

  • 環境
    • OS : Windows10 64bit
    • インストールするもの : TortoiseSVNhttps://static.osdn.net/thumb/g/0/26/36x36_0.gif
    • 使うSVN : BacklogのSVN

Subversionの概要

バージョン管理システムというものがあります。
e-words.jp

バージョン管理システムの1つがSubversionです。
e-words.jp

今回は、SubversionリポジトリWindowsマシンにCheckoutして使います。
e-words.jp

Checkoutとは・・・
リポジトリから作業コピーを取得する作業
作業コピーのチェックアウト

TortoiseSVNをインストールする

TortoiseSVNは、Windows用のSubversionクライアントツールです。

  1. サイトのページを表示します。ja.osdn.net
  2. 環境にあったものをダウンロードします。f:id:ponsuke_tarou:20170809224359p:plain
  3. ダウンロードしたファイルをダブルクリックしてインストールを開始します。
  4. [Next]ボタンを押下して進めます。f:id:ponsuke_tarou:20170809225031j:plainf:id:ponsuke_tarou:20170809225036j:plain
  5. [Brows]ボタンを押下するとインストール先を指定できます。f:id:ponsuke_tarou:20170809225040j:plainf:id:ponsuke_tarou:20170809225045j:plain
  6. [Next]ボタンを押下して進めます。f:id:ponsuke_tarou:20170809225049j:plainf:id:ponsuke_tarou:20170809225053j:plainf:id:ponsuke_tarou:20170809225057j:plainf:id:ponsuke_tarou:20170809225100j:plain

ポイント
インストールしたTortoiseSVNはクリックしたりスタートメニューから選択してアプリを起動しません。インストールされるとマウスで右クリックして出てくるメニューにTortoiseSVNの項目が追加されます。その項目からアプリを起動していきます。

BacklogのSubversionリポジトリをCheckoutする

  1. リポジトリをダウンロードしたいフォルダをエクスプローラーで表示します。
  2. 右クリックするとメニューに表示される[SVN Checkout...]を選択します。f:id:ponsuke_tarou:20170809235506j:plain
  3. ダイアログが開きます。f:id:ponsuke_tarou:20170809235608j:plain
  4. [URL of repository]にBacklogからコピーしたSubversionリポジトリのURLを貼り付けます。f:id:ponsuke_tarou:20170809234914p:plain
  5. [OK]ボタンを押下します。
  6. IDとパスワードの入力を求められた場合は、Backlogへのログインと同じものを入力します。
  7. リポジトリに格納されているものの大きさにもよりますが、checkoutが終わるまでそれなりに待ちます。f:id:ponsuke_tarou:20170810001534j:plain

作業コピーのファイルを見る

  1. 他の人が更新していることがあるので必ず[http://ponsuke-tarou.hatenablog.com/entry/2017/08/12/120539#Update:title=[Update]します。]
  2. Subversion以外のファイル同様に見ることができます。

作業コピーのファイルを更新する

  1. [http://ponsuke-tarou.hatenablog.com/entry/2017/08/12/120539#Update:title=[Update]します。]
  2. ファイルの内容を更新します。
  3. [http://ponsuke-tarou.hatenablog.com/entry/2017/08/12/120539#Commit:title=[Commit]します。]

Subversionの基本操作

Update

Updateとは・・・
サーバーから作業コピーに変更を取り込む作業
他人の変更に伴う作業コピーの更新

  1. Checkout中のフォルダを選択して右クリックします。
  2. [SVN Update]を選択します。f:id:ponsuke_tarou:20170812104637j:plain
  3. https://tortoisesvn.net/docs/release/TortoiseSVN_ja/images/UpdateFinished.png

Commit

Commitとは・・・
サーバへ作業コピーの変更を送信すること
変更のリポジトリへのコミット

  1. 対象のフォルダを選択して右クリックします。
  2. [TortoiseSVN] > [Commit]を選択します。
  3. コミットダイアログが表示されます。http://tgk.zkzk.org/image/svn/tsvn_4-8.png
  4. コメントを記載します。
    • 1行目:BacklogチケットのID・タイトル (必須)
    • 2行目:空行
    • 3行目:作業もしくは変更内容の要約
    • 4行目以降:要約に対する補足説明 (任意)
  5. [OK]ボタンを押下します。
  6. https://tortoisesvn.net/docs/nightly/TortoiseSVN_ja/images/CommitProgress.png

Crean up

Crean upとは・・・
Subversion コマンドが正常に終了しなかったなどで起こる作業コピーの矛盾状態を解決する。
クリーンアップ

  1. 対象のフォルダを選択して右クリックします。
  2. [TortoiseSVN] > [Clean up...]を選択します。
  3. https://tortoisesvn.net/docs/nightly/TortoiseSVN_ja/images/Cleanup.png
  4. [OK]ボタンを押下します。
  5. f:id:ponsuke_tarou:20170812103855j:plain

エラーになったら

TortoiseSVN\bin\SendRpt.exe not found.

f:id:ponsuke_tarou:20170812101207j:plain

  • 対応 : パソコンを再起動します。

stackoverflow.com

Additional errors:

f:id:ponsuke_tarou:20170810001914j:plain

  • 対応 : [Clean up]後に[Update]します。

REPORT request on {URL} failed

f:id:ponsuke_tarou:20170812101022j:plain

  • 対応 : [Clean up]後に[Update]します。

その他

d.hatena.ne.jp

MacのVirtualBoxに作ったCentOS7にRAS鍵の認証で接続できるように設定する

MacVirtualBoxに作ったCentOSを少し便利にできたので、いよいよ鍵認証のログイン許可を設定します。
ponsuke-tarou.hatenablog.com

  • 目的 : Linux環境でSSHの鍵作成から設定まで勉強したい!
  • 環境

設定ファイル(sshd_config)のバックアップを取る

設定に失敗したり元の設定に戻したくなった時のためにバックアップを取ります。

  1. rootとしてログインします。
  2. 設定ファイルの存在を確認します。
  3. 設定ファイルをコピーしてバックアップを取ります。
$ ssh root@192.168.0.6
root@192.168.0.6's password: 
Last login: Mon Jul 31 23:34:36 2017 from 192.168.0.7
# ls -la /etc/ssh/
<省略>
-rw-------.  1 root root       4361  4月 12 23:05 sshd_config
# cp /etc/ssh/ssh_config /etc/ssh/ssh_config.20170731bak
# ls -la /etc/ssh/
<省略>
-rw-------.  1 root root       4361  4月 12 23:05 sshd_config
-rw-------.  1 root root       4361  8月  1 00:12 sshd_config.20170731bak

設定ファイル(sshd_config)を編集する

  1. viエディタで開きます。
  2. 以下のコメントアウトを外します。なければ追記します。
    • RSAAuthentication yes
    • RhostsRSAAuthentication no
    • PubkeyAuthentication yes
    • AuthorizedKeysFile .ssh/authorized_keys
  3. 保存して閉じます。
  4. sshdサービスを再起動します。
# vi /etc/ssh/ssh_config
▼▼▼▼▼▼▼▼▼▼▼▼▼ssh_configの中身▼▼▼▼▼▼▼▼▼▼▼▼▼
#       $OpenBSD: ssh_config,v 1.28 2013/09/16 11:35:43 sthen Exp $
<省略>
# Host *
#   ForwardAgent no
#   ForwardX11 no
   RhostsRSAAuthentication no # RHosts認証を許可しない
   RSAAuthentication yes # RAS認証を許可する
   PubkeyAuthentication yes # 公開鍵認証を許可する
   AuthorizedKeysFile .ssh/authorized_keys # 公開鍵登録ファイルのパスと名前
#   PasswordAuthentication yes
#   HostbasedAuthentication no
<省略>
▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲
# systemctl restart sshd

MacのVirtualBoxに作った仮想マシンを少し便利にする

MacVirtualBoxに作った仮想マシンVirtualBox Guest Additionsをインストールしたので便利に使えるように設定します。
ponsuke-tarou.hatenablog.com

  • 目的 : Linux環境でSSHの鍵作成から設定まで勉強したい!
  • 環境
    • VirtualBox : Version 5.1.22 r115126 (Qt5.6.2)
    • ホストOS : macOS Sierra Virsion 10.12.5
      • 操作は基本的にホストOSからTerminalでSSH接続して行いました。
    • ゲストOS : CentOS Linux 7.3.1611(Core)
    • VirtualBox Guest Additions : 5.1.22 r115126

ローケルとキーボードを設定する

日本語のキーボードになるようにします。

e-words.jp

  1. ローケルを日本語に設定します。
  2. キーボードを日本語のキーマップ「jp106」に設定します。
# 最初の状態を確認する
$ localectl status
   System Locale: LANG=ja_JP.UTF-8
       VC Keymap: jp
      X11 Layout: jp

# ローケルを日本語に設定する
$ sudo localectl set-locale LANG=ja_JP.utf8

# ローケルの設定ファイルを確認する
$ cat /etc/locale.conf 
LANG=ja_JP.utf8

# 利用可能な日本語のキーマップを確認する
$ localectl list-keymaps | grep jp
jp
jp-OADG109A
jp-dvorak
jp-kana86
jp106

# キーマップを設定する
$ sudo localectl set-keymap jp106

# キーマップの設定ファイルを確認する
$ cat /etc/vconsole.conf
KEYMAP=jp106
FONT=latarcyrheb-sun16

# 変更後の状態を確認する
$ localectl status
   System Locale: LANG=ja_JP.utf8
       VC Keymap: jp106
      X11 Layout: jp
       X11 Model: jp106
     X11 Options: terminate:ctrl_alt_bksp

ホストOSとゲストOSでコピーバッファを共有できるようにする

コピペができたほうが便利なのでコピーバッファを共有します。

  1. Oracle VM VirtualBox Managerで対象のゲストOSを選択し、[General]リンクを押下します。f:id:ponsuke_tarou:20170723223530p:plain
  2. [Advanced]を押下し、[Shared Clipboard :]で「Bidirection」を選択します。f:id:ponsuke_tarou:20170723223610p:plain
  3. [OK]ボタンを押下します。

画面を大きくする

老化のせいか小さいと見づらいので画面を大きくします。

  1. 設定ファイルをviで開きます。
  2. GRUB_CMDLINE_LINUX」を探します。
  3. 設定値にに「vga=***」を追加します。
$ sudo vi /etc/default/grub
▼▼▼▼▼▼▼▼▼▼grubの中身▼▼▼▼▼▼▼▼▼▼
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet vga=771" <------ ここ
GRUB_DISABLE_RECOVERY="true"

MacのVirtualBoxに作った仮想マシンへVirtualBox Guest Additionsをインストールする

MacVirtualBoxに作った仮想マシンへ他のPCからもアクセスできるようになったので、仮想マシンを少し便利に使うためのVirtualBox Guest Additionsをインストールします。
ponsuke-tarou.hatenablog.com

  • 目的 : Linux環境でSSHの鍵作成から設定まで勉強したい!
  • 環境
    • VirtualBox : Version 5.1.22 r115126 (Qt5.6.2)
    • ホストOS : macOS Sierra Virsion 10.12.5
      • 操作は基本的にホストOSからTerminalでSSH接続して行いました。
    • ゲストOS : CentOS Linux 7.3.1611(Core)
    • インストールするVirtualBox Guest Additions : 5.1.22 r115126

1. Guest Additionsに必要なパッケージをインストールする

CentOSを起動します。

kernel-develをインストールします。

# OSのカーネルのバージョンと、kernel-devel のバージョンが揃えるためにupdate
$ sudo yum update
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.nara.wide.ad.jp
 * extras: ftp.tsukuba.wide.ad.jp
 * updates: ftp.tsukuba.wide.ad.jp
No packages marked for update

# CentOSのカーネルのバージョン
$ uname -r
3.10.0-514.26.2.el7.x86_64

$ sudo yum install kernel-devel 
<省略>
インストール:
  kernel-devel.x86_64 0:3.10.0-514.26.2.el7                                                                                                                   

依存性関連をインストールしました:
  perl.x86_64 4:5.16.3-291.el7                     perl-Carp.noarch 0:1.26-244.el7                   perl-Encode.x86_64 0:2.51-7.el7                        
  perl-Exporter.noarch 0:5.68-3.el7                perl-File-Path.noarch 0:2.09-2.el7                perl-File-Temp.noarch 0:0.23.01-3.el7                  
  perl-Filter.x86_64 0:1.49-3.el7                  perl-Getopt-Long.noarch 0:2.40-2.el7              perl-HTTP-Tiny.noarch 0:0.033-3.el7                    
  perl-PathTools.x86_64 0:3.40-5.el7               perl-Pod-Escapes.noarch 1:1.04-291.el7            perl-Pod-Perldoc.noarch 0:3.20-4.el7                   
  perl-Pod-Simple.noarch 1:3.28-4.el7              perl-Pod-Usage.noarch 0:1.63-3.el7                perl-Scalar-List-Utils.x86_64 0:1.27-248.el7           
  perl-Socket.x86_64 0:2.010-4.el7                 perl-Storable.x86_64 0:2.45-3.el7                 perl-Text-ParseWords.noarch 0:3.29-4.el7               
  perl-Time-HiRes.x86_64 4:1.9725-3.el7            perl-Time-Local.noarch 0:1.2300-2.el7             perl-constant.noarch 0:1.27-2.el7                      
  perl-libs.x86_64 4:5.16.3-291.el7                perl-macros.x86_64 4:5.16.3-291.el7               perl-parent.noarch 1:0.225-244.el7                     
  perl-podlators.noarch 0:2.5.1-3.el7              perl-threads.x86_64 0:1.87-4.el7                  perl-threads-shared.x86_64 0:1.43-6.el7                

完了しました!

# kernel-develのカーネルのバージョンを確認する
$ ls -la /usr/src/kernels/
合計 4
drwxr-xr-x.  3 root root   40  7月 18 00:57 .
drwxr-xr-x.  4 root root   58  7月 18 01:34 ..
drwxr-xr-x. 22 root root 4096  7月 18 00:57 3.10.0-514.26.2.el7.x86_64

gccとbzip2コマンドをインストールします。

$ sudo yum install bzip2
<省略>
インストール:
  bzip2.x86_64 0:1.0.6-13.el7                                                                                                                                 

完了しました!

$ sudo yum install gcc
<省略>
インストール:
  gcc.x86_64 0:4.8.5-11.el7                                                                                                                                   

依存性関連をインストールしました:
  cpp.x86_64 0:4.8.5-11.el7    glibc-devel.x86_64 0:2.17-157.el7_3.4  glibc-headers.x86_64 0:2.17-157.el7_3.4  kernel-headers.x86_64 0:3.10.0-514.26.2.el7 
  libmpc.x86_64 0:1.0.1-3.el7  mpfr.x86_64 0:3.1.1-4.el7             

完了しました!

2. Guest Additionsをインストールする

[Devices] > [Insert Guest Additions CD image...]を選択します。

[VBoxGuestAdditions.iso]が追加されたことを確認します。

f:id:ponsuke_tarou:20170723175156p:plainf:id:ponsuke_tarou:20170723175204p:plain

マウントしてインストールします。

# マウント用のディレクトリを作成します。
$ sudo mkdir /mnt/cdrom/

# マウントします
$ sudo mount /dev/cdrom /mnt/cdrom/
mount: /dev/sr0 is write-protected, mounting read-only

# 中身を確認します
$ ls /mnt/cdrom/
32Bit  AUTORUN.INF  VBoxLinuxAdditions.run    VBoxWindowsAdditions-amd64.exe  VBoxWindowsAdditions.exe  cert
64Bit  OS2          VBoxSolarisAdditions.pkg  VBoxWindowsAdditions-x86.exe    autorun.sh                runasroot.sh

# インストールします
$ sudo sh /mnt/cdrom/VBoxLinuxAdditions.run
Verifying archive integrity... All good.
Uncompressing VirtualBox 5.1.22 Guest Additions for Linux...........
VirtualBox Guest Additions installer
Removing installed version 5.1.22 of VirtualBox Guest Additions...
Copying additional installer modules ...
Installing additional modules ...
vboxadd.sh: Starting the VirtualBox Guest Additions.

もし、ここで「Could not find the X.Org or XFree86 Window System, skipping.」という表示があっても記にせず進めます。
qiita.com

CentOS7を再起動します。

$ sudo systemctl reboot
Connection to 192.168.0.6 closed by remote host.
Connection to 192.168.0.6 closed.

3. Guest Additionsのバージョンを確認する

$ modinfo vboxguest
filename:       /lib/modules/3.10.0-514.26.2.el7.x86_64/misc/vboxguest.ko
version:        5.1.22 r115126
license:        GPL
description:    Oracle VM VirtualBox Guest Additions for Linux Module
author:         Oracle Corporation
rhelversion:    7.3
srcversion:     E747E9F0126BD23943BF4B1
alias:          pci:v000080EEd0000CAFEsv00000000sd00000000bc*sc*i*
depends:        
vermagic:       3.10.0-514.26.2.el7.x86_64 SMP mod_unload modversions 

他の方法もこちらで紹介されていました。
qiita.com

SASSの基本を理解するための講習会

前提の環境

なぜSASSを使うのだろう?と思ったら

SASSのメリットを実感するには書き方の理解が大切です。
SASSの書き方を勉強して下さい。
lifequest-blog.com

blog.nest-online.jp

qiita.com

英語が読めるなら本家サイトへGo!です。
sass-lang.com

SASSを使える環境構築

  1. RubyGemsをインストールします。qiita.com
  2. Conpassとbootstrap-sassをインストールします。qiita.com
    • 「おまけ」部分は基本的に不要です。

SASSの構成

親ディレクトリ
├ css
|├ *.css <------ *.sassファイルをコンパイルして出力される
|└ *.css.map <------ *.sassファイルをコンパイルして出力される
└ sass
 ├ *.scss <------ このファイルを編集する。CSSと同じような記述が可能。
 └ sass.bat <------ *.scssファイルの状態を監視して保存を検知したらコンパイルしてくれるバッチ

スタイルを編集する方法

① *.scssの監視を開始する

  1. sass.batを起動します。Eclipseのプロジェクトエクスプローラーなどでダブルクリックしても起動します。
  2. コマンドプロンプトが起動して *.scssファイルの監視がはじまります。

② *.scssファイルを編集する

追加・変更・削除したい内容を*.scssファイルに記述して保存します。
sass.batを止めるまでsassディレクトリ配下の*.sassファイルはどれを何回更新してもOKです。
書き方は勉強して下さい。
tetra-themes.com

コンパイルでエラーがないことを確認する

  1. 表示されたコマンドプロンプトなどを見る
  2. 以下のようにエラーなく出力されていることを確認する
>>> Change detected to: sass/{ファイル名}.scss
      write css/{ファイル名}.css
      write css/{ファイル名}.css.map

④ *.scssの監視を終了する

  1. 表示されたコマンドプロンプトで「Ctrl + C」を押下します。
  2. コマンドプロンプトが閉じて監視がおわります。

⑤ *.cssコンパイル結果を確認する

  1. コンパイルで出力された*.cssを見ます。
  2. 編集した内容のみ変更されていることを確認します。

ポイント : SourceTreeなどGitのツールやコマンドを使って差分を確認すると楽できます。

コンパイルで出力される物を知る

*.css

スタイルシートです。
SASSを導入している場合は、このファイルを直接編集することは決してなりません!

直接編集すると恐ろしいことが!例えば・・・

  1. Aさんが*.cssを直接編集する
  2. Aさんがテストして変更内容を確認する
  3. Bさんが*.scssを編集してコンパイルする
  4. *.cssは再出力されてAさんが編集した内容は消える
  5. テストが終わったはずのAさんの編集内容は無くなりデグレとなる・・・

*.css.map

これは、ソースマップファイルといいます。

ソースマップファイルは、SASSだけに存在するわけではありません。
lealog.hateblo.jp

ソースマップファイルがあればブラウザで表示した時に*scssファイルのどこにスタイルが記載されているかわかります。
blog.webcreativepark.net

Gitなどで管理していた時に大人の事情でソースマップファイルはコミットはしない場合があります。
そんな場合は、.gitignoreなどに定義して誤ってコミットされることを防ぎます。

*.scssc

これは、キャッシュファイルです。

キャッシュファイルもソースマップファイル同様にコミットはしない場合があります。
そんな場合は、やはり.gitignoreなどに定義して誤ってコミットされることを防ぎます。

バッチファイルを知る

cd /d %~dp0
cd ..
sass --watch sass:css --style expanded -E utf-8

qiita.com

コンパイル時にエラーが出たら原因を調べて解決するべし

Invalid UTF-8 character {Unicodeのバイト}

原因 : *.scssファイルの文字コードが「UTF-8」以外で日本語が記載されています。
対応 : ファイルの文字コードを「UTF-8」にして下さい。

Invalid CSS after "...style-type none": expected "{", was ";")

原因 : スタイル定義の書き方が誤っている(このエラーの場合「list-style-type: none;」の「:」がない)
対応 : 対象となっている行の書き方を修正して下さい。

EISDIR: Is a directory @ io_fread - sass

原因 : 監視ではなくコンパイルをするのにディレクトリを指定している
対応 : コンパイルであればファイル、監視であればファイルまたはディレクトリを指定する

$ sass sass:css <-------- 「--watch」オプションがないのでコンパイル
Errno::EISDIR: Is a directory @ io_fread - sass
  Use --trace for backtrace.
$ sass sass/style.scss:css/style.css <--------- コンパイルはファイルを指定する

Error: Undefined variable: "${定義されていない変数}".

原因 : 定義されていない変数が使われている
対応 : どの変数を記載しようとしているのか、定義してから使用しているのか見直して下さい。

$ sass sass/style.scss:css/style.css
Error: Undefined variable: "$widthpx".
        on line 11 of sass/style.scss, in `width'
        from line 41 of sass/style.scss
  Use --trace for backtrace.

$ cat sass/style.scss <--------- 修正前
<省略>
@mixin width($width) {
    width: $widthpx; <-------------- width: 10px;的なノリで記載したが「$widthpx」という変数になった。
}
<省略>

$ cat sass/style.scss <--------- 修正後
<省略>
@mixin width($width) {
    width: $width + px;
}
<省略>

$ sass sass/style.scss:css/style.css <------ エラーなくコンパイル完了

その他

原因 : 調べる

調査方法① メッセージをよく読む
調査方法② トレースしてみる
$ cd {親ディレクトリ}
$ sass --trace sass:css
調査方法③ メッセージを完コピしてググる

MacのVirtualBoxに作った仮想マシンへローカルネットワークにあるWindows10からアクセスできるようにする

MacVirtualBoxに作った仮想マシンへホストOSから接続できるようにしたので、他のPCからもアクセスできるようにします。
ponsuke-tarou.hatenablog.com

タイトルの「ローカルネットワークにある」は今回「お家で使っているLANにつながっている」ということです。

仮想マシンのアダプダにブリッジアダプタを設定する

  1. Oracle VM Managerで仮想マシンを選択して[Network]リンクを押下します。f:id:ponsuke_tarou:20170611125439p:plain
  2. [Attached to:]で「Bridged Adapter」を選択して[OK]ボタンを押下します。f:id:ponsuke_tarou:20170611125806p:plain

CentOS固定IPアドレスになるように設定ファイルを追記する

  1. 仮想マシンを起動してログインします。
  2. 設定ファイルをviで開き設定を追加してネットワークサービスを再起動します。
$ sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0s3
<設定ファイルに追記する>
$ service network restart

f:id:ponsuke_tarou:20170611231057p:plain
内容はこちらのサイト様を参考にしました。

IPADDRには、ゲストPCに固定で割り当てたいIPアドレスを指定します。ホストPCやLAN上の他のPCとは異なる値を設定してください。<省略>
BOOTPROTOはnoneにすることで動的なIPアドレス割り当てがされないようになります。
NM_CONTROLLEDはnoにしておくことでNetworkManagerによる自動設定対象から外れるようになります。
ja.stackoverflow.com

バイスにはそれぞれ独自の設定ファイルがあるため、管理者は、各インターフェースがどう機能するか個別に制御できます。
固定 IP アドレスを使用するシステム用の ifcfg-eth0 ファイルのサンプルは以下のとおりです:
9.2. インターフェース設定ファイル

ローカルネットワークにあるWindows10からpingで確認して

ping 192.168.0.6

192.168.0.6 に ping を送信しています 32 バイトのデータ:
192.168.0.6 からの応答: バイト数 =32 時間 =94ms TTL=64
192.168.0.6 からの応答: バイト数 =32 時間 =100ms TTL=64
192.168.0.6 からの応答: バイト数 =32 時間 =19ms TTL=64
192.168.0.6 からの応答: バイト数 =32 時間 =34ms TTL=64

192.168.0.6 の ping 統計:
    パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
    最小 = 19ms、最大 = 100ms、平均 = 61ms

つながりました。

MacのVirtualBoxに作った仮想マシンへホストOSからアクセスできるようにする

MacVirtualBox仮想マシンを作ってインターネットに接続できることを確認できたのでホストOSからアクセスできるようにします。
ponsuke-tarou.hatenablog.com

VirtualBoxの仮想ネットワークを設定する

VirtualBox仮想マシンではデフォルトでNAT*1に設定されており、DHCPIPアドレスなども自動的に割り当てられるため何もしないでもインターネットに接続できました。
しかし、この状態ではホストOSからはアクセスできないので、さまざまな検証を行うための環境としては不十分です。
gihyo.jp

ゲストOSから仮想マシンへアクセスできるようにホストオンリーアダプタを設定します。

  1. Oracle VM VirtualBox Managerのメニューにある[VirtualBox] > [Preference...]を選択します。f:id:ponsuke_tarou:20170607214243p:plain
  2. [Network] > [Host-only Network] > [+]アイコンを選択すると「vboxnet0」が追加されます。f:id:ponsuke_tarou:20170607214817p:plain
  3. ドライバアイコンを選択してダイアログを開きます。f:id:ponsuke_tarou:20170607214912p:plain
  4. [DHCP Server] > [Enable Server]チェックボックにチェックを入れます。
  5. 各パラメータに値を設定し、[OK]ボタンを押下して設定を完了します。f:id:ponsuke_tarou:20170607215404p:plain

サーバーアドレス:VirtualBoxに作成されるDHCPサーバーのIPアドレスを指定
サーバーマスク:ゲストOSにDHCPで割り当てるIPアドレスのネットマスクを指定
アドレス下限:ゲストOSにDHCPで割り当てるIPアドレスの範囲の最小値を指定
アドレス上限:ゲストOSにDHCPで割り当てるIPアドレスの範囲の最大値を指定
VirtualBox CentOS6.7 64bitでNAT、ホストオンリーアダプターを使用 | kakiro-web カキローウェブ

仮想マシンの仮想ネットワークインターフェースを追加する

この時点で仮想マシンが起動している場合は停止してから追加します。

$ shutdown -h now
  1. Oracle VM VirtualBox Managerから仮想マシンを選択して右側のウィンドウから[Network]リンクを押下してダイアログを開きます。f:id:ponsuke_tarou:20170607220159p:plain
  2. [Adapter 2] > [Enable Network Adapter]チェックボックにチェックを入れます。
  3. [Attached to]で「Host-only Adapter」を選択します。(Host-only Adapterが複数無ければ[Name]に先程設定した「vboxnet0」が表示されるはず)。
  4. [OK]ボタンを押下してダイアログを閉じます。f:id:ponsuke_tarou:20170607220847p:plain
  5. ホストオンリーアダプタが追加されました。f:id:ponsuke_tarou:20170607221039p:plain

DHCPIPアドレスが割り当てられるように設定する

  1. 仮想マシンを起動してログインします。
  2. 「ip addr show」で「enp0s8」ネットワークインターフェースが追加されていることを確認します。f:id:ponsuke_tarou:20170607231341p:plain

ここで、IPアドレスが割り当てられていない予定でした・・・・。

IPアドレスが割り当てられてられていないので、設定を変更してDHCPIPアドレスが割り当てられてられるようにします。
gihyo.jp

が、たぶん↓コレをやったので既に割当てられていました。
qiita.com

ちなみにネットワークインターフェースの設定ファイルは
Ubuntu : /etc/network/interfaces <---------- 雑誌の特集で使っている
CentOS : /etc/sysconfig/network-scripts/ifcfg-eth0 <---------- このブログで使っている
となります。
qiita.com

ホストOSから仮想マシンSSHで接続してみる

$ ssh mana@192.168.56.201
The authenticity of host '192.168.56.201 (192.168.56.201)' can't be established.
ECDSA key fingerprint is SHA256:j+mhEbwrkV5GaVU8gat34VZs2A4+q4q8HaKjOg9m33I.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.56.201' (ECDSA) to the list of known hosts.
mana@192.168.56.201's password: 
Last login: Wed Jun  7 23:10:53 2017
[mana@localhost ~]$ 
[mana@localhost ~]$ logout
Connection to 192.168.56.201 closed.

接続できました。

上記で表示されたメッセージは初回接続でしか出ません。
SSHで接続するとホストOS側の公開鍵の有無を確認し、公開鍵がないことからホストOSの~/.ssh/known_hostsファイルに設定するかを尋ねられています。
ここで「yes」を入力することでknown_hostsに公開鍵を保存し、次回接続からはメッセージは表示されなくなるのです。
http://www.turbolinux.co.jp/products/server/11s/user_guide/sshconnect.html

今回使われたのはECDSA*2というデジタル署名です。

$ vi ~/.ssh/known_hosts 
192.168.56.201 ecdsa-sha2-nistp256 AAAAE2<省略>GJXuRf7E=

再びホストOSから仮想マシンSSHで接続してみます。

$ ssh mana@192.168.56.201
mana@192.168.56.201's password: 
Last login: Thu Jun  8 00:04:09 2017 from 192.168.56.1
[mana@localhost ~]$ 

今回はメッセージが表示されることなく接続できました。