연결이 끊어지면 동결 대신 SSHFS가 정상적으로 저하됩니다. 가능합니까?


10

타사 프로그램은 SSHFS 마운트 디렉토리에 파일을 씁니다. 인터넷 연결이 끊어지면 그러한 상태에서 (인터넷에 연결되지 않은 경우) SSHFS 마운트 디렉토리에 액세스하려고하는 모든 프로그램이 "무정전 가능" 자다". SSHFS에는 자동 재 연결 옵션이 있지만 연결이 끊어 지더라도 타사 프로그램이 여전히 중단 (과 충돌)되므로 도움이되지 않습니다 (연결이 복원 되더라도 SSHFS가 디렉토리를 다시 마운트 함). Autofs는 도움이되지 않습니다. 기본적으로 연결이 끊겼을 때 SSHFS의 동작에 관한 것입니다. 왜 네트워크 공유 디렉토리 (Samba 또는 다른 수단)처럼 작동하고 단순히보다 빨리 오류를 반환 할 수 없습니까?

SSHFS가 설명대로 작동하지 않으면 SSHFS에 대한 대안이 있습니까?

다른 정보 :

OS : Ubuntu Linux (12.04 LTS)를 사용하고 있습니다


정확히 무엇을하고 있는지 설명하십시오. 로컬 Linux 시스템에서 sshfs를 사용하여 원격 파일 시스템을 마운트한다고 생각합니까? 아마도 당신의 포함 /etc/fstab? soft옵션으로 autofs를 사용해 보셨습니까 ?
terdon

@terdon 타사 프로그램은 SSHFS 마운트 디렉토리에 파일을 씁니다. 인터넷 연결이 끊어지면 타사 프로그램이 중단 될 수 있습니다. SSHFS에는 자동 재 연결 옵션이 있지만 연결이 끊어 지더라도 타사 프로그램이 여전히 중단 (과 충돌)되므로 도움이되지 않습니다 (연결이 복원 되더라도 SSHFS가 디렉토리를 다시 마운트 함). Autofs는 도움이되지 않습니다. 기본적으로 연결이 끊겼을 때 SSHFS의 동작에 관한 것입니다. 왜 네트워크 공유 디렉토리 (Samba 또는 다른 수단)처럼 작동하고 단순히보다 빨리 오류를 반환 할 수 없습니까?
Andrei

업데이트에 감사하지만 모든 사람이 의견을 읽지는 않으므로 질문에 포함 시키십시오. 사용중인 구성 파일도 포함하십시오. ssh 시간 초과 등의 값은 무엇입니까? 나는 당신이 당신의 질문에 더 많은 정보를 가지고있을수록, 당신이 좋은 답변을 얻을 가능성이 높다는 것을 어떻게 알지 말하고있는 것이 아닙니다. 그대로, 설정이 정확히 무엇인지 이해하기는 어렵습니다.
terdon

@ terdon 감사합니다, 나는 기본적으로 내 질문을 거의 대체했습니다.
Andrei

훨씬 낫다 :). 사용중인 OS도 추가하십시오. 이 리눅스, OSX, 다른 유닉스입니까?
terdon

답변:


0

간단히 말해서 : 아니오-응용 프로그램에서 동결이 ​​발생하기 때문에 sshfs 실패는 정상입니다. 응용 프로그램이 대기하도록 지시합니다. -애플리케이션이이를 존중하지 않는다는 사실은 SSHFS의 결함이 아닙니다.

USB 드라이브와 같은 이동식 저장 장치의 파일에 액세스하고 제거한 경우 응용 프로그램은 정확히 동일하게 수행됩니다. 응용 프로그램은 응답을 기다리는 동안 멈추지 않고 I / O에서 시간 초과 이벤트를 캡처하고 처리해야합니다.


0

슬픈 문제. 나는 과거에 sshfs를 여러 번 시도했다.

연결이 끊어지면 탑재 된 폴더의 파일에 액세스하는 응용 프로그램이 중지되고 충돌합니다. 심지어 터미널. 그러나 응용 프로그램은 그들이 기다리고 있다는 것을조차 알지 못합니다. 커널 수준에서 sshfs를 처리 할 수 ​​없어 영원히 대기하라는 메시지를 표시합니다 ... 마운트 된 폴더가 파일 시스템 커널 수준에서 어떻게 든 잠겨 있기 때문에 마운트 해제가 작동하지 않고 때로는 멈추기도합니다.

USB 드라이브를 분리 할 때 왜 이런 일이 발생하지 않습니까?

이 문제는 몇 년 동안 존재합니다 ...

자동 재 연결은 언제든지 연결을 다시 설정할 수없는 경우 도움이되지 않습니다. (제 경우에는 kerberos Tickes가 부족합니다).

죄송하지만 sshfs를 사용할 수 없습니다!
(연결이 끊어지지 않는 경우 제외)

나는 항상 대신 scp를 사용합니다. 슬픈 문제

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