Linux에서 게으른 마운트 해제 또는 사용중인 디스크 마운트 해제


19

'lazy'옵션을 사용하여 사용중인 디스크를 'umount'할 수 있다는 것을 읽었습니다. 맨 페이지에는 다음과 같이 말합니다.

umount-파일 시스템 마운트 해제

-l 게으른 마운트 해제 이제 파일 시스템 계층에서 파일 시스템을 분리하고 더 이상 사용하지 않는 즉시 파일 시스템에 대한 모든 참조를 정리하십시오. 이 옵션을 사용하면 "사용 중"파일 시스템을 마운트 해제 할 수 있습니다. (커널 2.4.11 이상이 필요합니다.)

그러나 그 점이 무엇입니까? 파티션을 마운트 해제하는 이유를 고려했습니다.

  1. 하드웨어를 제거하려면
  2. 마운트하는 동안 안전하지 않은 파일 시스템에서 작업을 수행하려면

이 두 가지 경우 모두 IMHO 역할을 수행하는 모든 '게으른'마운트 해제 기능은 디스크가 실제로 마운트 해제되어 있는지 확인하기 어렵게 만들고 실제로 이러한 작업을 진행할 수 있습니다. 에 대한 유일한 응용 프로그램은 umount -l경험이없는 사용자가 자신이하지 않은 것을 달성 한 것처럼 '느낌'을주는 것 같습니다.

왜 게으른 마운트 해제를 사용 하시겠습니까?

답변:


10

당신이 게으 르기 때문에-디스크 작업이 끝나면 마운트를 해제하고 싶습니다.

그럴듯한 시나리오는 다음과 같습니다.

당신이 사용하고있는 rsync백업을 수행하고 떠날 수 있습니다. umount -l드라이브를 사용할 수 있고 복사 및 동기화가 완료되면 마운트가 해제되므로 휴식 후 돌아온 경우 (백업보다 오래 걸리는 것으로 알고 있음) 키보드를 다시 연결하지 않고 드라이브의 플러그를 뽑을 수 있습니다. .


게으른 사람이라면 인수를 사용하지 않아도 더 많은 시간을 절약하고 싶을 것입니다. 돌아온 후에는 즉시 백업을 마칠 수 있다는 것을 알았 기 때문에 백업이 완료 되었습니까? 또는 백업 후 작업의 드라이브 부분을 분리합니까?
deed02392

디스크가 더 이상 사용 중이 아니므로 지금 마운트 해제하십시오. 더 이상 마운트되지 않으므로 다른 어떤 것도 쓸 수 없습니다. 오류가 아닌 "가능한 경우이 작업을 수행하십시오".
Broam

디스크 작업이 언제 완료되는지 어떻게 알 수 있습니까? 이미 마운트 해제 된 파일 시스템에 파일을 쓸 수있는이 예제 (버그?)
Tom Hale

5

이것은 실제로 관리 작업에서 후속 작업을 수행하는 데 더 많은 시간을 확보하기 위해 구현됩니다.

이 작업과 관계없이 추가 작업이 파이프 라인에서 대기중인 경우 지연 마운트 해제하고 배치에서 다른 작업을 진행할 수 있습니다.

: 작업 1과 작업 2는 연속적으로 예약 된 두 가지 관리 작업입니다.

작업 1 매일 백업

이 파일은 프로젝트 파티션에서 백업 파티션 (예 : / mnt / backupProj)으로 많은 수의 파일을 복사합니다.이 파티션은 즉시 마운트되어이 작업이 끝나면 마운트 해제됩니다. 복사에는 상당한 시간이 걸립니다.

작업 2 SQL 뷰 업데이트

전용 서버에서 일련의 데이터베이스보기 업데이트를 수행합니다.

작업 2는 작업 1과 완전히 독립적이므로 백업 작업이 완료 될 때까지 기다리지 않고 / mnt / backupProj를 지연 마운트 해제 할 수 있습니다.


1
예를 들어 줄 수 있습니까? 어떤 상황에서 '시간을 얻는다'?
deed02392

4

나는 여러 가지 이유로 (nfs 서버 다운과 같은) 분명히 붙어있는 경우 지연 마운트를 사용합니다. 또한 마운트로 마운트 된 디렉토리의 원래 내용을 볼 필요가 있습니다. 두 경우 모두 마운트가 사용 중입니다. 다른 경우가 있다고 생각하지만이 2 가지가 옵션을 사용하는 가장 일반적인 이유입니다.


--forceNFS 사례에 대한 권장 사항 .
Tom Hale

3

다음 작업을 할 때 볼 수있는 바인드 마운트를 고려하십시오 chroot.

mount --rbind /proc /mnt/proc
# do stuff
umount /mnt/proc

시스템에 지속적으로 질문하는 데몬이 있다면 /proc(나는 당신을보고 있습니다 ksysguardd), 당신은 할 수 없습니다 umount /mnt/proc. umount이 경우 게으른 게 당신 을 보자 .


--force대신 여기를 사용 하지 않겠습니까?
Tom Hale

2

하드웨어 고장으로 인해 USB 드라이브가 정지되는 경우가 있습니다. 드라이브를 물리적으로 다시 연결하더라도 다른 장치 이름을 얻습니다. 이전 장치 이름은 정상적으로 마운트 해제 할 수 없습니다. amount -l은 죽은 항목이 사라지게했습니다.


1

소프트웨어가 웹 서버와 같은 로그를 작성하는 볼륨을 실제로 변경해야하지만 트래픽이 많고 작업을 위해 끌 수 없거나 로깅 경로를 변경할 수 없다고 가정하십시오.

지연 마운트 해제를 사용하면 소프트웨어가 여전히 실행중인 동안 볼륨을 안전하게 마운트 해제하고 다른 볼륨을 동일한 마운트 포인트에 마운트 한 후 소프트웨어가 파일을 다시 열도록 명령 할 수 있습니다.

이상적으로는 소프트웨어를 끄지 않아도되므로 파일이 다시 열릴 때까지 (오래된 마운트에 소프트웨어가 다시 열릴 때까지 요청이 손실되거나 본질적으로 로그 항목이 손실되지 않음) 파일은 소프트웨어에 달려 있습니다).

맨 페이지를 설명하면 볼륨이 게으른 마운트 해제 된 상태에서 열린 파일이있는 경우 실제로 마운트 된 상태로 유지되지만 파일 시스템을 통해 액세스 할 수 없으며 마지막으로 열린 파일을 닫을 때만 마운트 해제됩니다.


1
고마워 이것은 유용한 응용 프로그램처럼 들립니다. 윌 lsof이전 마운트 지점에 열려있는 파일을 보여? 또한 이전 볼륨과 새 볼륨에서 열린 파일을 어떻게 구분할 수 있을지 궁금합니다.
deed02392

0

encfs를 사용하여 중요한 데이터의 일부를 암호화합니다.

디스크가 마운트되면 노틸러스가 미리보기를 빌드하고 (확실하지 않다고 생각합니다) 파일을 잠급니다. 마운트 해제하려면 다른 프로세스에 의해 잠겨 있다고 말합니다.

지연 마운트를 해제하면 폴더가 내 계층 구조에서 사라지고 숨겨집니다. 백그라운드 프로세스가 끝나면 성공적으로 마운트 해제됩니다.

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