閱讀974 返回首頁    go 阿裏雲 go 技術社區[雲棲]


在 Linux 係統下從 ISO 鏡像中提取和複製文件的 3 種方法

假設你的 Linux 服務器上有一個超大的 ISO 鏡像文件,你想要打開它,然後提取或者複製其中的一個文件。你會怎麼做呢?

其實在 Linux 係統裏,有很多方法來實現這個要求。

比如說,你可以使用傳統的 mount 命令以隻讀方式把 ISO 鏡像文件加載為 loop 設備,然後再把文件複製到另一個目錄。

在 Linux 係統下提取 ISO 鏡像文件

為了完成該測試,你得有一個 ISO 鏡像文件(我使用 ubuntu-16.10-server-amd64.iso 係統鏡像文件)以及用於掛載和提取 ISO 鏡像文件的目錄。

首先,使用如下命令創建一個掛載目錄來掛載 ISO 鏡像文件:


  1. $ sudo mkdir /mnt/iso

目錄創建完成後,你就可以運行如下命令很容易地掛載 ubuntu-16.10-server-amd64.iso 係統鏡像文件,並查看其中的內容。


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

在 Linux 係統裏掛載 ISO 鏡像

在 Linux 係統裏掛載 ISO 鏡像

現在你就可以進入到掛載目錄 /mnt/iso 裏,查看文件或者使用 cp 命令把文件複製到 /tmp 目錄了。


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

在 Linux 係統中複製 ISO 鏡像裏的文件

在 Linux 係統中複製 ISO 鏡像裏的文件

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

使用 7zip 命令提取 ISO 鏡像裏的內容

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


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

7zip 軟件安裝完成後,你就可以使用7z 命令提取 ISO 鏡像文件裏的內容了。

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

使用 7zip 工具在 Linux 係統下提取 ISO 鏡像裏的文件

使用 7zip 工具在 Linux 係統下提取 ISO 鏡像裏的文件

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

使用 isoinfo 命令來提取 ISO 鏡像文件內容

雖然 isoinfo 命令是用來以目錄的形式列出 iso9660 鏡像文件的內容,但是你也可以使用該程序來提取文件。

我說過,isoinfo 程序會顯示目錄列表,因此先列出 ISO 鏡像文件的內容。


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

Linux 裏列出 ISO 文件的內容

Linux 裏列出 ISO 文件的內容

現在你可以按如下的方式從 ISO 鏡像文件中提取單文件:


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

注意:因為 -x 解壓到標準輸出,必須使用重定向來提取指定文件。

從 ISO 鏡像文件中提取單個文件

從 ISO 鏡像文件中提取單個文件

原文發布時間為:2017-11-27

本文來自雲棲社區合作夥伴“Linux中國”

最後更新:2017-11-27 01:04:13

  上一篇:go  十一放假幹什麼 - 看書啊。 Java 書籍推薦
  下一篇:go  科陸電子首席架構師李標:智慧能源的核心是讓數據會思考