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

author author     2022-07-31     571

关键词:

有时我们需要运行最新的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=‘33[1;93;45m${debian_chroot:+($debian_chroot)}33[0m[33[01;32m][email protected][33[01;34m]w[33[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=‘33[1;93;44m${debian_chroot:+($debian_chroot)}33[0m[33[01;32m][email protected][33[01;34m]w[33[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


本文出自 “11172063” 博客,请务必保留此出处http://11182063.blog.51cto.com/11172063/1795906

sh如何在debian/ubuntu上安装nginx和googlepagespeed(代码片段)

查看详情

如何在ubuntu/debian/linuxmint中编译和安装wxwidgets

参考技术Asudoapt-getinstallgitgccgitclonehttps://github.com/wxWidgets/wxWidgetscdwxWidgetsconfiguremakemakeinstall 查看详情

如何制作定制的ubuntu镜像

...作如下:一、从零开始构建Ubuntu-Server系统安装镜像1)、Debian-installer--initrd.gz、vmlinuz和isolinux/的制作Debian-installer是Debian的系统安装程序,ubuntu的server和alternate版都是使用Debian-installer作为系统安装程序。Debian-installer是一种字符界... 查看详情

debian和ubuntu那个要求配置低

...尤其是7.10以后的版本我个人认为对机器的要求都高了,debian我没有用过,但听说要求配置不是很高,那个大侠来推荐一下,debian和ubuntu那个要求配置低一些,还有那些LINUX系统对机器的配置要求低的,要求图形界面的debian要求低... 查看详情

如何在debian和ubuntu下重新打包deb文件

...A应该是"dpkg-i/path/to/packagename.deb"这样的格式~dpkg是Debian的Deb文件管理程序~-i是安装的选项后面/path/to/packagename.deb是路径及文件名~如果就是在当前目录下那么就dpkg-i./packagename.deb就可以了~记得把packagename换成你要安装的deb的... 查看详情

shbash脚本安装apache,mysql和php以及phpmyadmin和一些调整。对于debian和ubuntu。要运行,请将脚本复制到se(代码片段)

查看详情

如何在debian或ubuntu上安装完整的内核源码

你好,在Debian上安装完整的内核源码  在下载内核源码之前,先安装dpkg-dev,其中包含你在Debian上生成源代码时需要的开发工具套件。不仅如此,dpkg-dev中还包含在用来解压Debian源码包并自动打补丁的工具dpgk-source。  $sudoapt-... 查看详情

如何在debian或ubuntu上安装完整的内核源码

在Debian上安装完整的内核源码在下载内核源码之前,先安装dpkg-dev,其中包含你在Debian上生成源代码时需要的开发工具套件。不仅如此,dpkg-dev中还包含在用来解压Debian源码包并自动打补丁的工具dpgk-source。$sudoapt-getinstalldpkg-dev然... 查看详情

linux系列教程——linux系统安装(手把手学安装centos6.8)

...代码编译重新发布版。CentOS去除很多与服务器功能无关的应用,系统简单但非常稳定,命令行操作可以方便管理系统和应用,并且有帮助文档和社区的支持。一般新手入门比较好。  Ubuntu有亮丽的用户界面,完善的包管理系统... 查看详情

ubuntu下轻松使用apt命令安装软件

...ianLinux使用dpkg打包系统。打包系统是一种提供安装程序和应用程序的方式。这样,您就不必从源代码构建程序,相信我,这不是处理包的好方法。APT(AdvancePackageTool)是在基于Debian的Linux发行版中与打包系统交互的命令行工具。... 查看详情

如何在debian10上安装elasticsearch(代码片段)

...search是最流行的搜索引擎之一,可为具有复杂搜索要求的应用程序提供动力,例如大型电子商务商店和分析应用程序。本教程介绍了如何在Debian10上安装Elasticsearch。安装JavaElasticsearch是一个Java应用程序,因此第一步是安装Java。... 查看详情

ubuntu用户apt安装软件包都不会?

...ianLinux使用dpkg打包系统。打包系统是一种提供安装程序和应用程序的方式。这样,您就不必从源代码构建程序,相信我,这不是处理包的好方法。APT(AdvancePackageTool)是在基于Debian的Linux发行版中与打包系统交互的命令行工具。... 查看详情

ubuntu用户apt安装软件包都不会?

...ianLinux使用dpkg打包系统。打包系统是一种提供安装程序和应用程序的方式。这样,您就不必从源代码构建程序,相信我,这不是处理包的好方法。APT(AdvancePackageTool)是在基于Debian的Linux发行版中与打包系统交互的命令行工具。... 查看详情

sh如何在debian/ubuntu上安装phantomjs(代码片段)

查看详情

debian安装配置(包括kdevelop)

最近几天折腾了一下Debian7(gnome桌面DVD版,KDE桌面CD版最后会提到),总的来说收获还是挺大的,对比以前使用ubuntu,debian7给我的感觉像是一个新生婴儿,不带多余的花俏,那么的简单和单纯。话不多说,下面写出自己安装完deb... 查看详情

求助,网络安装debian出现无法安装grub

...选项dpkgRepairbrokenpackages修复受损的deb软件包deb是指ubuntu和debian的软件包参考技术A使用硬盘安装方法,将其它硬盘、U盘先拿下来,只保留一块硬盘再安装。 参考技术B42、九月九日忆山东兄弟王维 查看详情

使用podman创建debian/centos/ubuntu系统容器

...用OpenContainersInitiative轻松查找、运行、构建、共享和部署应用程序(OCI) Containers 和 ContainerImages 。Podman提供了任何使用过Docker的人都熟悉的命令行界面(CLI ContainerEngine  查看详情

如何在debian/ubuntu/kali上重新打包已安装的软件(代码片段)

  HowToRepackInstalledSoftwareonDebian/Ubuntu  Itcanhappenthataparticularversionofaspecifictweakedpackagenolongeravailableelsewhereoryouwanttheexact“clone”oftherunningsoftware.IfyouhaveinstalledsomeDe 查看详情