Linuxサーバー上に大きなISOファイルがあるとします。その中から1つのファイルにアクセスしたり、抽出したり、コピーしたい場合、どのようにしますか?Linuxにはそれを行うためのいくつかの方法があります。
関連記事: LinuxでISOから起動可能なUSBを作成するためのBashスクリプト
たとえば、ループデバイスを使用してISOイメージを読み取り専用モードでマウントし、その後ファイルを別のディレクトリにコピーするために標準のmountコマンドを使用できます。
LinuxでISOファイルをマウントまたは抽出する
そのためには、ISOファイル(私はubuntu-16.10-server-amd64.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)に移動してファイルにアクセスしたり、ファイルを/tmp
ディレクトリにcpコマンドを使用してコピーできます。
$ 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
オプションが標準出力に抽出するために必要です。

さて、抽出やコピーするファイルに役立つコマンドやプログラムがあれば、コメントセクションで共有してください。
Source:
https://www.tecmint.com/extract-files-from-iso-files-linux/