第二步:創建文件系統;
我們可以創建為ext3、fat32或reiserfs等文件系統,創建文件系統,請參考:《存儲設備分區操作及文件系統管理概述》
[root@localhost ~]# /sbin/mkfs.ext3 slack.img |
[root@localhost ~]# mkdir /mnt/slack |
第四步以后和物理硬盤操作基本相同,省略過去;
6、有關軟件包rpm、tgz、deb等軟件包提??;
發行版都有一定的軟件包格式,比如 file.rpm 、file.deb或file.tgz或file.tar.gz等;rpm格式的軟件包,一般基于Redhat或Fedora為基礎開發的都采用RPM格式。因為chroot安裝操作系統,首要的是從一個軟件包中提取文件,然后復制到文件系統中,所以提取文件工具也得做一點解說;
6.1 從rpm軟件包抽取文件;
操作的前提是得有rpm的管理工具,也就是說得有rpm等相關命令;
命令格式: rpm2cpio file.rpm |cpio -div
舉例:
[root@localhost RPMS]# rpm2cpio gaim-1.3.0-1.fc4.i386.rpm |cpio -div |
抽取出來的文件就在當用操作目錄中的 usr 和etc中;
其實這樣抽到文件不如指定安裝目錄來安裝軟件來的方便;也一樣可以抽出文件;
為軟件包指定安裝目錄:要加 -relocate 參數;下面的舉例是把gaim-1.3.0- 1.fc4.i386.rpm指定安裝在 /opt/gaim 目錄中;
[root@localhost RPMS]# rpm -ivh --relocate /=/opt/gaim gaim-1.3.0-1.fc4.i386.rpm |
這樣也能一目了然;gaim的所有文件都是安裝在 /opt/gaim 中,我們只是把gaim 目錄備份一下,這樣其實也算提取文件的一點用法;
6.2 file.tgz、file.tar.gz和file.tar.bz2的提??;
|
6.3 file.deb的提??;
[root@localhost ~]# ar x file.deb |
file.deb通過ar x 來解包,然后再把data.tar.gz解開就看到相關的目錄和文件了;
6.4 file.iso文件的提??;
這樣的文件在Linux主要通過mount -o loop file.iso 掛載地址;比如 ;
[root@localhost ~]# mount -o loop slackware-10.2-install-d1.iso /mnt/cdrom/ |
6.5 提取文件相關參考;
《文件解壓縮》
《RPM 的介紹和應用》
http://debian.linuxsir.org
http://slack.linuxsir.org
7、chroot 成功切入新的操作系統后的軟件安裝問題補充;
如果通過chroot能進入新安裝的操作系統,我們就可以新操作系統的軟件包管理工具來安裝其它軟件包了,比如 Slackware 用的是pkgtool 或installpkg工具;Fedora 用的是 rpm 等工具;大多發行版所用的工具不盡相同,以發行版為準 ;
8、關于本文;
在去年的時候就想寫此文,隨著時間的推移,今天想起來的事情可能明天就忘的差不多了,所以用到 chroot的時候就想寫,用不到的時候就把寫文檔的事扔到一邊。今天正好寫關于Xen的文檔,也恰恰用到chroot方式安裝新的操作系統,所以“被迫”中寫了一篇。雖然涉及chroot的功用少了點,但大體上還是把chroot說了差不多了;可能本文的名字有點不符合,我也不知道用什么命名標題不好。慢慢修正中... ...
原文轉自:http://www.anti-gravitydesign.com