สร้าง Virtual Server ด้วย VirtualBox บน Ubuntu Hardy ตอน 4

จากตอนที่แล้วที่เราลงเซ็ต Bridge Network ให้เครื่อง host และ virtualbox แล้ว ตอนนี้เราสารมารถจะรีโมท ssh เข้าไปใช้งาน Virtual Machine ได้แล้วครับ ในที่นี้ Virtual Machine ผม IP 192.168.1.4 ถ้าจะดู IP ก็ให้ Login เข้าไปแล้วใช้คำสั่ง ifconfig ดูก็ได้ครับ

ifconfig

จากนั้นให้ลอกง ssh จากเครื่อง host ของเราเข้าไปได้โดยใช้คำสั่ง

ssh annomundi@192.168.1.4 

โดย annomundi เป็น username ที่ผมสร้างไว้ตอนลง Ubuntu server ในตอนที่ผ่านมา ก็ให้เลี่ยนเป็น username และ ip ของเครื่อง virtual machine ที่คุณกำลังใช้อยู่ครับ หลังจากใส่ password แล้ว เราก็พร้อมที่จะใช้งานเครื่อง Virtual Machine แล้วครับ แต่ก่อนอื่นเพื่อที่เราจะไม่ต้องคอยใส่ password ทุกครั้งที่ ssh ก็ให้ทำดังนี้ครับ ที่เครื่อง host ให้เราใช้คำสั่ง

ssh-keygen -t rsa

คำสั่งนี้จะสร้างไฟล์ id_rsa และ id_rsa.pub ในโฟลเดอร์ .ssh ตอนมันให้คีย์ passphrase ไม่ต้องใส่นะครับกด enter ผ่านเลย จากนั้นใช้คำสั่ง

scp ~/.ssh/id_rsa.pub annomundi@192.168.1.4:/home/annomundi

เป็นการก็อบปี้ ไฟล์ id_rsa.pub ไปที่เครื่อง virtual machine อย่าลืมเปลี่ยน annomundi และ ip เป็น username และ ip เครื่อง virtual machine ที่คุณใช้ด้วยนะครับ จากนั้นไปที่ virtual machine จะสั่งผ่าน ssh ที่เรารีโมทค้างไว้ก่อนหน้านี้ก็ได้ครับ โดยใช้คำสั่ง

mkdir ~/.ssh
mv ~/id_rsa.pub ~/.ssh/authorized_keys
chown -R annomundi:annomundi ~/.ssh
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

จากนั้นไปที่เครื่อง host แล้วของ ssh เข้ามาที่ virtual machine ถ้าไม่มีอะไรผิดพลาดเราจะสามารถ ssh เข้าไปได้โดยไม่ต้องใส่ password ทั้งนี้สำหรับการเซ็ตเครื่องเพื่อใช้งานจริงๆเราต้องมีการเซ็ต sshd config เพื่อความปลอดภัย แต่จะขอไม่กล่าวถึงในตอนนี้นะครับ ทีนี้ไปที่เครื่อง virtual machine เราจะทำการอัพเดท package list และอัพเกรดโปรแกรมต่างๆในเครื่องด้วยคำสั่ง

sudo aptitude update
sudo aptitude safe-upgrade
sudo aptitude full-upgrade

จากนั้นก็ลงโปรแกรมพื้นฐาน อย่างพวก gcc, make, patch และอื่นๆ เพราะจำเป็นต้องใช้งาน ให้ใช้คำสั่งดังนี้ครับ

sudo aptitude install build-essential

เสร็จแล้วตอนนี้เรามาปรับแต่งระบบกันอีกเล็กน้อย โดยแก้ไขไฟล์ ~/.bashrc

sudo chown annomundi:annomundi ~/.nano_history
nano ~/.bashrc

บรรทัดแรกจะเป็นการแก้สิทธิ์ของไฟล์ .nano_history กลับมาเป้นของเรา ในกรณีบางทีมันไปเป็นของ root แล้วเวลาเรา edit ไฟล์มันจะแจ้งเตือน permission denied หลังจากเปิดไฟล์ ~/.bashrc มาแล้วให้เพิ่มคำสั่งตามด้านล่างเข้าไปท้ายไฟล์

export PS1='\[\033[0;32m\]\u@\h\[\033[0;36m\] \w\[\033[00m\]: '
alias free="free -m"
alias nano="nano -w"

จากนั้นสั่ง

source ~/.bashrc

จะแสดง Prompt สวยงามขึ้น และการแสดงผลของคำสั่ง free จะแสดงหน่วยเป็น MB
ตอนนี้ก่อนที่เราจะลงโปรแกรม server ต่างๆ ซึ่งจะกล่าวถึงในตอนถัดไป เราจะมาดูวิธีการ Backup Virtual Machine กันก่อน ถ้าตามอ่านมาในตอนที่ 1 จะเห็นว่า Virual Machine ที่เรากำลังใช้งานในตอนนี้ ซึ่งลง Ubuntu Server นั้นอยู่บน Virtual Disk สำหรับในเครื่องผมจะคือไฟล์ ~/.VirtualBox/VDI/UbuntuServer.vdi คำสั่งสำหรับการ backup หรือ copy ให้ใช้คำสั่งดังนี้

VBoxManage clonevdi ~/.VirtualBox/VDI/UbuntuServer.vdi ~/.VirtualBox/VDI/UbuntuServer_Backup.vdi

จะเป็นการโคลน Image ไฟล์ (Virtual Disk) UbuntuServer.vdi ไปยัง UbuntuServer_Backup.vdi คำสั่งนี้จะใช้เวลาขึ้นกับขนาดของ virtual disk ที่เราสร้างไว้ตอนแรกครับ

การโคลน virtual disk image นี่ต้องปิด virtual machine ก่อนนะครับ

หลังจากเสร็จแล้วเราก็จะมี virtual disk เหมือนๆกัน 2 อัน จะใช้ตัวไหนบูตก็ได้ครับ วิธีก็คือไปที่ Window หลักของ VirtualBox ไปที่ File -> Virtual Disk Manager แล้วกดปุ่ม Add เลือก virtual disk ที่เราโคลนมาเมื่อครู่ ตามรูปด้านล่างครับ

กด Open และ Ok จากนั้นไปที่ Setting ไปที่ส่วน Harddisk ตามรูปด้านล่าง

จะเห็นว่าเราสามารถเลือกได้ว่าจะให้ Virtual Disk ตัวไหนมาต่อกับ IDE Primary Master ก็ให้ลองเลือกเอาตัวที่เราโคลนเมื่อครู่นี้ครับ แล้วลอง Start Virtual Machine ดูครับ

ที่ต้องกล่าวถึงการ backup ก็เพื่อเวลาเราลงโปรแกรมหรือคอนฟิกโปรแกรมแล้วมีปัญหาแก้ไขไม่ได้ จะได้โคลน backup กลับมา หรได้ ซึ่งในตอนนี้ก็ควร backup ไว้เลยครับ แต่ทีนี้บางคนอาจสงสัยว่าทำไมไม่ใช้คำสั่งก็อบปี้ นั่นก็เพราะมันจะใช้ไม่ได้ครับ ผมก็ไม่ทราบเหมือนกันว่าทำไม ^^ เอาเป็นว่าไว้ตอนถัดไปเราจะเริ่มลงโปรแกรม server ต่างๆกันครับ ตอนนี้ถ้าว่างๆก็ backup แล้วลองลงโปรแกรมลองเซ็ตคอนฟิกเล่นไปพลางๆก่อนก็ได้ครับ

โพสต์ยอดนิยมจากบล็อกนี้

I miss you all กับ I miss all of you ต่างกันอย่างไร

ปัญหาและเฉลยวิชาธรรม นักธรรมชั้นตรี สอบในสนามหลวง วันอังคาร ที่ ๒๙ กันยายน พ.ศ.๒๕๕๒

ปัญหาและเฉลยวิชาอนุพุทธประวัติ นักธรรมชั้นโท สอบในสนามหลวง วันอาทิตย์ ที่ ๒๐ พฤศจิกายน พ.ศ. ๒๕๔๘