讓我們假設您的Linux伺服器上有一個大型的ISO檔案,您想要存取、解壓縮或從中複製單個文件。您該如何做?在Linux中,有幾種方法可以做到這一點。
閱讀也:使用Bash腳本在Linux中從ISO創建可啟動的USB
例如,您可以使用標準的mount命令以唯讀模式掛載ISO映像,使用循環設備,然後將文件複製到另一個目錄中。
在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/

現在您可以進入已掛載的目錄(/mnt/iso)並訪問文件或使用cp命令將文件複製到/tmp
目錄中。
$ cd /mnt/iso $ sudo cp md5sum.txt /tmp/ $ sudo cp -r ubuntu /tmp/

注意: 使用-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

注意: 与Linux的mount命令相比,7zip似乎更快速,足够智能地打包或解包任何存档格式。
使用isoinfo命令提取ISO内容
isoinfo命令用于列出iso9660镜像的目录,但您也可以使用此程序来提取文件。
正如我所说的isoinfo程序执行目录列表,因此首先列出ISO文件的内容。
$ isoinfo -i ubuntu-16.10-server-amd64.iso -l

现在您可以从ISO镜像中提取单个文件,如下所示:
$ isoinfo -i ubuntu-16.10-server-amd64.iso -x MD5SUM.TXT > MD5SUM.TXT
注意: 需要重定向,因为-x
选项将提取到stdout。

嗯,有许多方法可以做到,如果您知道任何有用的命令或程序可以从ISO文件中提取或复制文件,请通过评论部分与我们分享。
Source:
https://www.tecmint.com/extract-files-from-iso-files-linux/