2017年3月6日 星期一

[袁賢銘的OS作業]HW1筆記 [圖+文]

第一步驟

在Ubuntu16.04 LTS上安裝KVM

在安裝KVM前必須先符合以下兩點需求:
1.CPU必須支援hardware virtualization
雖然是這樣說
我沒有支援但還是可以裝OAO

2.使用64位元的Host-OS(建議,但不一定要)
因為如果使用32位元的系統
在KVM上的VM記憶體最多只能給到2GB的大小

接下來開始安裝KVM

$ sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils
安裝好以後
通常預設自動會把你的username加入到libvirtd群組
因此執行下面這行
$ sudo adduser `id -un` libvirtd
會顯示已經加入群組了
The user `username' is already a member of `libvirtd'.

接下來檢查有無安裝成功
$ sudo virsh list --all
如果有成功會顯示
Id Name                 State
----------------------------------
這樣就OK了
等到之後在KVM上安裝VM後
再次執行這個指令就會有東西了

第二步驟

安裝VMM(Virtual Machine Manager)

這裡以virt-manager來示範
$ sudo apt-get install virt-manager
這是一個透過GUI來控制並管理KVM虛擬機的程式

以最高權限執行
$ sudo virt-manager

第三步驟

在KVM上建立虛擬機器

接下來開始透過KVM建立虛擬機器


看你的系統映像檔要從哪個來源取得
第一個是已經事先下載好iso檔到電腦本地/使用光碟安裝
第二個是從網路上的連結直接取得
第三和第四沒有研究XD

本篇文章以第一個做示範
選好之後按Forward


在這裡選取你的光碟機位置(點第一個)或者iso檔的存放位置(點第二個)
點選Browse
如果畫面上找不到你的iso檔案
在下面有一個Browse Local的按鈕
點下去就會跳出熟悉的開啟舊檔視窗


找到後點Choose Volumey再點Forward

這裡調整你要個VM的記憶體大小及CPU數量



這裡指定硬碟空間大小


這裡指定VM的名稱
並且!!!
請將Customize....的框框打勾
因為要避免在之後安裝遇到一個問題
就是滑鼠在KVM的VM中會亂跑
如圖順序操作
就會開始安裝了
慢慢等吧~~~~


第四&第五步驟

讓VM的OS可以被 Host OS 不需密碼透過SSH登入
這次目標是
從Host OS免密碼登入VM
因此要把Host OS的相關資訊給VM知道
這個資訊我們藉由public key來達成
有興趣的人可以網路google原理

輸入
$ ssh-keygen
過程之中為了方便起見就不設定passphrase
一直按enter直到出現這個可愛的正方形即可
產生這台電腦的public key


$ sudo vim /etc/hosts
讓電腦名稱和電腦IP對應
如果不知道自己電腦的IP
就輸入ifconfig
在inet addr那欄的就是


將VM的兩台電腦的IP位置輸入進去
進行測試一下能不能連線到遠端電腦
$ ping (PC name)
如果可以的話你會看到如下面的圖

接下來就是把你的public key傳送到遠端電腦
$ scp ~/.ssh/id_rsa.pub john@johnPC1:~/.ssh/a.pub
!!!如果遠端電腦沒有.ssh這個資料夾請自行建立!!!

這行的意思是透過網路
將本地的id_rsa.pub傳送到johnPC1的john帳戶中
~/.ssh這個資料夾內
並且命名為a.pub(這名字不重要任意取就好)

接下來到遠端電腦這邊輸入
$ cat ~/.ssh/a.pub >> ~/.ssh/authorized_keys
將a.pub這個檔案的內容輸出到authorized_keys這個檔案之中

$ chmod 600 ~/.ssh/authorized_keys
將authorized_keys這檔案的權限調整成只有電腦使用者可以做更改

接下來將密碼認證的部分關閉
(這是為了讓電腦只接受authorized_keys檔案清單之內的電腦連進來)
$ sudo vim /etc/ssh/sshd_config
往下拉找到PasswordAuthentication這一行
把yes改no
若這一行前面有#也把它刪掉
這樣就可以停用密碼認證了
並且只允許authorized_keys檔案清單之內的電腦連進來

接著就是要重新啟動SSH服務
讓所有的設定值生效
$ sudo service ssh restart

最後就是測試啦~~~~~~~~~~~~~
$ ssh (account name)@(PC name)
如果沒有輸入密碼的提示
並且如下圖所示
恭喜你成功了~
完成!!!

參考內容出處:
https://help.ubuntu.com/community/KVM/Installation
http://www.tecmint.com/install-and-configure-kvm-in-linux/
http://www.arthurtoday.com/2009/11/ssh-linux-client.html