루트 액세스 권한이없는 Linux에서 ISO를 추출하는 방법


22

서버에 큰 ISO 파일이 있으며 루트 액세스 권한없이 파일에 액세스해야합니다. 따라서 간단히 장착 할 수 없습니다. 루트 액세스없이 LInux에서 ISO를 추출하려면 어떻게해야합니까?

답변:


23

7zip이 설치되어 있으면 정말 쉽습니다.

7z x Your.iso -oWhere/You/Want/It/Extracted/To

전체 iso를 추출합니다.


3
OP의 질문에 "linux"태그가 있기 때문에 이것이 7za(CentOS) 와 작동하지 않는다는 것을 나타내는 것이 중요합니다 . 7zaISO 아카이브를 지원하지 않습니다. 로 지원되는 형식을 확인할 수 있습니다 7za i.
Jongosi

참고로 7z미디어에서 직접 추출하기에 충분히 똑똑한 것 같습니다 7z x /dev/cdrom. 마운트 할 때 파일에 0 바이트가 표시되는 매우 어리석은 문제가 있습니다. 따라서 추출은 해결 방법이었습니다.
akostadinov

17

파일 롤러와 같은 많은 GUI 도구 는 백그라운드에서 isoinfo 를 사용 합니다.

다음과 같이 ISO에서 단일 파일을 추출 할 수 있습니다.

isoinfo -i image.iso -x /isolinux/initrd.img> initrd.img

-xstdout에 대한 추출로 경로 재 지정이 필요합니다 .

ISO에 폴더의 내용을 나열하려면 다음을 수행하십시오.

isoinfo -i image.iso -l

출력 예 :

/의 디렉토리 목록
d --------- 000 2048 0 1900 [26 02].
d --------- 000 2048 0 1900 [26 02] ..
d --------- 00 2048 2010 년 2 월 6 일 [27 02] i386
...

isoread를 사용하여 모든 파일을 추출하려면 다음 스크립트를 사용하십시오. github.com/goblinhack/isoread
Neil McGill

@NeilMcGill 여기서 작동하지 않습니다. 많은 오류.
MewX 2019

Rock Ridge 확장을 사용하는 ISO에는 끝에 "; 1"이 추가 된 대문자 파일 이름이 필요합니다. 이 양식으로 파일을 나열하려면 -Rl을 사용하십시오.
lzap

6

새로운 최선의 방법을 찾았습니다 : xorriso!

루트 액세스 권한이 필요하지 않습니다. 나는 해봤 7z하고 file-roller, 둘 다 여기에 작동하지 않습니다.

xorriso 은 오픈 소스 프로그램이므로 기본적으로 소스 코드를 설치하지 않은 경우 소스 코드를 다운로드 할 수 있습니다.

설치하지 않은 경우 여기에서 소스 코드를 다운로드하십시오 : https://www.gnu.org/software/xorriso/

단계는 다음과 같습니다.

tar zxvf xorriso-1.4.6.tar.gz
cd xorriso-1.4.6
./configure
make
cd xorriso
pwd

출력 변수를 환경 변수에 추가하십시오 PATH.


그런 다음이 파일을 사용하여 iso 파일을 추출 할 수 있습니다.

xorriso -osirrox on -indev image.iso -extract / extracted_path

시스템 에서 수정 image.iso하고 extracted_path작동시키기 만하면 됩니다.


추천 : https://blog.sleeplessbeastie.eu/2014/08/26/how-to-extract-an-iso-image/


4

GUI 액세스 권한이있는 경우 iso를 마우스 오른쪽 단추로 클릭하고 "아카이브 관리자로 열기 ..."를 선택하거나 다음을 실행하십시오.

file-roller -e /path/to/extract/to /path/to/iso

1

설치 7-zip했거나 unrar설치 한 경우 iso를 추출하는 데 사용할 수 있습니다.


구문은 unrar무엇입니까? 나는 그것이 Winrar 전용이라고 생각합니다.
golimar


1

위의 솔루션을 사용하면 iso 컨텐츠를 추출 할 수 있지만 컨텐츠가 크면 많은 공간이 필요합니다.

더 나은 솔루션은 ISO 이미지 장착 실제 및 감사 할 것 FuseISO 루트 액세스하지 않고 가능하다을 (하지만 당신은 여전히 우분투에 설치되어 있지 않은 경우 FuseISO를 설치하려면 관리자에게 문의해야합니다 sudo apt-get install fuseiso)

컴퓨터에 FuseISO를 설치하면 다음을 수행 할 수 있습니다.

# For user to mount an iso file:
mkdir ~/iso
fuseiso ~/my_iso.iso ~/iso
# For user to unmount an iso file:
fusermount -u ~/iso

0

마운트 할 필요가 없습니다. ISO는 .zip과 같은 다른 스토리지 파일과 같습니다. 사용자로 컴파일 할 수 있어야하는 트릭을 수행하는 많은 iso 관련 도구가 있지만 가장 쉬운 방법은 다음과 같습니다.

file-roller -h filename.iso
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.