现在的位置: 首页 > 综合 > 正文

使用debootstrap/schroot虚拟化开发环境

2017年01月23日 ⁄ 综合 ⁄ 共 1351字 ⁄ 字号 评论关闭
Linux里最头疼的就是依赖库,搭建一个开发环境就是一堆的依赖库需要安装。如果有版本冲突,虽然可以用aptitude解决,但顾了这个,另一个工程又编不了。如何将这些环境隔离出来避免相互的干扰呢? debootstrap/schoot就可以帮助解决这个问题。 看这里 (Virtualizing without virtualizing), 简而言之,就是在当前的host下安装另一个系统环境,使用命令行的方式切换到那个环境中操作,完全达到了要求,还不致于影响host的运行环境。


下面是我在Ubuntu 14.04 64bits上为U4搭建Ubuntu 12.10 64bits开发环境的步骤供参考:

 
1.安装
sudo apt-get install schroot debootstrap

2. 安装64位的Ubuntu 12.10
sudo debootstrap --arch amd64 precise /srv/chroot/webkit http://archive.ubuntu.com/ubuntu/
*如果这里报错,检查一下amd64的合法性,如果不支持,试一下linux64。32位则使用i386。

3. 配置 
 编辑 /etc/schroot/schroot.conf
内容如:
  [webkit]
  description=Ubuntu 12.10 for compiling Webkit
  type=directory 
  directory=/srv/chroot/webkit   
  users=your_name
  groups=root
  root-groups=root

  *directory指的是debootstrap安装新系统的目录。users用于指定添加的用户名。

4. 确认一下
schroot -l 就会显示webkit可用了。如果有错误,就检查一下配置文件是不是写错了。

5. 启用并以root用户登录
schroot -c webkit -u root

6. 先安装一个最小化系统
apt-get install ubuntu-minimal

7. 编辑Source列表,不然好多东东会找不到的。重要! 搞不好,还要重新来过!

/etc/apt/sources.list , 下面是我使用的内容:

deb http://archive.ubuntu.com/ubuntu precise main
deb http://archive.ubuntu.com/ubuntu precise universe
deb http://archive.ubuntu.com/ubuntu precise multiverse
deb http://archive.ubuntu.com/ubuntu precise-backports main restricted universe multiverse
deb http://archive.canonical.com/ubuntu precise partner
deb http://security.ubuntu.com/ubuntu precise-security main 

8. 配置一下Java环境
export JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8
*否则Java编译会因为无法识别UTF8编码而报错。

9. 现在就可以配置你的开发环境了


抱歉!评论已关闭.