장치를 순환하기 위해 ISO를 마운트할 수 있는 bash 스크립트가 있습니다.
mount -o loop my.iso /tmp/foo
동시에 내 운영 체제(Linux Mint 19)에서 GUI 옵션을 사용하여 ISO 이미지를 마운트했습니다.
그래서 오류가 발생했습니다.
mount: /tmp/foo: /dev/loop0 이것을 사용할 수 있습니다.
(...loop0 마운트 지점이 사용 중입니다...)
질문:
ISO를 마운트하기 위한 루프를 선택할 수 있습니까? 예:
mount - loop3 my.iso /tmp/foo
그럼 이전 ISO를 제거할 필요가 없나요?
답변1
이 오류는 다른 ISO 장치가 설치되어 있어서 발생하는 것이 아니라 다른 ISO 장치가 설치되어 있기 때문입니다. 항상 mount -o loop
사용되지 않은 첫 번째 루프 장치를 가져오거나 새 장치를 만듭니다.
이는 동일한 ISO 이미지/루프 장치가 이미 다른 디렉토리에 마운트되어 있기 때문이 아닙니다. 동일한 장치가 동시에 다른 마운트 지점에 마운트될 수 있습니다.
아마도 당신이 원하는 것은 동일한 ISO를 동일한 마운트 지점에 두 번 마운트하는 것입니다. 유틸리티 mount(8)
는 백업 파일이 이미 루프 장치에 연결되어 있는지 확인하고 동일한 파일을 여러 루프 장치에 연결하는 대신 해당 장치를 재사용하여 이를 방지하려고 합니다.
하지만 만약 당신이진짜이렇게 하려면 루프 장치를 수동으로 연결하여 검사를 우회할 수 있습니다 losetup
.
# mount -o ro a.iso dir/
# mount -o ro a.iso dir/
mount: /tmp/a.iso is already mounted
# losetup --show -f a.iso
/dev/loop1
# mount -o ro /dev/loop1 dir/
#
두 가지를 결합합니다.
# dev=$(losetup --show -f a.iso) && { mount -o ro "$dev" dir/ || losetup -d "$dev"; }
-d
그런 다음 옵션을 명시적으로 사용 umount(8)
하거나 다음을 사용하여 루프를 수동으로 분리해야 합니다 losetup -d
.
# umount -d dir/
이는 ISO와 같은 읽기 전용 파일 시스템에 매우 안전합니다. 읽기-쓰기 모드로 마운트된 파일 시스템과 함께 사용하지 마십시오.