文字模式管理 VirtualBox 器
文字模式管理 VirtualBox 器
by Jamyy on 十月.15, 2008, under Linux
境:
VirtualBox 2.0.2
Fedora 9 (x86_64), runlevel 3, 未安 X window 相套件
安 VirtualBox
至 http://www.virtualbox.org/wiki/Linux_Downloads 下 VirtualBox for Fedora 9 ("Sulphur") - AMD64
# yum -y install kernel-devel kernel-headers gcc libxslt.x86_64
# rpm -ivh --nodeps VirtualBox-2.0.2_36488_fedora9-1.x86_64.rpm
# usermod -a -G vboxusers someone ( someone 可建立器)
日後若更新 kernel, 需行 /etc/init.d/vboxdrv setup 重新 VirtualBox kernel module
建立 Virtual Machine
建立登器
VBoxManage createvm -name "CentOS 5" -register
器基本定: 大小、是否用 ACPI、第一位置、路型
VBoxManage modifyvm "CentOS 5" -memory "256MB" -acpi on -boot1 dvd -nic1 nat
建立登硬碟
VBoxManage createvdi -filename "CentOS_5.vdi" -size 10000 -register
定器使用登的硬碟
VboxManage modifyvm "CentOS 5" -hda "CentOS_5.vdi"
登光碟映像, 器之
VBoxManage registerimage dvd ~/CentOS-5.2-i386-bin-DVD.iso
VBoxManage modifyvm "CentOS 5" -dvd ~/CentOS-5.2.i386-bin-DVD.iso
或直接本光碟
VBoxManage modifyvm "CentOS 5" -dvd host:/dev/cdrom
定器使用的端桌面埠口 (: 3389)
VBoxManage modifyvm "CentOS 5" -vrdp on -vrdpport 3390
器
VBoxManage startvm "CentOS 5" -type vrdp
以端桌面器所在之主即可操作器面
若器使用非 port (3389), 只要在, 於 IP 或 Host name 後面加上 :3390 (自定埠口) 即可
端桌面相:
Wikipedia - 端桌面定
Microsoft Remote Desktop Connection 6.0 用端更新
rdesktop 官方站
用桌面登入
# ln -sf /lib64/libpam.so.0 /lib64/libpam.so (x86 /lib)
VBoxManage modifyvm "CentOS 5" -vrdpauthtype external
Linux Client 使用 rdesktop 入器: rdesktop -u someone -p - 192.168.0.1:3390
其中 someone 器的有者
外部入 NAT VM (相限制文末)
通定
VBoxManage setextradata "CentOS 5" \
"VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/Protocol" TCP
器聆埠口
VBoxManage setextradata "CentOS 5" \
"VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/GuestPort" 22
本聆埠口
VBoxManage setextradata "CentOS 5" \
"VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/HostPort" 2222
重新 VM 之後, 即可由本 tcp 2222 port 入 VM:22
以上紫色部份, "CentOS 5" 器名, "ssh" 自定名, 最後一是定值
bridging 做法可官方 User Manual (PDF File) -- 6.8 Host Interface Networking and bridging on Linux hosts
Ref:
有事就: VirtualBox NAT port forwarding
hpeter 心得分享站: VirtualBox 使用 NAT 方法 vm 上路
自器、自保存器
# vi /etc/rc.d/rc.local
su - someone -c "VBoxManage startvm 'Name of Virtual Machine' -type vrdp"
# vi /etc/default/virtualbox
SHUTDOWN_USERS="userA userB"
SHUTDOWN=savestate
# vi /etc/init.d/vboxdrv
搜 start(), 往下找到 succ_msg 的位置 ( 184 行), 於 succ_msg 之上新增一列:
touch /var/lock/subsys/vboxdrv
# chkconfig vboxdrv on
# touch /var/lock/subsys/vboxdrv
Ref: LinuxQuestions.org - Scripts under rc0.d and rc6.d do not seem to run during shutdown, reboot
考料
HowToForge :: VBoxHeadless - Running Virtual Machines With VirtualBox 2.0 On A Headless Ubuntu 8.04 Server
--- 2008.11.03 充:
只能 "部 IP" (10.; 172.32.; 192.168.) 直接入器的 NAT 埠口 (如前例之 tcp:2222).
本 port 向除 nat table 需要定之外, filter 的 INPUT 也要同接受指向器 NAT 埠口的封包,
iptables -P INPUT DROP 者注意.
iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT --to 2222
iptables -t filter -A INPUT -p tcp --dport 2222 -j ACCEPT
本 port 向只能使用 "埠" (如: 22, 25, 80, 110), 法使用自定埠向.
iptables -t nat -A PREROUTING -p tcp --dport 8888 -j REDIRECT --to 50080 (假 50080 是 nat 到 VM:http 的本埠口)
iptables -t filter -A INPUT -p tcp --dport 50080 -j ACCEPT
以上定法接受自 Internet 端的 my.public.ip:8888 求, 但部 IP 可以用 vm.host.ip:8888 入.