ubuntu不能挂载iso文件问题

我的mac升级后突然发现使用Virtualbox虚拟的ubuntu 15.10有点问题,于是想重新安装Virtualbox Guest Additions,但从菜单上挂载出现问题,于是尝试用命令行挂载:

sudo mount -o loop VBoxGuestAdditions.iso tmp

 

提示有错误:

mount: unknown filesystem type ‘iso9660’

这个错误非常奇怪,第一次遇见。搜索后发现一个相关性很高的帖子:

http://ubuntuforums.org/showthread.php?t=1314412

按照帖子里给出的尝试步骤,发现使用这个命令就可以解决(之前尝试了几次apt-get update & dist-upgrade,都没有解决):

cd /lib/modules/4.2.0-21-generic/kernel/fs/isofs

sudo insmod ./isofs.ko

 

然后就可以挂载iso文件了。

ubuntu下用ssl方式使用remmina远程桌面

一台服务器上的virtualbox虚拟机,需要做部分改动工作。于是首先打开虚拟机上的远程桌面:

VBoxManager controlvm win2003 vrde on

然后尝试用host的IP进行远程桌面访问,发现无法访问,于是知道了这个3389端口是开到虚拟机的内网ip地址上了。

开始想搜索端口转向,将外网ip的端口转向到内网里,但在remmina的配置界面发现有个配置SSH的tab,进行对应的配置后就可以直接使用内网ip进行远程桌面了。

其中,SSH服务器采用指定方式,指定为外网的ip地址,验证方式为密码(当然也可以是公钥,需要提前配置好)。

ubuntu 14.04无法进入图形界面

在清理系统时,发现系统里有多个内核(近20个版本),就想着清理掉不需要的内核。

在最后一次清理时,使用了这个命令:

sudo apt-get purge linux-image-3.13.0-2*

但这个命令和我想当然的结果完全不同,其将所有的3.13.0-内核都移除了,包括当前系统正在使用的内核!

在执行完后,立即安装回最新版的内核:

sudo apt-get install linux-image-generic

然后重启,停留在terminal登陆界面了,无法进入unity了。

于是开始尝试修复,移除所有nvidia驱动:

sudo apt-get remove --purge nvidia-*

仍然不解决问题,于是安装最新nvidia驱动

sudo apt-get install nvidia-346

还是没有解决问题,在启动过程中还遇到了virtualbox无法启动的问题,根据网上的提示,

apt-get install linux-generic linux-image-generic linux-headers-generic linux-signed-generic

然后再重新安装virtualbox(即先remove,再install)即可。

重启后此错误解决,但仍不能进入图形界面,于是查看/var/log/Xorg.0.log,在log里发现nvidia-346版本不能驱动我机器的显卡,需要安装nvidia-340版本才可以。

于是卸载nvidia-346,安装nvidia-340,重启,OK。

参考:

1. http://jingyan.baidu.com/article/bad08e1ebba98e09c85121ae.html

2. http://www.cnblogs.com/zhcncn/p/3989572.html

3. http://askubuntu.com/questions/582109/14-10-virtualbox-no-suitable-module-for-running-kernel-found-cannot-find-ker

 

mac OSX下virtualbox的文件夹共享

在我的air笔记本上,用virtualbox虚拟了一个ubuntu server来作为开发的测试服务器。其中需要用到host上的共享文件夹来验证开发的结果。virtualbox下的虚拟机使用共享文件夹需要用到VBoxGuestAddition才可以。在ubuntu server下我直接用光驱挂载iso或使用菜单里对应的功能,在客户机(ubuntu server)都没有找到对应的盘。因此需要将iso文件直接传递进来后:

mkdir test
sudo mount -o loop /path/to/VBoxGuestAdditions.iso test
cd test
sudo sh ./VBoxLinuxAdditions.run
sudo poweroff

安装完成后需要关机,然后在Mac下执行:

VBoxManage sharedfolder add "my-ubuntu-vm" --name "westdc"\
--hostpath "/Users/username/path"

然后启动虚拟机ubuntu,再执行:

sudo mkdir /mnt/web
sudo chmod 777 /mnt/web
sudo mount -t vboxsf -o uid=1000,gid=1000 westdc /mnt/web

要注意,挂载点的名称和共享的名称不能一样,否则会导致错误。

这样,/mnt/westdc目录就和mac上的目录共享了,将对应的web目录设置为此目录就可以通过web访问来进行开发了。

BTW: 可以将命令放入到/etc/rc.local让其开机自启动。

在mac osx构建测试用途的linux服务器

mac osx从10.9升级到10.10测试版,导致有些程序无法使用,包括之前使用port安装的系列软件(apache、postgresql、php),因此需要另想办法来处理测试系统。

VirtualBox在10.10上可以正常使用,因此就想用virtualbox虚拟一个ubuntu server来当做本机的测试服务器。作为测试用途的linux虚拟服务器,在网络上有一定要求,即host可以任意访问vm,vm可以上外网,但外网不能直接访问vm。

VirtualBox默认的几个网络类型,好像都不能直接满足此要求(包括NAT、Host-only等),但搜索后突然想起可以用多网卡来混合支持此测试服务器的网络要求,即用一个NAT网卡加上一个Host-only网卡,即可以直接满足其作为测试服务器的要求。

下载、安装,分配了8G的硬盘空间,然后分配2个对应的网卡,最后安装完成后在虚拟服务器中设置对应的网卡,两个网络可以设置为dhcp,其中host-only的网卡默认分配的网络地址是192.168.56.102(假如只有一个虚拟主机),而mac osx上会添加一个虚拟网卡,分配的地址是192.168.56.1。然后就可以ssh、pgadmin等工具直接访问虚拟服务器。

转移virtualbox到另一台服务器

现在的服务器资源有点紧张,就考虑将其上运行的virtualbox转移到另外一台新服务器上。开始想是直接想virtualbox的vm目录拷贝过去,以为就可以解决问题了,结果发现直接运行出错:

Invalid machine name or UUID

因此又仔细搜索学习了一下,发现也是很简单的,原来的vbox文件不需要,就当做是新建一个vm,将之前的hard disk导入进来就可以作为一个新服务器了。

具体操作和之前的post方法基本类似:

首先要进入vm目录将之前的vbox文件删除或改名,然后新建vm。

VBoxManage createvm --name “win2003″ --register
VBoxManage modifyvm “win2003″ --memory 512 --acpi on --nic1 bridged –bridgeadapter1 em1
VBoxManage storagectl “win2003″ --name “IDE Controller” --add ide
VBoxManage storageattach “win2003″ --storagectl “IDE Controller” --port 0 --device 0 --type hdd --medium win2003.vdi 

重新启动vm就可以解决问题了。

Install VirtualBox Guest Additions on Ubuntu 12.04 with headless mode

We had installed a win2003 virtual machine which is convert from Vmware Server, as mentioned in this post. Now we want to install the guest additions for this virtual machine to avoid the two cursors problem.

1. Stop the VM

VBoxManage controlvm win2003 poweroff

2. Attach Guest Additions ISO

cp /usr/share/virtualbox/VBoxGuestAdditions.iso .
VBoxManage storageattach win2003 –storagectl “IDE Controller” –port 1 –device 0 –type dvddrive –medium VBoxGuestAdditions.iso

3. Start the VM and remote login

VBoxHeadless –startvm win2003 &

then remote login the vm via remote desktop(rdesktop) and install the guest additions by the new cd.

从vmware server 2.0切换到virtualbox

之前在ubuntu服务器上一直使用vmware server作为虚拟化方案来模拟几个windows服务器,主要是asp的web服务器。但ubuntu升级到12.04之后,发现vmware server彻底罢工了,网上搜索后,发现vmware server在2011年就已经停止支持了,因此需要转换到其他的虚拟方案。

我在ubuntu desktop上也一直有使用virtualbox方案,感觉也还是蛮稳定的,但在服务器上一直没有考虑过此方案,因为服务器上多数情况下都没有安装X Windows支持,但搜索后发现新版本有VBoxHeadLess方案,即其可以不需要对应的X支持。

安装: 除了安装virtualbox之外,还要安装它的extpack,否则vrdp等功能是不起作用的。

cd /tmp
wget http://download.virtualbox.org/virtualbox/4.1.14/Oracle_VM_VirtualBox_Extension_Pack-4.1.14-77440.vbox-extpack
sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.1.14-77440.vbox-extpack

因此先在台式机上进行测试:

1. 首先拷贝对应的vmdk文件,然后转换为virtualbox的vdi格式
注意在转换格式之前,应该首先在vmware server中移除vmware tools,否则转换后不能启动,只能作为硬盘读取。

VBoxManage clonehd xxx.vmdk xxx.vdi

2. 然后创建一个新的vm文件
使用图形界面创建也可,也可以使用命令

VBoxManage createvm --name "win2003" --register
VBoxManage modifyvm "win2003" --memory 512 --acpi on --nic1 bridged --bridgeadapter1 eth0
VBoxManage storagectl "win2003" --name "IDE Controller" --add ide
VBoxManage storageattach "win2003" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium win2003.vdi

3. 启动对应的vm

VBoxHeadless --startvm "vm_name" --vrde=off&

后面的vrde参数是强制关闭远程链接,我觉得不需要,不加此参数则默认开启主机的远程桌面链接3389端口。

4. 临时远程管理
若在需要进入远程管理时,可以临时开启远程:

VBoxManage controlvm “win2003” vrde on

关闭远程办法:

VBoxManage controlvm “win2003” vrde off

VirtualBox的使用

就个人感觉而言,VirtualBox的速度要优于qemu和vmware,不过我原来一直都是远程使用的,速度一直没有什么感觉,现在安装到笔记本上,速度明显能感觉出来了,比真实安装的XP慢不到多少。
virtualbox
一、下载:
官方网站上的页面上好像还没有for ubuntu feisty的安装包,但是好像已经可以下载了:
VirtualBox_1.3.8_Ubuntu_feisty_i386.deb
二、安装:

sudo dpkg -i VirtualBox_1.3.8_Ubuntu_feisty_i386.deb

三、问题:
1. 帐号
按照VirtualBox的安全设置,如果要使用VirtualBox需要将您的使用的用户添加到vboxusers组中:

sudo usermod -G vboxusers -a your_account

如若提示vboxusers组还未建立,则

sudo dpkg-reconfigure virtualbox

2. 若想使用usb设备,则会出现:Not permitted to open the USB device, check usbfs options.
首先建立usbfs组:

sudo addgroup usbfs

注意usbfs组的id号,假如是1002,然后修改/etc/fstab,加入一行:

none /proc/bus/usb usbfs devgid=1002,devmode=664 0 0

把当前帐号加入到usbfs组中:

sudo usermod -G usbfs -a your_account

然后reboot或者重启X。

四、参考:
1 http://blog.eshangrao.com/index.php/2007/02/10/345-ubuntu-feistyvirtualbox
2 http://ubuntuforums.org/showthread.php?t=341740&page=2