섀도우 마운트 지점에 액세스

섀도우 마운트 지점에 액세스

마운트 포인트 /mnt/sub다른 장착 지점에 의해 가려졌습니다 /mnt. 마운트된 파일 시스템은 항상 액세스 가능합니까?

루트 액세스가 제공됩니다. 시스템은 상당히 새로운 Linux입니다.

예시 시나리오:루트를 포함하는 분기에 액세스

기본 작업 순서는 다음과 같습니다.

mount device1 /mnt/sub
mount device2 /mnt

파일 이 있으면 /mnt/sub그 뒤에 파일이 옵니다 . device2문제는 그것에 접근하는 방법이다 device1.

일부 장치는 두 번 설치하여 mount device1 /elsewhere작동할 수 있습니다. 그러나 이는 모든 장치, 특히 FUSE 파일 시스템에서는 작동하지 않습니다.

이는 다음과 관련이 있습니다.이미 다루었습니다상태하위 디렉토리마운트 지점에 의해 가려지지만 하위 디렉터리의 마운트 지점 자체는 표시되며 바인드 마운트는 명확한 보기를 생성합니다. 위의 예에서는 루트 파일 시스템의 디렉터리를 mount --bind / /elsewhere살펴보겠습니다 . 하지만 이 질문은 의 파일 시스템에 액세스하는 것에 관한 것입니다 ./mnt/sub/elsewhere/mnt/subdevice1

답변1

# unshare --mount  # this opens a sub-shell
# cd /
# umount /mnt

원하는 대로 하세요

# exit  # close the sub-shell

답변2

너무 늦었을 수도 있지만 일반적으로 다음과 같은 방식으로 수행합니다.

  • 원래 장치를 다른 디렉터리에 다시 마운트합니다.
  • 이제 새 디렉터리에는 하위 설치가 아닌 원래 장치의 폴더만 포함됩니다.
  • 이는 설치 순서, 커널 네임스페이스 지원 등에 의존하지 않습니다!
  • 만지거나 움직일 필요가 없습니다현재 설치(귀하의 서비스에서 이를 사용할 수도 있음)

예를 들어, 루팅된 장치에서 이것이 어떻게 작동하는지 살펴보겠습니다.

mount /dev/mapper/ubuntu--vg-ubuntu--lv /mnt
cd /mnt
# this folder only contains files from the root device

귀하의 예에서 :

# your actual (untouched) work dirs
mount device1 /mnt/sub
mount device2 /mnt

# access /mnt/sub contents in another dir by remounting it there
mount device1 /mnt/tmp
cd /mnt/tmp
# any operations here apply solely to device1

답변3

device1아래 파일은 이 경로를 통해서는 전혀 접근이 불가능합니다 . /mnt/sub장치를 다른 곳에 다시 설치하거나 두 장치가 모두 역순으로 설치되었는지 확인하세요.

관련 정보