[文件系统]Image映象文件
生活随笔
收集整理的這篇文章主要介紹了
[文件系统]Image映象文件
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一、創(chuàng)建磁盤映象文件
硬盤總扇區(qū)數(shù) = 物理磁道數(shù) X 物理磁頭數(shù) X 每磁道扇區(qū)數(shù)
對于軟盤來說,我們可以把它看作是一種具有固定磁道數(shù)(柱面數(shù))、磁頭數(shù)和每磁道扇區(qū)數(shù)(spt - Sectors Per Track)的超小型硬盤。例如容量是1.44MB的軟盤參數(shù)是80個(gè)磁道、2個(gè)磁頭和每磁道有18個(gè)扇區(qū)、每個(gè)扇區(qū)有512字節(jié)。其扇區(qū)總數(shù)是2880,總?cè)萘渴?0 x 2 x 18 x 512 = 1474560字節(jié)。
1 利用Bochs軟件自帶的Image生成工具
Bochs系統(tǒng)帶有一個(gè)Image生成工具“Disk Image Creation Tool”(bximage.exe)。用它可以制作軟盤和硬盤的空Image文件。在運(yùn)行并出現(xiàn)了Image創(chuàng)建界面時(shí),程序首先會提示選擇需要創(chuàng)建的Image類型(硬盤hd還是軟盤fd)。若是創(chuàng)建硬盤,還會提示輸入硬盤Image的mode類型。通常只需要選擇其默認(rèn)值flat即可。然后輸入你需要創(chuàng)建的Image容量。程序會顯示對應(yīng)的硬盤參數(shù)值:柱面數(shù)(磁道數(shù)、磁頭數(shù)和每磁道扇區(qū)數(shù),并要求輸入Image文件的名稱。程序在生成了Image文件之后,會顯示一條用于Bochs配置文件中設(shè)置硬盤參數(shù)的配置信息。
2 在Linux系統(tǒng)下使用dd命令創(chuàng)建Image文件。
前面已經(jīng)說明,剛創(chuàng)建的Image文件是一個(gè)內(nèi)容全為0的空文件,只是其容量與要求的一致。因此我們可以首先計(jì)算出要求容量的Image文件的扇區(qū)數(shù),然后使用dd命令來產(chǎn)生相應(yīng)的Image文件。
例如:
(1)建立柱面數(shù)是520、磁頭數(shù)是16、每磁道扇區(qū)數(shù)是63的硬盤Image文件,其扇區(qū)總數(shù)為:520 * 16 * 63 = 524160,則命令為:
dd if=/dev/zero of=hdc.img bs=512 count=524160
(2)對于1.44MB的軟盤Image文件,其扇區(qū)數(shù)是2880,因此命令為:
dd if=/dev/zero of=diska.img bs=512 count=2880
14.3.3 利用WinImage創(chuàng)建DOS格式的軟盤Image文件
WinImage是一個(gè)DOS格式Image文件訪問和創(chuàng)建工具。雙擊DOS軟盤Image文件的圖標(biāo)就可以瀏覽、刪除或往里添加文件。除此之外,它還能用于瀏覽CDROM的iso文件。使用WinImage創(chuàng)建軟盤Image時(shí)可以生成一個(gè)帶有DOS格式的Image文件。
方法如下:
a) 運(yùn)行WinImage。選擇“Options->Settings”菜單,選擇其中的Image設(shè)置頁。設(shè)置Compression為“None”(也即把指示標(biāo)拉到最左邊)。
b) 創(chuàng)建Image文件。選擇菜單File->New,此時(shí)會彈出一個(gè)軟盤格式選擇框。請選擇容量是1.44MB的格式。
c) 再選擇引導(dǎo)扇區(qū)屬性菜單項(xiàng)Image->Boot Sector properties,單擊對話框中的MS-DOS按鈕。
d) 保存文件。
注意,在保存文件對話框中“保存類型”一定要選擇“All files (*.*)”,否則創(chuàng)建的Image文件中會包含一些WinImage自己的信息,從而會造成Image文件在Bochs下不能正常使用??梢酝ㄟ^查看文件長度來確定新創(chuàng)建Image是否符合要求
二、訪問磁盤映象文件中的信息
利用磁盤映象讀寫工具訪問軟盤映象文件中的信息(小文件或分割的文件)
在Linux主環(huán)境中利用loop設(shè)備訪問硬盤映象文件中的信息。(大批量信息交換)
利用iso格式文件進(jìn)行信息交換(大批量信息交換)
1 使用WinImage工具軟件
用WinImage打開diskb.img文件,在WinImage的主窗口中會有一個(gè)hello.c文件存在。
用鼠標(biāo)選中該文件并拖到桌面上即完成了取文件的整個(gè)操作過程。
如果需要把某個(gè)文件輸入到模擬系統(tǒng)中,那么操作步驟正好與上述相反。
2 利用現(xiàn)有Linux系統(tǒng)
(1)訪問軟盤鏡象:
mount -t minix rootimage-0.11 /mnt -o loop
其中mount命令的-t minix選項(xiàng)指明所讀文件系統(tǒng)類型是MINIX,-o loop選項(xiàng)說明通過loop設(shè)備來加載文件系統(tǒng)。
若需要訪問DOS格式軟盤Image文件,只需把mount 命令中的文件類型選項(xiàng)minix換成msdos即可。
(2)如果想訪問硬盤Image文件,就復(fù)雜了:
losetup /dev/loop1 hdc-0.11.img
fdisk /dev/loop1
查看分區(qū)情況,記下分區(qū)起始柱號、扇區(qū)數(shù)等信息
losetup -d /dev/loop1
losetup -o 512 /dev/loop1 hdc-0.11.img
mount -t minix /dev/loop1 /mnt
說明:用losetup的-d選項(xiàng)把hdc-0.11.img文件與loop1的關(guān)聯(lián)解除,用losetup的-o選項(xiàng),該選項(xiàng)指明關(guān)聯(lián)的起始字節(jié)偏移位置。由上面分區(qū)信息可知,這里第1個(gè)分區(qū)的起始偏移位置是1 * 512 字節(jié)。在把第1個(gè)分區(qū)與loop1重新關(guān)聯(lián)后,我們就可以使用mount命令來訪問其中的文件了。在對分區(qū)中文件系統(tǒng)訪問結(jié)束后,最后請卸載和解除關(guān)聯(lián)。
umount /dev/loop1
losetup -d /dev/loop1
硬盤總扇區(qū)數(shù) = 物理磁道數(shù) X 物理磁頭數(shù) X 每磁道扇區(qū)數(shù)
對于軟盤來說,我們可以把它看作是一種具有固定磁道數(shù)(柱面數(shù))、磁頭數(shù)和每磁道扇區(qū)數(shù)(spt - Sectors Per Track)的超小型硬盤。例如容量是1.44MB的軟盤參數(shù)是80個(gè)磁道、2個(gè)磁頭和每磁道有18個(gè)扇區(qū)、每個(gè)扇區(qū)有512字節(jié)。其扇區(qū)總數(shù)是2880,總?cè)萘渴?0 x 2 x 18 x 512 = 1474560字節(jié)。
1 利用Bochs軟件自帶的Image生成工具
Bochs系統(tǒng)帶有一個(gè)Image生成工具“Disk Image Creation Tool”(bximage.exe)。用它可以制作軟盤和硬盤的空Image文件。在運(yùn)行并出現(xiàn)了Image創(chuàng)建界面時(shí),程序首先會提示選擇需要創(chuàng)建的Image類型(硬盤hd還是軟盤fd)。若是創(chuàng)建硬盤,還會提示輸入硬盤Image的mode類型。通常只需要選擇其默認(rèn)值flat即可。然后輸入你需要創(chuàng)建的Image容量。程序會顯示對應(yīng)的硬盤參數(shù)值:柱面數(shù)(磁道數(shù)、磁頭數(shù)和每磁道扇區(qū)數(shù),并要求輸入Image文件的名稱。程序在生成了Image文件之后,會顯示一條用于Bochs配置文件中設(shè)置硬盤參數(shù)的配置信息。
2 在Linux系統(tǒng)下使用dd命令創(chuàng)建Image文件。
前面已經(jīng)說明,剛創(chuàng)建的Image文件是一個(gè)內(nèi)容全為0的空文件,只是其容量與要求的一致。因此我們可以首先計(jì)算出要求容量的Image文件的扇區(qū)數(shù),然后使用dd命令來產(chǎn)生相應(yīng)的Image文件。
例如:
(1)建立柱面數(shù)是520、磁頭數(shù)是16、每磁道扇區(qū)數(shù)是63的硬盤Image文件,其扇區(qū)總數(shù)為:520 * 16 * 63 = 524160,則命令為:
dd if=/dev/zero of=hdc.img bs=512 count=524160
(2)對于1.44MB的軟盤Image文件,其扇區(qū)數(shù)是2880,因此命令為:
dd if=/dev/zero of=diska.img bs=512 count=2880
14.3.3 利用WinImage創(chuàng)建DOS格式的軟盤Image文件
WinImage是一個(gè)DOS格式Image文件訪問和創(chuàng)建工具。雙擊DOS軟盤Image文件的圖標(biāo)就可以瀏覽、刪除或往里添加文件。除此之外,它還能用于瀏覽CDROM的iso文件。使用WinImage創(chuàng)建軟盤Image時(shí)可以生成一個(gè)帶有DOS格式的Image文件。
方法如下:
a) 運(yùn)行WinImage。選擇“Options->Settings”菜單,選擇其中的Image設(shè)置頁。設(shè)置Compression為“None”(也即把指示標(biāo)拉到最左邊)。
b) 創(chuàng)建Image文件。選擇菜單File->New,此時(shí)會彈出一個(gè)軟盤格式選擇框。請選擇容量是1.44MB的格式。
c) 再選擇引導(dǎo)扇區(qū)屬性菜單項(xiàng)Image->Boot Sector properties,單擊對話框中的MS-DOS按鈕。
d) 保存文件。
注意,在保存文件對話框中“保存類型”一定要選擇“All files (*.*)”,否則創(chuàng)建的Image文件中會包含一些WinImage自己的信息,從而會造成Image文件在Bochs下不能正常使用??梢酝ㄟ^查看文件長度來確定新創(chuàng)建Image是否符合要求
二、訪問磁盤映象文件中的信息
利用磁盤映象讀寫工具訪問軟盤映象文件中的信息(小文件或分割的文件)
在Linux主環(huán)境中利用loop設(shè)備訪問硬盤映象文件中的信息。(大批量信息交換)
利用iso格式文件進(jìn)行信息交換(大批量信息交換)
1 使用WinImage工具軟件
用WinImage打開diskb.img文件,在WinImage的主窗口中會有一個(gè)hello.c文件存在。
用鼠標(biāo)選中該文件并拖到桌面上即完成了取文件的整個(gè)操作過程。
如果需要把某個(gè)文件輸入到模擬系統(tǒng)中,那么操作步驟正好與上述相反。
2 利用現(xiàn)有Linux系統(tǒng)
(1)訪問軟盤鏡象:
mount -t minix rootimage-0.11 /mnt -o loop
其中mount命令的-t minix選項(xiàng)指明所讀文件系統(tǒng)類型是MINIX,-o loop選項(xiàng)說明通過loop設(shè)備來加載文件系統(tǒng)。
若需要訪問DOS格式軟盤Image文件,只需把mount 命令中的文件類型選項(xiàng)minix換成msdos即可。
(2)如果想訪問硬盤Image文件,就復(fù)雜了:
losetup /dev/loop1 hdc-0.11.img
fdisk /dev/loop1
查看分區(qū)情況,記下分區(qū)起始柱號、扇區(qū)數(shù)等信息
losetup -d /dev/loop1
losetup -o 512 /dev/loop1 hdc-0.11.img
mount -t minix /dev/loop1 /mnt
說明:用losetup的-d選項(xiàng)把hdc-0.11.img文件與loop1的關(guān)聯(lián)解除,用losetup的-o選項(xiàng),該選項(xiàng)指明關(guān)聯(lián)的起始字節(jié)偏移位置。由上面分區(qū)信息可知,這里第1個(gè)分區(qū)的起始偏移位置是1 * 512 字節(jié)。在把第1個(gè)分區(qū)與loop1重新關(guān)聯(lián)后,我們就可以使用mount命令來訪問其中的文件了。在對分區(qū)中文件系統(tǒng)訪問結(jié)束后,最后請卸載和解除關(guān)聯(lián)。
umount /dev/loop1
losetup -d /dev/loop1
總結(jié)
以上是生活随笔為你收集整理的[文件系统]Image映象文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决Vista文件操作缓慢问题:五大方案
- 下一篇: 千万别强制停机!我嘴都气歪了!