3 способа извлечения и копирования файлов из ISO-образа в Linux
Допустим, у вас есть большой ISO-файл на вашем сервере Linux, и вы хотите получить доступ, извлечь или скопировать из него один файл. Как ты делаешь это? Ну, в Linux есть несколько способов сделать это.
Читайте также: сценарий Bash для создания загрузочного USB-накопителя из ISO в Linux
Например, вы можете использовать стандартную команду mount, чтобы смонтировать ISO-образ в режиме только для чтения с помощью петлевого устройства, а затем скопировать файлы в другой каталог.
Монтирование или извлечение ISO-файла в Linux
Для этого у вас должен быть файл ISO (я использовал ISO-образ ubuntu-16.10-server-amd64.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) и получить доступ к файлам или скопировать файлы в каталог /tmp
с помощью команды cp.
cd /mnt/iso
sudo cp md5sum.txt /tmp/
sudo cp -r ubuntu /tmp/
Примечание. Параметр -r
используется для рекурсивного копирования каталогов. При желании вы также можете отслеживать ход выполнения команды копирования.
Извлеките содержимое ISO с помощью команды 7zip
Если вы не хотите монтировать файл 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 выглядит намного быстрее и достаточно умным, чтобы упаковать или распаковать любые файлы. форматы архивов.
Извлечение содержимого ISO с помощью команды isoinfo
Команда 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
извлекается на стандартный вывод.
Что ж, есть много способов сделать это. Если вы знаете какую-либо полезную команду или программу для извлечения или копирования файлов из файла ISO, поделитесь с нами в разделе комментариев.