Linux操作系統(tǒng)以實(shí)際物理硬盤(pán)做為虛擬文件系統(tǒng)
給大家推薦一款很不錯(cuò)的Linux操作系統(tǒng)很有學(xué)習(xí)價(jià)值,這里我主要講解Linux操作系統(tǒng)的應(yīng)用,包括介紹xLinux操作系統(tǒng)知識(shí)等方面。虛擬Linux操作系統(tǒng)的文件存儲(chǔ)系統(tǒng);我們虛擬的系統(tǒng)應(yīng)該有一個(gè)存儲(chǔ)的地方,也就是文件系統(tǒng)。
被虛擬的系統(tǒng)能安裝和運(yùn)行在哪些文件系統(tǒng)上呢?能安裝和運(yùn)行在一個(gè)實(shí)際的物理分區(qū)上,一個(gè)映像文件中,或NFS等網(wǎng)絡(luò)文件系統(tǒng)中;
以實(shí)際物理硬盤(pán)做為虛擬Linux操作系統(tǒng)文件系統(tǒng);
以實(shí)際物理硬盤(pán)分區(qū)做為虛擬Linux操作系統(tǒng)的文件系統(tǒng),要經(jīng)過(guò)硬盤(pán)分區(qū),創(chuàng)建文件系統(tǒng)流程;請(qǐng)參考:《Linux 創(chuàng)建文件系統(tǒng)及掛載文件系統(tǒng)流程詳解》準(zhǔn)備物理分區(qū)及創(chuàng)建文件系統(tǒng);
《Linux 查看磁盤(pán)分區(qū)、文件系統(tǒng)、使用情況的命令和相關(guān)工具介紹》
《實(shí)例解說(shuō) fdisk 使用方法》
《合理規(guī)劃您的硬盤(pán)分區(qū)》
《Linux 創(chuàng)建文件系統(tǒng)及掛載文件系統(tǒng)流程詳解》
在物理分區(qū)上構(gòu)建Linux操作系統(tǒng);
構(gòu)建Linux操作系統(tǒng),目前在一個(gè)Linux操作系統(tǒng)中構(gòu)建另一個(gè)Linux操作系統(tǒng),主要是通過(guò)chroot工具和軟件包提取工具來(lái)構(gòu)建?;A(chǔ)的東西還是需要一點(diǎn)的,請(qǐng)參考:《通過(guò)chroot 構(gòu)建Linux操作系統(tǒng)概要》
目前在開(kāi)源社區(qū)中,已經(jīng)有人把一些常用的發(fā)行版的基礎(chǔ)系統(tǒng)做好了。我們能拿過(guò)來(lái)直接用。呵。。。。。只要有基礎(chǔ)系統(tǒng),我們就能chroot進(jìn)入,我們就能用相應(yīng)發(fā)行版軟件包管理器來(lái)構(gòu)建Linux操作系統(tǒng)了。
Linux操作系統(tǒng)之基礎(chǔ)系統(tǒng)資源:http://jailtime.org您可以直接下載您喜歡的Linux操作系統(tǒng),解壓后,然后掛載映像文件,然后把映像文件的內(nèi)容都拷到物理分區(qū)中就好了。不過(guò)還得做一點(diǎn)小小的修改,比如您下載系統(tǒng)映像文件中的/etc/fstab等文件。要根據(jù)您的引導(dǎo)的虛擬Linux操作系統(tǒng)中定義的虛擬映射點(diǎn)來(lái)改。
虛擬Linux操作系統(tǒng)的引導(dǎo)文件中關(guān)于文件系統(tǒng)的定義;
如果您的硬盤(pán)有一定的空間,就可以把被虛擬的Linux操作系統(tǒng)安裝在硬盤(pán)的實(shí)際物理分區(qū)中,當(dāng)然您首先得準(zhǔn)備一個(gè)硬盤(pán)分區(qū)。然后格式化成Linux的文件系統(tǒng),比如ext3或reiserfs 等;
然后是在這個(gè)分區(qū)上構(gòu)建您想要虛擬的Linux操作系統(tǒng),***才是寫(xiě)虛擬Linux操作系統(tǒng)的引導(dǎo)配置文件,在配置文件中,要用phy:來(lái)指定。比如:disk = ['phy:hda7,sda1,w'] 中文意思就是:disk=['phy:分區(qū),映射點(diǎn),w']
這行是什么意思呢?就是表示被虛擬的Linux操作系統(tǒng)安裝在/dev/hda3,我們要把hda3硬盤(pán)分區(qū)虛擬映射到/dev/sda1,并且是可讀可寫(xiě)的;在這里要值得注意的是虛擬平臺(tái)正在使用中的分區(qū)不能做為是映射點(diǎn)。
比如我在Slackware是位于/dev/hda6的虛擬平臺(tái),也就是真實(shí)運(yùn)行的Linux操作系統(tǒng),我想用它來(lái)虛擬位于/dev/hda7分區(qū)的Fedora。所以我不能把/dev/hda6做為hda7的映射點(diǎn)。也就是下面一行是錯(cuò)誤的:
- disk = ['phy:hda7,hda6,w'] 如何定義映射點(diǎn),其實(shí)也比較好辦,只要符合Linux設(shè)備的規(guī)則就可以;比如下面的也可以;
- disk = ['phy:hda7,sda2,w']
- disk = ['phy:hda7,sda3,w']
- disk = ['phy:hda7,sdb1,w']
- disk = ['phy:hda7,sdb2,w']
- ... ...
什么是映射點(diǎn)呢?也就是說(shuō)通過(guò)phy定義后,被虛擬的Linux操作系統(tǒng)的位于的真實(shí)的物理分區(qū),在虛擬平臺(tái)中,被映射到另一個(gè)分區(qū);可能這樣說(shuō)有點(diǎn)不太明白。舉個(gè)例子吧:比如我們?cè)赟lackware虛擬Fedora ,而Fedora 位于/dev/hda7中。我們?cè)谝龑?dǎo)Fedora的配置文件中定義Fedora所用的物理分區(qū)被映射到/dev/sda1;
- disk = ['phy:hda7,sda1,w']
- root = "/dev/sda1 ro"
當(dāng)我們把Fedora引導(dǎo)起來(lái)的時(shí)候,F(xiàn)edora的文件系統(tǒng)就是用被虛擬后的分區(qū),也就是/dev/sda1。在Fedora中,我們通過(guò)df -h 查看到Fedora是位于/dev/sda1。所以在引導(dǎo)Fedora的配置文件中,還要有一行來(lái)指定Fedora的root在哪里,就在/dev/sda1上;因?yàn)?dev/hda7已經(jīng)被虛擬到了/dev/sda1。這回明白了吧;
以映像文件做虛擬Linux操作系統(tǒng)的文件系統(tǒng);
以映像文件做為虛擬Linux操作系統(tǒng)的文件系統(tǒng),這種方法是比較常用。也是比較方便和易于操作的,也就是說(shuō)被虛擬的Linux操作系統(tǒng)是放在了一個(gè)文件中。
創(chuàng)建映像文件;
- [root@localhost ~]# dd if=/dev/zero of=fedora50.img bs=2k seek=2048k count=1
- 讀入了 1+0 個(gè)塊
- 輸出了 1+0 個(gè)塊
- [root@localhost ~]# ls -lh fedora50.img
- -rw-r--r-- 1 root root 4.1G 2006-04-13 01:27 fedora50.img
我們可以用dd來(lái)創(chuàng)建映像文件,上面的例子是創(chuàng)建了大小為4.1G的體積的,名為fedora50.img的映像文件;您可以調(diào)整上面命令參數(shù)的大小來(lái)創(chuàng)建您想要的體積大小的映像文件。
格式化映像為L(zhǎng)inux文件系統(tǒng);
Linux文件系統(tǒng),比如ext3或reiserfs,看自己喜歡吧;您可以用mkfs.ext3或mkfs.reiserfs命令來(lái)創(chuàng)建文件系統(tǒng),請(qǐng)參考:
- [root@localhost ~]# /sbin/mkfs.ext3 fedora50,img
- mke2fs 1.38 (30-Jun-2005)
- fedora50,img is not a block special device.
- Proceed anyway? (y,n) y 注:在這里輸入y就時(shí)行格式化了,然后遇到提示之處,都是用回車(chē)。
這樣fedora50.img就是ext3文件系統(tǒng)了,你可以用mount -o loop 來(lái)掛載使用它,在它上面存儲(chǔ)文件等。
- [root@localhost ~]# mkdir /mnt/fedora50
- [root@localhost ~]# mount -o loop fedora50.img /mnt/fedora50
- [root@localhost ~]# df -h
- root@localhost:/opt# df -lh
- Filesystem 容量 已用 可用 已用% 掛載點(diǎn)
- /dev/hda6 12G 8.5G 3.3G 73% /
- /root/fedora50,img 4.0G 129M 3.7G 4% /mnt/fedora
上面的一系列命令執(zhí)行下去后,說(shuō)明fedora50.img已經(jīng)掛載到了/mnt/fedora目錄中,我們可以向/mnt/fedora中存放文件。這樣就寫(xiě)到了fedora50.img映像文件中。寫(xiě)完后,我們可以卸載fedora50.img;[root@localhost ~]# umount /mnt/fedora
在映像文件上構(gòu)建Linux操作系統(tǒng);
在映像文件上構(gòu)建Linux操作系統(tǒng),目前在一個(gè)LinuxLinux操作系統(tǒng)中構(gòu)建另一個(gè)Linux操作系統(tǒng),主要是通過(guò)chroot工具和軟件包提取工具來(lái)構(gòu)建。基礎(chǔ)的東西還是需要一點(diǎn)的,請(qǐng)參考:目前在開(kāi)源社區(qū)中,已經(jīng)有人把一些常用的發(fā)行版的基礎(chǔ)系統(tǒng)做好了。我們能拿過(guò)來(lái)直接用。
只要有基礎(chǔ)系統(tǒng),我們就能chroot進(jìn)入,我們就能用相應(yīng)發(fā)行版軟件包管理器來(lái)構(gòu)建Linux操作系統(tǒng)了。 Linux操作系統(tǒng)之基礎(chǔ)系統(tǒng)資源:http://jailtime.org虛擬Linux操作系統(tǒng)的引導(dǎo)文件中關(guān)于文件系統(tǒng)的定義;
- disk = ['file:/opt/vmos/vmos.img,sda1,w', 'file:/opt/vmos/vmos.swap,sda2,w']
- root = "/dev/sda1 ro"
我們還是以實(shí)例解說(shuō),把裝有vmos.img的映像映射到/dev/sda1 分區(qū),vmos.img就是虛擬Linux操作系統(tǒng)root存放地。vmos.swap是被虛擬文件系統(tǒng)的交換分區(qū),這個(gè)交換分區(qū)也是一個(gè)文件,被映射到了/dev/sda2 。然后通過(guò)root= 行來(lái)指定虛擬Linux操作系統(tǒng)所處的分區(qū),這個(gè)位置就是被虛擬后的分區(qū)。
定義時(shí)要注意自己的這些文件存放在哪了?上面的例子表示vmos.img和vmos.swap是存放在/opt/vmos目錄中。要看好了。。
【編輯推薦】