Windows 호스트의 Cifs 공유 연결이 끊어졌지만 smblient를 사용하여 계속 액세스할 수 있습니다.

Windows 호스트의 Cifs 공유 연결이 끊어졌지만 smblient를 사용하여 계속 액세스할 수 있습니다.

내 소규모 홈 네트워크는 Wandboard와 Arch Linux ARM을 실행하는 Windows 7 데스크톱으로 구성되어 있습니다. Linux 시스템은 부팅 시 Windows 7 시스템에 호스팅된 cifs 공유를 문제 없이 마운트합니다. 그러나 잠시 후 Windows 공유에 대한 연결이 끊어집니다.

저 할 수 있어요CD마운트 지점 디렉토리로 이동했지만 실행하면엘에스다음 메시지를 받았습니다: cannot open directory '.': Host is down. 마운트된 디렉토리를 마운트 해제하고 공유를 다시 마운트하려고 하면 오류가 발생합니다 mount error(2): No such file or directory. 그러나 다음을 사용하여 공유에 연결할 수 있습니다.중소기업 고객괜찮아요. Wandboard를 다시 시작하면 공유가 문제 없이 다시 마운트됩니다. 하지만 시간이 지나면 다시 접근할 수 없게 됩니다.

SMB v1을 활성화 및 비활성화하고 NIC(최신 드라이버가 있는 Intel) 및 Windows 공유 권한에 대해 가능한 모든 설정을 시도하는 등 Windows 컴퓨터에서 다양한 작업을 시도했습니다. 하지만 문제는 Linux 측과 관련이 있을 것입니다. 공유가 여전히 진행되고 있기 때문입니다.중소기업 고객재부팅하니 문제없이 설치되었습니다. Samba와 cifs-utils를 업데이트하고 winbind를 활성화 및 비활성화해 보았습니다. 나는 무엇을 더 시도해야할지 모르겠습니다.

추가 정보:

fstab에서 내가 사용하는 마운트 라인은 다음과 같습니다. 하지만 옵션을 포함 하여 //192.xxx.x.xx/Work /mnt/Work cifs guest,users,credentials=/home/alarm/.smbcredentials,iocharset=utf8,vers=2.1 0 0 많은 옵션을 시도했지만 옵션은 전혀 사용하지 않았습니다 .noperm_netdevvers=2.0vers=

연결하는 데 사용하는 명령중소기업 고객sudo smbclient //192.xxx.x.xx/Work -U=alarmWindows 시스템의 "alarm" 사용자 비밀번호와 동일한 삼바 비밀번호를 입력하라는 메시지가 표시됩니다 . 사용자 이름과 비밀번호는 공유를 마운트하는 데 사용한(그리고 다시 마운트하려고 시도한) 자격 증명 파일의 것과 동일합니다. 비밀번호를 입력한 후 다음을 통해 연결하겠습니다.중소기업 고객그리고 읽기 및 쓰기 작업을 수행할 수 있습니다.

Windows 로그 표시NTLMv2공유를 탑재할 때 인증에 사용됩니다.중소기업 고객출력에도 표시됩니다.NTLMv2사용. 그러나 삼바 로그에는 Linux 시스템이 다음을 사용하려고 시도한 것으로 표시됩니다.NTLMv1연결 및 사용자경보(공유에 연결된 사람은) 이후에 익명 사용자가 인식되지 않는 것 같습니다.아무도로그인된 것으로 나타납니다(Windows 호스트는 익명 로그인을 허용하도록 구성되어 있습니다). 이는 Linux 시스템이 다음을 사용하려고 함을 나타낼 수 있습니다.NTLMv1공유를 다시 연결하지 못했습니까?

공유 연결이 끊어지면정보다음이 표시됩니다. CIFS VFS: \\192.xxx.x.xx has not responded in 180 seconds. Reconnecting...- 그러나 그 이후에는 다시 연결되었음을 나타내는 내용이 없습니다.

내 구성은 다음과 같습니다.

   - Arch Linux ARM version 5.7.2-1-ARCH
     - samba v 4.12.3 
     - cifs-utils v 6.13-2
   - host: Windows 7 Ultimate with SMB1 disabled and SMB2 enabled 

방법을 파악한 후 자세한 내용이 포함된 파일을 첨부하겠습니다. 하지만 필요한 경우 모든 정보를 제공하고 테스트를 실행하는 등의 작업을 수행할 수 있습니다. 그냥 물어보세요.

감사해요

답변1

이것이 정답은 아니지만 올바른 방향으로 나아가는 단계일 수 있습니다. 지금 가지고 있어요스트레스그리고샤크성공 및 실패 출력엘에스그리고명령, 그리고중소기업 고객연결은 항상 성공합니다.

비교하다스트레스출력의 핵심 포인트는 (성공적인 추적에서) 다음과 같습니다.

statx(AT_FDCWD, "/mnt/Work", AT_STATX_SYNC_AS_STAT, STATX_MODE, {stx_mask=STATX_TYPE|STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME|STATX_CTIME|STATX_INO|STATX_SIZE|STATX_BLOCKS|STATX_BTIME, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=131072, ...}) = 0
openat(AT_FDCWD, "/mnt/Work", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0755, st_size=131072, ...}) = 0
mmap2(NULL, 1052672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb68d2000
getdents64(3, 0xb68d2028 /* 65 entries */, 1048576) = 2352
openat(AT_FDCWD, "/usr/lib/gconv/gconv-modules.cache", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/gconv/gconv-modules", O_RDONLY|O_CLOEXEC) = 4
fstat64(4, {st_mode=S_IFREG|0644, st_size=56353, ...}) = 0
read(4, "# GNU libc iconv configuration.\n"..., 4096) = 4096

...그리고 또 다른 시리즈읽다s(아마도 파일 및 하위 디렉터리)입니다.

연결 실패는 다음과 같이 표시됩니다.

statx(AT_FDCWD, "/mnt/Work", AT_STATX_SYNC_AS_STAT, STATX_MODE, 0xbeb86650) = -1 EHOSTDOWN (Host is down)
openat(AT_FDCWD, "/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=2998, ...}) = 0
read(3, "# Locale name alias data base.\n#"..., 4096) = 2998

...그리고 하나읽다그리고쓰다잘못된 정보("호스트가 전화를 끊었습니다"). 더 포스팅할 수 있어요스트레스출력 및샤크그리고중소기업 고객누구든지 보고 싶다면 내보낼 수도 있습니다. 티아

관련 정보