应用debian和schroot安装ubuntu, centos环境

有时我们需要运行最新的LINUX,但是一些软件又依赖其他LINUX版本。这时除了虚拟机和DOCKER外,还可以使用 CHROOT方式。

背景介绍

Debian:  是 Ubuntu 的源头。收录了最全最新的开源软件包。但由于缺少商业支持和版本发布时间过长,所以出现了UBUNTU。

Debian 分成三个版本:

stable:      稳定版本,可以商业使用。每个发布版本都有一个玩具总动员的角色名字。

testing:    下一个stable, 但现在还没到发布程度,可能是因为还没到版本发布计划要求(例如其他功能还没完善,例如 gnone kde 等大软件)。

unstable: 包含最新的软件。基本上用作开发是没问题的。也叫SID。

chroot:    让软件的运行根目录切换到另外一个子目录下。被 chroot 的进程只能访问和使用这个子目录下的文件和库,无法访问原来的根目录。用于目录隔离。

chroot 跟虚拟化不一样。因为只有进程运行环境是独立的(环境变量,运行库,根目录),其他都还是使用父系统(内核,启动脚本等)

schroot:  在chroot 前我们需要做准备工作,例如 mount /proc /sys /dev 到新的 root 目录下,还有把一些对新 root 也能访问的目录也使用 -rbind 的方式 mount 到新root目录的访问点。

同时在 chroot 成功后也要运行一些启动脚本。

schroot 就做这些事情。

安装Debian

安装debian 时,一般 进行3个分区,并且最好不要使用 LVM (重装时 LVM 不好恢复?):

/      30G, ext4, ,物理分区,可启动。放debian 、 centos Ubuntu.

/home/build   一般可以考虑 100G以上,放代码

swap 留个 4 G 意思一下。

在Debian中安装 CentOS 6.7

CentOS 可以从其他机器复制过来,也可以在Debian上安装。

为了简单建议直接复制一个可用的根文件系统到/home/centos/(安装目录)。

如果想研究自己安装,或只想安装最简单的CENTOS(不需要图形界面等软件包), 按下面方法:

安装 yum, 并且使用 163 源。

apt-get install yumcd /etc/yum/repos.d/mv CentOS-Base.repo CentOS-Base.repo.backup
wget http://mirrors.163.com/.help/CentOS6-Base-163.repomv CentOS6-Base-163.repo CentOS-Base.repo

2. 安装基本系统

rm      -rf  /home/centos
mkdir -p /home/centos/var/lib/rpm
rpm    --rebuilddb --root=/home/centos/
wget   http://mirrors.163.com/centos/6.7/os/x86_64/Packages/centos-release-6-7.el6.centos.12.3.x86_64.rpm
rpm    -ivh --root==/home/centos/ --nodeps centos-release-6-7.el6.centos.12.3.x86_64.rpm
yum   --installroot=/home/centos/ install -y rpm-build yum
mkdir -p /home/centos/proc
mkdir -p /home/centos/dev
mkdir -p /home/centos/sys
 cp /etc/resolv.conf /home/centos/etc/  cp /etc/yum/repos.d/CentOS-Base.repo /home/centos/etc/yum.repos.d/
echo "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi" > /home/centos/root/.bash_profile
echo ‘PS1=\‘\033[1;93;45m${debian_chroot:+($debian_chroot)}\033[0m\[\033[01;32m\]\[email protected]\[\033[01;34m\]\w\[\033[00m\]\$ \‘‘ >> /home/centos/root/.bashrc

在Debian中安装 Ubuntu 1404

为了简单建议直接复制一个可用的根文件系统到/home/ubuntu/(安装目录)。

如果想研究自己安装,或只想安装最简单的Ubuntu1404(不需要图形界面等软件包), 可以试下面方法:

apt-get install debootstrap
wget http://mirrors.163.com/ubuntu/pool/main/d/debootstrap/debootstrap_1.0.72ubuntu1_all.deb
ar vx debootstrap_1.0.72ubuntu1_all.deb
tar xzf data.tar.gz
cp usr/share/debootstrap/scripts/gutsy /usr/share/debootstrap/scripts/trusty
 
rm      -rf  /home/ubuntu
mkdir /home/ubuntu/
 debootstrap --arch and64 trusty /home/ubuntu/ http://mirrors.163.com/ubuntu
mkdir -p /home/ubuntu/proc
mkdir -p /home/ubuntu/dev
mkdir -p /home/ubuntu/sys
 cp /etc/resolv.conf /home/ubuntu/etc/
echo ‘deb http://mirrors.163.com/ubuntu trusty main multiverse‘ > /home/ubuntu/etc/apt/sources.list
echo "if [ -f ~/.bashrc ]; then . ~/.bashrc; fi" > /home/ubuntu/root/.profile
echo ‘PS1=\‘\033[1;93;44m${debian_chroot:+($debian_chroot)}\033[0m\[\033[01;32m\]\[email protected]\[\033[01;34m\]\w\[\033[00m\]\$ \‘‘ >> /home/ubuntu/root/.bashrc

在Debian中安装schroot, 用于管理 UBUNTU 1404/ CENTOS 6.7

apt-get install schroot

把下面行添加到/etc/schroot/schroot.conf,并把原来内容注掉:

[centos]
description=Centos 6 (amd64)
directory=/home/centos
root-users=root
root-groups=root
type=directory
aliases=rh,default,67,c
#preserve-environment=true
#personality=linux32
[ubuntu]
description=Ubuntu trusty (amd64)
directory=/home/ubuntu
root-users=root
root-groups=root
type=directory
aliases=trusty,1404,u

启动

启动 Ubuntu

schroot -c u

启动 centos 6.7

schroot -c c
时间: 2024-10-13 06:43:49

应用debian和schroot安装ubuntu, centos环境的相关文章

安装Ubuntu桌面环境后只能Guest登录的解决办法

1.安装Ubuntu桌面环境后,登录界面只显示了Guest 2.在登录界面按住crtl+shift+F1,进入tty模式 3.输入sudo -s进入root模式 4.输入vi /etc/lightdm/lightdm.conf,添加最后两行代码 5.重启虚拟机

阿里云 Debian 9.2 安装 Java Web 环境

本来是用 CentOS 的,结果源里的 Tomcat 有 bug,再这者源里 Tomcat 与 MariaDB 版本也都很低 阿里云相关配置 创建密钥对,网络和安全 -> 密钥对 -> 创建密钥对,按提示创建即可 更换实例系统盘,换成 CentOS 7.4 64 位,设置使用密钥登录而非密码 ECS 实例放行 Tomcat 的 8080 端口,如果不放行结果就是进行请求时服务器无响应,控制台选择对应 ECS -> 更多 -> 网络和安全 -> 安全组配置 -> 配置规则

ubuntu centos debian环境下脚本一键自动开启PPTP、L2TP两种VPN服务

ubuntu centos debian环境下脚本一键自动开启PPTP.L2TP两种VPN服务亲测可用 http://blog.csdn.net/bahubali/article/details/78066695

在CentOS上编译安装Nginx+实验环境搭建+测试

0.说明 Nginx作为一款优秀的Web Server软件同时也是一款优秀的负载均衡或前端反向代理.缓存服务软件,很有必要搭建实验环境来对其进行学习. 1.实验环境 本次实验的测试环境使用的宿主机操作系统为Windows 7,在Vmware虚拟机安装CentOS 6.5,说明如下: 宿主机操作系统Windows 7 虚拟机安装的操作系统CentOS 6.5 虚拟机操作系统上网方式NAT 而当使用NAT的方式进行上网时虚拟机.宿主机之间的网络连接关系可如下所示: 关于为什么网络拓扑结构是这样的,这

Linux(ubuntu/centos) 部署Java项目 外加安装jdk+tomcat+Mysql

这是我第一次写博文,我希望我写的文本能够帮助到大家,这能让我感到很满足! 本次分享的文章 主要解决 Linux下(ubuntu+centos) 部署Java项目 当然也包括安装jdk+tomcat+mysql 准备环境: 系统环境:

CentOS环境下R语言的安装和配置

最近在看数据统计和分析,想到了R语言,于是就着手在自己的CentOS环境下进行安装和配置.步骤如下: 1.前往R官网下载安装包. 2.解压压缩包:tar xvzf R-3.2.2.tar.gz 3.进行编译:./configure --prefix=/usr/local/rscript(--prefix的内容自定,这是R的安装目录) 注意:此过程中可能会出现以下错误: --with-readline=yes (default) and headers/libs are not available

centos 安装node js环境

node.js支持多种平台安装,其中Win平台安装比较简单,下面重点讲解下Linux平台的安装步骤.本文以CentOS平台为实例,不准备讲 解采取源码编译安装方式,而是采取在node.js网站下载已经编译好的可执行包,解压安装并设置部分环境变量,因此整个过程非常简单. 1.下载并解压最新的node.js安装包 (Linux平台编译好的文件是 Linux Binaries (.tar.gz) ) 网站地址为:http://www.nodejs.org/download/ ,可在页面上发现nodej

在CentOS上安装GO运行环境及其开发工具LiteIDE

早在五年前,我就想着要是微软出一套基于C语言的易于开发的Web框架该多好,那性能肯定比Asp.Net要高很多.后来知道有个PHP性能不错,但是又由于讨厌在HTML页面里面写蛋疼的后台代码,于是一度很鄙视PHP.最近由于云计算的风行,GO语言也被追捧,下面我就在CentOS系统上安装GO运行时和开发工具做尝试. 一.安装GO运行环境 1.安装GO运行环境,必须确保机子上已经安装了GCC编译器.想知道机子上有没有安装GCC简单,只需输入"gcc --version"查看即可,如果提示了GC

CentOS 安装JDK和环境配置

1. CentOS默认情况下,会安装OpenOffice之类的软件,这些软件需要Java的支持,默认会安装JDK的环境,若需要特定的Java环境,最好将默认的JDK彻底删除: 2. 查看默认的JDK命令:java -version 3. 如果先删除默认再装新的JDK,则与之相关的软件也会随之删除,so,先装新的再卸默认. 4. 下载JDK,http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u4-downloads-15911