it-swarm-ko.tech

UNIX에서 하드 마운트와 소프트 마운트의 장점 / 단점은 무엇입니까?

이 질문은 배포판마다 다를 수 있지만 일반적으로 UNIX 세계에서 하드 마운트 또는 소프트 마운트를 사용하는 경우의 장점/단점은 무엇입니까?

하나가 더 유익하거나 용도가 상당히 보편적 인 특정 상황이 있습니까?

24
Aaron K

하드 마운트는 일반적으로 로컬 디스크 또는 SAN과 같은 블록 리소스에 사용됩니다. 소프트 마운트는 일반적으로 NFS 또는 CIFS와 같은 네트워크 파일 프로토콜에 사용됩니다.

소프트 마운트의 장점은 NFS 서버를 사용할 수없는 경우 사전 구성된 기간 후에 커널이 I/O 작업 시간을 초과한다는 것입니다. 단점은 NFS 드라이버가 데이터를 캐시하고 소프트 마운트 시간이 초과되면 응용 프로그램이 실제로 NFS 볼륨에 대한 쓰기가 디스크에 커밋 된 것을 알 수 없다는 것입니다.

21
duffbeer703

하드 마운트 및 "intr"(인터럽트 가능)은 좋은 절충안입니다 (2.6.25 이전의 커널의 경우 Ryan Horrisberger의 의견 참조). 응용 프로그램은 성공적인 쓰기에 대해 속지 않지만 튜브가 막히면 죽일 수 있습니다.

8
hayalci

일종의 네트워크 파일 시스템 (nfs 또는 Fuse)을 사용하는 하드 마운트는 끊어진 연결을 다시 설정하려고 시도하는 동안 (때로는) 영원히 차단할 수 있습니다. 즉, 해당 마운트에 액세스하려는 모든 프로세스는 장치를 다시 사용할 수 있거나 시스템이 재부팅 될 때까지 디스크 절전 (D) 상태가됩니다.

디스크 절전 모드를 중단하거나 종료 할 수 없습니다. 좀비 프로세스의 좀비와 같습니다.

즉, 네트워크 파일 시스템에 하드 마운트를 사용하지 마십시오. I/O가 불가능한 경우 파일 시스템이 즉시 (syscalls를 사용하여 처리하기 위해) 실패하기를 원합니다. 그렇지 않으면, FS이 실패하면 주장하는 메모리도 누출 될 수 있습니다.

5
Tim Post

soft는 nfs의 원리를 이해하지 못하는 사람들 만 사용합니다. 소프트/하드는 파일 시스템의 사용법에 따라 다릅니다. 미션 크리티컬 애플리케이션의 경우 파일 손상을 방지하기 위해 항상 하드 마운트를 사용합니다 (이것이 대부분의 시스템에서 기본값 인 이유입니다). ro 파일 시스템의 경우 부드럽고 사용하는 것이 안전합니다. 그런데 nfsv4는 더 이상 소프트를 지원하지 않습니다 ....

2
manitou