파일/디렉토리가 사용 중인 파티션을 마운트 해제할 수 있습니까?
기본 파일과 디렉터리는 메모리에 있으므로 파티션을 마운트 해제하는 것이 기술적으로 안전합니다.
하지만 umount
제거할 수는 없습니다.
(이 작업을 거부하는 사람은 누구입니까? umount입니까 아니면 커널입니까?)
답변1
"지연된 제거"를 수행할 수 있습니다.
마운트 해제가 지연되면 새로 시작된 모든 프로세스에서 파일 시스템을 사용할 수 없게 되지만 현재 이를 사용하고 있는 프로세스는 계속해서 사용할 수 있습니다. 그러면 현재 사용 중인 프로세스가 완료되면 파일 시스템이 마운트 해제됩니다.
이를 수행하는 방법은 간단합니다.
umount -l /mount/point
답변2
강제 제거를 시도해 볼 수 있습니다. 특정 파티션에서 파일을 사용할 경우에는 좋지 않을 수 있으니 사용에 주의가 필요하겠습니다. 이 -f
옵션은 Linux가 실패할 수 있는 제거 작업을 강제로 수행하도록 지시합니다. 이를 수행하는 명령은 다음과 같습니다.
umount -f <partition name>
답변3
기본 파일과 디렉터리는 메모리에 있으므로 파티션을 마운트 해제하는 것이 기술적으로 안전합니다.
반대로,파일 시스템에 파일이 열려 있으면 파티션을 마운트 해제할 수 없습니다.. 프로세스가 파일을 열 때 프로세스가 연 파일은 실제로 메모리에 로드되지 않습니다. 이는 비효율적이거나 사용 가능한 메모리보다 큰 파일을 처리할 수 없게 되는 결과를 가져올 수도 있습니다. 대신, 파일이 열리면 필요에 따라 파일 내용이 RAM에 로드되고 커널이 RAM을 더 잘 활용하는 방법을 찾으면 RAM에서 제거됩니다.
파일이 열려 있는 동안에는 파일 내용이 저장된 파일 시스템에서 삭제할 수 없습니다. 파일을 삭제하면(예: 명령 사용 rm
) 실제로 파일에 대한 디렉터리 항목이 삭제되지만 파일이 닫힐 때까지 데이터는 디스크에 남아 있습니다. (사용된 디스크 공간을 보면 이를 관찰할 수 있습니다. 열린 파일을 삭제할 때가 아니라 파일을 닫을 때만 다운됩니다.)
마찬가지로, 파일이 열려 있으면 해당 파일 시스템을 마운트 해제할 수 없습니다. 이로 인해 필요할 때 파일 내용을 검색할 수 없게 됩니다.
Linux에서는 "지연된 제거" 옵션을 제공합니다. 파일 시스템의 지연 마운트 해제는 파일 호출과 유사합니다 rm
. 파일 시스템의 첨부 지점(마운트 지점)은 사라지지만 파일 시스템은 마지막 파일이 닫힐 때까지 마운트된 상태로 유지됩니다(파일을 삭제하면 포함된 파일에서 분리되는 것과 같습니다). ) 해당 디렉토리를 유지하지만 디스크에 데이터를 유지합니다).
이 모든 일은 커널에서 발생합니다. 이 명령은 장치나 마운트 지점을 지정할 수 있도록 구문 분석하는 것 외에는 umount
많은 작업을 수행하지 않습니다 ./etc/mtab
파일 시스템에 파일이 열려 있는 프로세스를 나열하려면 다음을 사용하십시오.퓨저또는라소프. 파일 시스템에 파일이 열려 있는 모든 프로세스를 종료하려면 를 실행합니다 fuser -k /path/to/mount/point
.