16.04 CIFS“호스트가 종료되었습니다.”


26

fstab에 CIFS 설정이 있으며 부팅시 예상대로 작동합니다. 그들은 필요에 따라 마운트하고 잠시 동안 작동합니다. 어딘가에서 (기계 등을 잠금 해제 한 후 일 수 있음) 액세스하려고하는 동안 "Host is down"오류가 발생합니다. 나는 여러 개를 가지고 있으며 모두 다운되었습니다. 또한 동일한 서버에서 공유됩니다. 현재 Windows 컴퓨터와 오래된 14.04 컴퓨터를 확인했는데 예상대로 작동하고 있습니다. 노틸러스에서 공유를 클릭하고 반복 오류가 발생하면 다시 작동하기 시작합니다. "다운"인 공유에 액세스하려면 자동으로 마운트 지점에 데이터를 표시 할 때 다른 마운트를 임의로 클릭하고 첫 번째 마운트로 돌아가는 데 약 2-3 분이 걸립니다.

한동안 업데이트되지 않은 14.04 시스템에서는이 문제가 없습니다. 이러한 모든 시스템은 완벽하게 작동하며 CIFS는 "다운"되지 않습니다. 16.04에서는 더 최근까지 문제가되지 않았습니다.

나는 격일로 업데이트하고 오래된 리눅스 헤더를 청소했습니다 (뒤에서 나는 아마도 되돌려 졌을 것입니다). 나는 단지 수정을 요구하기를 원하지만 해결책없이 몇 주 동안 CIFS 마운트와 싸우고 있기 때문에이 작업을 수행합니다.


나는 똑같은 문제가 있습니다. 최근 몇 주 전에 시작되었습니다. 운?
Ian H

아뇨, 여전히 같은 문제에 직면하고 있습니다. gnome-shell을 우연히 실행하고 있습니까? gnome-shell까지
괜찮은

아니요, urxvt를 사용합니다. 나는 이것이 퓨즈의 버그라고 생각한다.
Ian H

답변:


13

나는 같은 문제에 직면하고있다. 최신 커널 버전 및 삼바와 관련이있는 것 같습니다.

마운트 명령 (또는 각 fstab 줄의 끝)에 vers = 2.0을 추가 하여이 문제를 해결했습니다.


3
다른 사람들을 위해 더 명확하게 만들 수 있습니까? fstab 또는 쉘의 행을 보여주고 왜 도움이되는지 설명하십시오.
잔나

안녕하세요, 런치 패드에 명시된 단계에 따라이
josepcoves

이 수정 프로그램을 지금 테스트 중입니다. 여태까지는 그런대로 잘됐다. 여전히 내일까지 작동한다면 나는 이것을 대답으로 받아 들일 것입니다. 정보에 대해서 감사드립니다!
DevinM

나를 위해 작동하지 않습니다-당신이 한 일을 게시 할 수 있습니까? 사용할 버전 번호는 어떻게 알 수 있습니까?
hippyjim

4
이것이 허용되는 답변이므로 유효한 값을 vers사용하면 특정 프로토콜 버전 (오래된 서버에서는 작동하지 않음)을 권장하는 대신 최상의 결과를 얻을 수 있다고 언급해야 합니다. 높은 프로토콜 버전으로 시작하여 하나씩 내려갑니다. 당신이 끝날 경우 vers=1.0원격 서버 업그레이드 (가능한 경우)하거나 확보해야 할 수 있습니다.
0xC0000022L

37

많은 테스트 후에 vers=1.0마운트 라인에 추가 하면 문제가 해결되는 것으로 보입니다. 이 마운트는 이전 Ubuntu 릴리스에서 수년간 Ubuntu 17.10에서 작동합니다.


3
많은 x 10 시도 후 이것이 유일한 해결책입니다. vers=2.0작동하지 않았다.
Olivier Pons

나는 vers = 1.0 대 2.0 또는 3.0에 대해 모르고 매뉴얼 페이지에서 언급을 찾을 수 없지만 이것은 나를 위해 일했습니다.
Greg Chabala

3
//192.168.1.222/volume_1 / media / nas cifs username = ****, password = ****, vers = 1.0
Steven

@GregChabala : 아마도 체크 아웃 mount.cifs(8)과 예 man 8 mount.cifs? 로 mount.cifs(로부터 버전 6.8 cifs-utils패키지) 매뉴얼 페이지에 대한 언급을 포함하지 않습니다 vers=arg.
0xC0000022L

7

나는 같은 문제에 직면했다. 위에서 언급 한 것과 같은 문제가 있지만 우분투 위키 ( https://wiki.ubuntu.com/MountWindowsSharesPermanently ) 에서 찾은 방법을 사용하여 자동 마운트하고 싶었다 .mount error(112): Host is down

문제는 vers=3.0옵션을 추가하는 데 도움이되었습니다 .

//servername/sharename /media/windowMBsshare cifs credentials=/home/ubuntuusername/.smbcredentials,iocharset=utf8,sec=ntlm,vers=3.0 0 0

SMB1을 우회하고 지정된 다른 것을 사용하는 경우에만 작동하는 것 같습니다 .SMB3가 나를 위해 일했기 때문에 다른 것을 시도하지 않았습니다.

Windows 시스템에서 outlook.com 도메인 이름이 아닌 로컬 계정을 사용하여 충돌을 일으킬 수있는 것을 읽었습니다.


windows 10 pro internalr preview build 16232.rs_prerelease.170624-1334에 대한 최신 업데이트에는 vers=3.0이전에 작동하지 않은 공유를 마운트 하기 위해 추가 해야하는 변경 사항이 포함 된 것으로 보입니다 .
dylan oliver

6

다른 사람들은 이미 해결책을 암시했지만 그 이유를 간단히 설명하는 것이 좋습니다.

mount.cifs Ubuntu 16.04에서는 기본적으로 SMB1 프로토콜을 사용합니다.

의 이후 버전 mount.cifs에서 기본 SMB 버전은 2.1 또는 3.0입니다.

현재 Windows 서버는 SMB 1.0 프로토콜을 지원하도록 레지스트리에 특별히 구성되어 있지 않으면 더 이상 SMB 1.0 프로토콜을 지원하지 않습니다. 따라서 기본적으로 SMB1 프로토콜을 사용하는 클라이언트의 연결을 거부합니다. "호스트가 다운되었습니다"라는 잘못된 메시지가 나타납니다.

그러나 일부 구형 시스템 (대부분 NAS)은 프로토콜 2.1 또는 3을 지원하지 않습니다.

해결책은 옵션 mount.cifs을 사용하여 올바른 프로토콜을 사용하여 서버에 연결하도록 지시하는 vers=것입니다. 예를 들어, Windows 10 시스템에 연결하려면 다음을 수행하십시오.

mount -t cifs ... -o vers=3.0,...

또는 Ubuntu 18.04 이상에서 이전 NAS로 :

mount -t cifs ... -o vers=1.0,...

에서 man mount.cifs(우분투 16.04에서) :

   vers=
       SMB protocol version. Allowed values are:

       ·   1.0 - The classic CIFS/SMBv1 protocol. This is the default.

       ·   2.0 - The SMBv2.002 protocol. This was initially introduced in
           Windows Vista Service Pack 1, and Windows Server 2008. Note
           that the initial release version of Windows Vista spoke a
           slightly different dialect (2.000) that is not supported.

       ·   2.1 - The SMBv2.1 protocol that was introduced in Microsoft
           Windows 7 and Windows Server 2008R2.

       ·   3.0 - The SMBv3.0 protocol that was introduced in Microsoft
           Windows 8 and Windows Server 2012.

       Note too that while this option governs the protocol version used,
       not all features of each version are available.

에 마운트를 정의하면 /etc/fstab다음과 같이 보일 수 있습니다.

//server/share  /mnt/share  cifs  defaults,vers=3.0,...your_other_options...,nofail,x-systemd.device-timeout=15 0 0

cifs vers = 1.0, credentials = / root / .smbcredentials는 18.04 LTS에서 저에게 효과적이었습니다. fsatb에 "defaults"를 포함하면 구문 분석 오류가 발생하여 해당 텍스트를 삭제하면 오류가 발생하지 않습니다.
Graham

@Graham smb1은 매우 구식이며 위험합니다. 또한 느립니다. 최소한 노력하십시오vers=2.1
Joel Coehoorn

@JoelCoehoorn 그러나 vers = 1.0은 작동했지만 이후 버전은 작동하지 않았습니다 ... 3에서 시작하여 1.0이 작동 할 때까지 vers를 변경했습니다. 그 이후로 절대 문제가 없습니다.
Graham

@Graham 그런 다음 smb2.1 이상을 지원하도록 연결중인 호스트를 수정해야합니다. SMB1.0은 정말 나쁘다 .
Joel Coehoorn

: @JoelCoehoorn 나는이 스레드에 포함 된 조언을 따라 serverfault.com/questions/414074/mount-cifs-host-is-down 문제를 해결할 수 있습니다. vers = 3.0을 다시 시도했지만 동일한 오류가 지속되고 드라이브가 마운트되지 않습니다. vers = 1.0에 대해 끔찍한 것은 무엇입니까?
Graham

0

cifs-utils의 클라이언트 업데이트 후 6.7-2로 동일한 문제가 발생했습니다. 그리고 기본적으로 josepcoves 및 user695658의 솔루션이 효과적이었습니다. 그러나 마운트 옵션 'vers'의 값 1.0 만 나를 위해 일했습니다. 'vers'매개 변수의 기본값이 더 이상 1.0이 아닌 것 같습니다.


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