LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: 6692975

通过chroot方式安装Arch [最新更新:05-05-17]

[复制链接]
发表于 2005-3-11 19:16:48 | 显示全部楼层
感谢楼主,成功了。又学到东西了,太谢谢了。
回复 支持 反对

使用道具 举报

发表于 2005-5-17 03:17:49 | 显示全部楼层

补充:bootstrap now easy

对于chroot方式安装arch的改进和补充

最近系统出现了一些莫名其妙的问题,所以决定把60G盘上的gentoo删除掉制作另一个arch系统。因为不想影响到正常的使用,所以也选择了chroot安装方式。但做了些投机取巧的工作写在这里,方便大家。


  • 目的:在现有任意linux系统(不必是arch)的基础上,采用chroot方式安装arch到一已挂载的分区上。
  • 途径:使用arch官方论坛上calavera编写的archbootstrap脚本。稍作修改。


具体操作过程:
1、准备分区
这一步不必详述。每个人都不相同。我把hda分成了4个区,分别是根目录、home、boot、data。然后将根目录挂载到/mnt/hda上。创建/mnt/hda/home、/mnt/hda/boot等文件夹,再将home、boot、data 一一挂载。

2、创建基本系统
这一步投机取巧,省了很多功夫。使用了calavera编写的archbootstrap脚本。但该脚本年代久远,有些东西需要修改。我已经改好上传,兄弟们请查看附件。
得到了archbootstrap.tar.bz2后,tar jxfv archbootstrap.tar.bz2解压之。切换到root用户。执行:
# ./archbootstrap /mnt/hda
/mnt/hda是我准备用来安装arch的分区。这条命令后面还可以跟服务器地址作为参数,但用默认的即可。
等一小段时间,执行完毕后,一个arch基本系统就已经创建好了是不是很方便?
小提示:在执行前,你也可以手动创建/mnt/hda/var/cache/pacman/pkg/目录,然后将自己的pkg拷贝进去(不推荐连接,因为下一步chroot进去连接就无效了)。

3、进行安装、配置
首先要将本地的resolv.conf拷贝一份过去,否则chroot进去后将无法连网:
# cp /etc/resolv.conf /mnt/hda/etc/
# chroot /mnt/hda /bin/bash

至此,你已经身处新的arch基本系统中。可以随意pacman -S安装任何东西了(别忘记先pacman -Sy)。
其余的设置,我就不详述了,会采用chroot方式安装arch的兄弟,相信也明白自己需要做什么。
只提醒一点:不要忘记pacman -S kernel26。或者干脆使用现有系统的kernel拷贝过去使用也一样。但不要忘记源码目录和模块儿目录。



--------------------------
我是一边改一边装的,改好的这个似乎仍然有问题,观察了一下,将第26、27行的os/i686/删掉应该就没有问题了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2005-6-22 16:27:49 | 显示全部楼层
不需要拷贝bash。arch的initrd的bin下有sh,是符号连接到那个万金油busybox上去的,所以指定用它就行了:

#chroot /tmp /bin/sh
回复 支持 反对

使用道具 举报

发表于 2005-6-29 23:36:14 | 显示全部楼层
按照楼主的方法作了,chroot后,运行/arch/setup就出现Illegal instruction
请问如何解决?
回复 支持 反对

使用道具 举报

发表于 2005-11-9 16:35:12 | 显示全部楼层
长见识拉。谢谢!!
回复 支持 反对

使用道具 举报

发表于 2006-8-16 14:34:59 | 显示全部楼层
debian:/home/qwer# ./archbootstrap /data
archbootstrap 0.3
Fetching http://mirror.vmmatrix.net/ArchL ... p/pacman.pkg.tar.gz.
Fetching http://mirror.vmmatrix.net/ArchL ... /setup/packages.txt.
Fetching http://mirror.vmmatrix.net/ArchL ... bc-2.4-2.pkg.tar.gz.
warning: cannot find chroot binary - unable to run scriptlets
loading package data... done.
error: unsatisfied dependencies:
  glibc: requires kernel-headers
回复 支持 反对

使用道具 举报

发表于 2006-8-16 14:35:49 | 显示全部楼层
debian:/home/qwer# which chroot
/usr/sbin/chroot
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表