1、下载ubuntu-16.04.1-server-amd64.iso
2、在vbox中创建虚拟机,设置网络配置为网络地址转换NAT,创建端口转发规则(以便用于ssh):
名称:默认
协议:TCP
主机IP:空
主机端口:2206
子系统IP:空
子系统端口:22
3、正常安装系统,中间选模块时勾选sshd
4、安装后进入shell,修改root密码,懒得每次执行命令都sudo
sudo passwd root
5、修改/etc/ssh/sshd_config
PermitRootLogin prohibit-password
改为
PermitRootLogin yes
6、重启sshd
sudo service sshd restart
7、使用客户端,root,登陆
ssh -p 2206 root@127.0.0.1
8、更新apt源,安装、加载nbd模块
备份/etc/apt/sources.list后,
修改其内容为:
deb http://mirrors.163.com/ubuntu/ xenial main restricted
deb http://mirrors.163.com/ubuntu/ xenial-updates main restricted
deb http://mirrors.163.com/ubuntu/ xenial universe
deb http://mirrors.163.com/ubuntu/ xenial-updates universe
deb http://mirrors.163.com/ubuntu/ xenial multiverse
deb http://mirrors.163.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.163.com/ubuntu/ xenial-backports main restricted universe multiverse
deb http://mirrors.163.com/ubuntu xenial-security main restricted
deb http://mirrors.163.com/ubuntu xenial-security universe
deb http://mirrors.163.com/ubuntu xenial-security multiverse
执行命令:
apt-get install nbd-server depmod modprobe nbd
9、验证nbd是否加载
lsmod |grep nbd
10、安装qemu-utils
apt-get install qemu-utils
11、在/etc/modules中加入下面一行
nbd
重启。
12、示例:创建一个vhd文件,并挂载为nbd设备:
qemu-img create -f vpc test.vhd 1G qemu-nbd -f vpc -c /dev/nbd0 ./test.vhd //或使用qemu-nbd -c /dev/nbd0 ./test.vhd,qemu-nbd会自动识别镜像格式。 ps -ef | grep nbd //查看nbd设备的占用详情 qemu-nbd -d /dev/nbd0 //卸下设备
编译zfs:
下载源码,解压
apt-get install gcc make
spl-0.6.5.8目录下,./configure;make;make install
apt-get install zlib1g-dev uuid-dev libnvpair1linux
zfs-0.6.5.8目录下,./configure;make;make install
depmod -a;modprobe zfs
mkdir /etc/zfs;touch /etc/zfs/zpool.cache #为了zdb命令执行创建的缓冲
在/etc/modules中加入一行:zfs
另附:图形界面编译zfs debug版本,以便于跟踪源码:
安装desktop版ubuntu
配置网络等(如上)
编译spl-0.6.5.8等(也可在./configure中加参数 --enable-debug )
改zfs源码,去压缩,./configure 中的-O2 改为 -O0
直到编译zfs: ./configure --enable-debug --enable-debug-dmu-tx;make;make install
执行export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
apt-get install gbd ddd kdbg #kdbg好用