假设您的Linux服务器上有一个巨大的ISO映像文件,您想要打开它并提取或复制其中一个文件。你会怎么做?其实在Linux系统中,有很多方法可以实现这个需求。例如,可以使用传统的mount命令将ISO镜像文件以只读方式挂载为循环设备,然后将文件复制到其他目录。在Linux下提取ISO映像为了完成此测试,您需要有一个ISO映像(我使用的是ubuntu-16.10-server-amd64.iso系统映像)和一个用于挂载和提取ISO映像的目录。首先,使用如下命令创建一个挂载目录来挂载ISO镜像文件:$sudomkdir/mnt/iso目录创建完成后,可以运行以下命令轻松挂载ubuntu-16.10-server-amd64.iso系统图像文件并查看其内容。$sudomount-oloopubuntu-16.10-server-amd64.iso/mnt/iso$ls/mnt/iso/在Linux系统中挂载ISO镜像现在可以进入挂载目录/mnt/iso,查看文件或者使用cp命令将文件复制到/tmp目录。$cd/mnt/iso$sudocpmd5sum.txt/tmp/$sudocp-rubuntu/tmp/在Linux系统上复制ISO镜像中的文件注意:-r选项用于递归复制目录内容。如有必要,您还可以监控复制命令的完成进度。使用7zip命令解压ISO镜像内容如果不想挂载ISO镜像,可以简单安装一个7zip工具,这是一款免费开源的解压软件,用于压缩或解压不同类型的文件,包括TAR、XZ、GZIP、ZIP、BZIP2等。$sudoapt-getinstallp7zip-fullp7zip-rar[OnDebian/Ubuntusystems]$sudoyuminstallp7zipp7zip-plugins[OnCentOS/RHELsystems]7zip软件安装完成后,可以使用7z命令解压ISO镜像文件的内容。$7zxubuntu-16.10-server-amd64.iso在Linux系统下使用7zip工具解压ISO镜像中的文件注意:与Linux的mount命令相比,7zip压缩和解压任何格式的文件都更快更智能。使用isoinfo命令提取ISO映像文件内容虽然isoinfo命令用于将iso9660映像文件的内容列为目录,但您也可以使用该程序提取文件。正如我所说,isoinfo程序显示目录列表,因此首先列出ISO映像文件的内容。$isoinfo-iubuntu-16.10-server-amd64.iso-lLinux中列出了ISO文件的内容现在您可以从ISO映像文件中提取单个文件,如下所示:$isoinfo-iubuntu-16.10-server-amd64.iso-xMD5SUM.TXT>MD5SUM.TXT注意:因为-x解压到标准输出,所以必须使用重定向来解压指定文件。这就是从ISO映像文件中提取单个文件的全部内容。其实实现这个需求的方法有很多。如果您知道其他有用的命令或工具来提取ISO映像文件中的文件,请在下面评论与您分享。
