從 ISO 映象中提取和複製檔案的絕招(Linux)

roc_guo發表於2023-03-01

比如說,你可以使用傳統的 mount  以只讀方式把 ISO 映象檔案載入為 loop 裝置,然後再把檔案複製到另一個目錄。

在 Linux 系統下提取 ISO 映象檔案

為了完成該測試,你得有一個 ISO 映象檔案(我使用 ubuntu-16.10-server-amd64.iso 系統映象檔案)以及用於掛載和提取 ISO 映象檔案的目錄。

首先,使用如下 建立一個掛載目錄來掛載 ISO 映象檔案:

$ sudo mkdir /mnt/iso

目錄建立完成後,你就可以執行如下命令很容易地掛載 ubuntu-16.10-server-amd64.iso 系統映象檔案,並檢視其中的內容。

$ sudo mount -o loop ubuntu-16.10-server-amd64.iso /mnt/iso
$ ls /mnt/iso/

從 ISO 映象中提取和複製檔案的絕招(Linux)從 ISO 映象中提取和複製檔案的絕招(Linux)

在 Linux 系統裡掛載 ISO 映象

現在你就可以進入到掛載目錄 /mnt/iso 裡,檢視檔案或者使用cp 命令把檔案複製到 /tmp 目錄了。

$ cd /mnt/iso
$ sudo cp md5sum.txt /tmp/
$ sudo cp -r ubuntu /tmp/

從 ISO 映象中提取和複製檔案的絕招(Linux)從 ISO 映象中提取和複製檔案的絕招(Linux)

在 Linux 系統中複製 ISO 映象裡的檔案

注意:"-r" 選項用於遞迴複製目錄裡的內容。如有必要,你也可以監控複製命令的完成進度。

使用 7zip 命令提取 ISO 映象裡的內容

如果不想掛載 ISO 映象,你可以簡單地安裝一個 7zip 工具,這是一個自由而開源的解壓縮軟體,用於壓縮或解壓不同型別格式的檔案,包括 TAR、XZ、GZIP、ZIP、BZIP2 等等。

$ sudo apt-get install p7zip-full p7zip-rar [On Debian/Ubuntu systems]
$ sudo yum install p7zip p7zip-plugins      [On CentOS/RHEL systems]

7zip 軟體安裝完成後,你就可以使用7z命令提取 ISO 映象檔案裡的內容了。

$ 7z x ubuntu-16.10-server-amd64.iso

從 ISO 映象中提取和複製檔案的絕招(Linux)從 ISO 映象中提取和複製檔案的絕招(Linux)

使用 7zip 工具在 Linux 系統下提取 ISO 映象裡的檔案

注意:跟 Linux 的 mount 命令相比起來,7zip 在壓縮和解壓縮任何格式的檔案時速度更快,更智慧。

使用 isoinfo 命令來提取 ISO 映象檔案內容

雖然isoinfo命令是用來以目錄的形式列出 iso9660 映象檔案的內容,但是你也可以使用該程式來提取檔案。
我說過,isoinfo 程式會顯示目錄列表,因此先列出 ISO 映象檔案的內容。

$ isoinfo -i ubuntu-16.10-server-amd64.iso -l

從 ISO 映象中提取和複製檔案的絕招(Linux)從 ISO 映象中提取和複製檔案的絕招(Linux)

Linux 裡列出 ISO 檔案的內容

現在你可以按如下的方式從 ISO 映象檔案中提取單檔案:

$ isoinfo -i ubuntu-16.10-server-amd64.iso -x MD5SUM.TXT > MD5SUM.TXT

注意:因為"-x"解壓到標準輸出,必須使用重定向來提取指定檔案。
從 ISO 映象中提取和複製檔案的絕招(Linux)從 ISO 映象中提取和複製檔案的絕招(Linux)

從 ISO 映象檔案中提取單個檔案

就到這裡吧,其實還有很多種方法來實現這個要求,如果你還知道其它有用的命令或工具來提取複製出 ISO 映象檔案中的檔案,請在下面的評論中跟大家分享下。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69901823/viewspace-2937735/,如需轉載,請註明出處,否則將追究法律責任。

相關文章