1. 程式人生 > >Linux下的虛擬光碟機和虛擬軟碟機

Linux下的虛擬光碟機和虛擬軟碟機

原文地址:http://blog.csdn.net/int64ago/article/details/7274547

如果你是剛從Windows轉到Linux的話,你可能要問Windows下面有虛擬光碟機,Linux下面有沒有呢?一般來說Windows能做的事情,Linux都能做到,並且做得更好。但是概念上面可能和Windows有點兒不同,需要你以Linux的思維來考慮問題。本文就準備介紹一下Linux的虛擬裝置——迴環裝置——進而講解怎樣通過迴環裝置實現虛擬光碟機,虛擬軟碟機等等虛擬裝置。

       在Linux下面,光碟機,軟碟機都是裝置,在Linux對應於一個位於/dev/下面的裝置檔案。如果你細心的話,你會在/dev/下面發現裡面有一系列的裝置loop0,loop2……。這些裝置是什麼裝置?有什麼作用的呢?這些裝置統稱為迴環裝置(Loop device)。

       迴環裝置可以與當前檔案系統的一個檔案相關聯,並把迴環裝置虛擬成一個塊裝置(硬碟,光碟,軟盤等)。如果關聯檔案包含有特定檔案系統(iso的檔案系統是iso9660,虛擬軟盤img也有特定的檔案系統),則該裝置可以用mount命令掛載到某個目錄下。這樣我們就可以像普通檔案系統一樣訪問這個檔案系統了。

       通過上面的迴環裝置的定義,我們可以知道迴環裝置相當於Windows下面的虛擬光碟機,虛擬軟碟機。Windows下面我們可能只有一個虛擬光碟機,但是在Linux下面我們可以同時載入多個虛擬光碟機,因為Linux中有多個迴環裝置。這點兒Linux做的比Windows要出色。

       那麼我們怎麼使用迴環裝置呢?下面我一個光碟映象a.iso為例來說明怎麼使用。

1、迴環裝置關聯檔案。

losetup /dev/loop0 a.iso

losetup命令用來實現迴環裝置和檔案的關聯。這個命令還可以實現檔案系統的加密,有興趣的朋友可以檢視手冊。

2、掛載迴環裝置到特定目錄,我們假設要掛載到/mnt/下面。

mount /dev/loop0 /mnt/

這樣/mnt/下面就是a.iso的內容了。可以通過shell去訪問它了。

3、用完之後,需要解除安裝會換裝置。

umount /mnt/

這樣裝置就解除安裝,/mnt/下面就不是a.iso的檔案了。

4、迴環裝置和關聯檔案分離。雖然已經在系統中解除安裝了迴環裝置,但是這個裝置和檔案的關聯還存在。假如你還要用這個裝置關聯其他的檔案,系統會提示這個裝置正在忙。所以需要讓迴環裝置和關聯檔案分離。

losetup -d /dev/loop0

       這樣一個光碟映象的使用就完成了。當然同理也可以通過迴環裝置掛載其他的虛擬檔案,比如虛擬軟盤img等,如果你發現有項功能Windows能實現而Linux不能,那肯定是你的沒有找到方法。我們要相信Linux可以做任何事情,前提是我們要多加學習。