Linux에서 3DS의 SMB 공유에 어떻게 연결합니까?

Linux에서 3DS의 SMB 공유에 어떻게 연결합니까?

Nintendo의 New 3DS("new"는 이름의 일부임)에는 마이크로 SD 카드의 SMB 공유를 노출할 수 있는 기능이 있습니다.

3DS가 표시될 이름과 사용자 이름 및 비밀번호를 정의하라는 메시지가 표시됩니다. 다음에서는 장치 이름을 지정했고 my3ds사용자 이름은 이라고 가정합니다 myuser. 또한 고정 IP를 제공했습니다. 1.2.3.4예를 들어 보겠습니다. 이 IP를 성공적으로 ping할 수 있습니다.

Windows에서는 문제없이 작동합니다. Explorer에 들어가면 \\my3ds"microSD"라는 단일 공유가 표시되고 해당 파일에 대한 액세스가 허용됩니다.Windows 끝에 아무것도 설치할 필요가 없었습니다., 다른 공유 폴더와 동일한 방식으로 표시됩니다.
중요 참고 사항: 그렇게 하면 3DS 화면에 "PC에 연결됨"이 표시됩니다.Linux에서 시도한 방법 중 어떤 것도 3DS 화면에 응답을 생성하지 않았는데, 이는 아마도 초기에 통신이 실패했음을 나타내는 것일 수 있습니다.

다음은 제가 시도한 다양한 방법과 각 방법에 대한 응답입니다. 저는 Linux Mint의 64비트 KDE 버전을 사용하고 있습니다.

1) 돌고래 활용하기
방법:주소 표시줄에 smb://my3ds, smb://my3ds/microSD, smb://myuser@my3ds또는 입력smb://myuser@my3ds/microSD
응답:Dolphin은 잠시 동안 "폴더 로드 중"을 표시한 후 타임아웃됩니다.

방법:위와 같지만 1.2.3.4대신 사용my3ds
응답:돌고래는 폴더가 존재하지 않는다고 말합니다.

2) 사용mount -t cifs
사용 mount -t cifs및 기계 이름:

$ sudo mount -t cifs //my3ds/microSD /media/3DS/ -o username=myuser
Password for myuser@//my3ds/microSD:
mount.cifs kernel mount options: ip={wrong IP},unc=\\my3ds\microSD,user=myuser,pass=********
mount error(115): Operation now in progress
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

참고: 위에 표시된 IP는 내 ISP가 잘못된 호스트 이름을 리디렉션하는 IP입니다. 즉, 내 라우터가 my3ds.

mount -t cifs고정 IP 사용 :

$ sudo mount -t cifs //1.2.3.4/microSD /media/3DS/ --verbose -o username=myuser
Password for myuser@//1.2.3.4/microSD:
mount.cifs kernel mount options: ip=1.2.3.4,unc=\\1.2.3.4\microSD,user=myuser,pass=********

...여기서 문제가 발생합니다. Ctrl+C를 누르기 전까지는 아무 작업도 수행되지 않습니다. 시스템 모니터에 "mount.cifs" 프로세스가 디스크 절전 모드에 있고 Ctrl+C 이후에도 남아 있는 것으로 표시됩니다. 루트로 실행해도 killall -9 mount.cifs멈추지 않습니다!

3) smbclient 사용

$ smbclient --user=myuser \\\\my3ds\\
Enter myuser's password:

아무 반응도 없고 그냥 돌아옵니다.IP를 사용해도 마찬가지다.

$ smbclient --user=myuser \\\\192.168.1.30\\microsd
Enter myuser's password:
Connection to 192.168.1.30 failed (Error NT_STATUS_RESOURCE_NAME_NOT_FOUND)

다른 방법으로는 이름을 확인할 수 없는 것처럼 보이는 것이 이상하지만 이 방법은 IP를 확인할 수 없음을 보여줍니다.

에 따르면Reddit에 대한 댓글, 노틸러스가 연결할 수 있습니다. Nautilus를 설치하고 시도했지만 Dolphin과 마찬가지로 시간 초과로 인해 여전히 실패했습니다.

보고에 따르면 Mac OSX 사용자는 smb://가 아닌 cifs:// 프로토콜을 사용하여 연결했습니다. 이는 기본값인 1.0 버전을 사용하는 것과 동일한 것으로 보이지만 mount -t cifs명시적으로 를 사용하여 지정하려고 시도했지만 vers=1.0아무런 차이가 없었습니다.

시도할 수 있는 다른 방법이나 mount.cifs 또는 smbclient 설정이 있습니까? 왜 작동하지 않는지 설명할 수 있는 사람이 있나요?

편집하다:요청에 따라 다음과 같은 결과가 출력됩니다 smbclient -L.

$ smbclient --user=myuser -L my3ds
Enter myuser's password: 
Connection to my3ds failed (Error NT_STATUS_IO_TIMEOUT)

또한 IP가 주어지면 연결을 시도하는 Dolphin의 tcpdump의 일부입니다(.100은 PC, .30은 3DS).

21:00:10.004622 ARP, Request who-has 192.168.1.30 tell 192.168.1.100, length 28
    0x0000:  0001 0800 0604 0001 4ceb 4294 e68e c0a8  ........L.B.....
    0x0010:  0164 0000 0000 0000 c0a8 011e            .d..........
21:00:10.007552 ARP, Reply 192.168.1.30 is-at 40:d2:8a:35:24:f2, length 28
    0x0000:  0001 0800 0604 0002 40d2 8a35 24f2 c0a8  [email protected]$...
    0x0010:  011e 4ceb 4294 e68e c0a8 0164            ..L.B......d
21:00:10.007590 IP 192.168.1.100.60644 > 192.168.1.30.139: tcp 0
    0x0000:  4500 003c a0bb 4000 4006 162e c0a8 0164  E..<..@[email protected]
    0x0010:  c0a8 011e ece4 008b 550d 6daa 0000 0000  ........U.m.....
    0x0020:  a002 7210 d4e3 0000 0204 05b4 0402 080a  ..r.............
    0x0030:  ffff cd11 0000 0000 0103 0307            ............
21:00:10.019595 IP 192.168.1.30.139 > 192.168.1.100.60644: tcp 0
    0x0000:  4500 0030 0964 4000 4006 ad91 c0a8 011e  E..0.d@.@.......
    0x0010:  c0a8 0164 008b ece4 67a2 d9fd 550d 6dab  ...d....g...U.m.
    0x0020:  7012 ffff 0dd8 0000 0204 0550 0101 0402  p..........P....
21:00:10.019726 IP 192.168.1.100.60644 > 192.168.1.30.139: tcp 0
    0x0000:  4500 0028 a0bc 4000 4006 1641 c0a8 0164  E..(..@[email protected]
    0x0010:  c0a8 011e ece4 008b 550d 6dab 67a2 d9fe  ........U.m.g...
    0x0020:  5010 7210 c827 0000                      P.r..'..
21:00:10.019864 IP 192.168.1.100.60644 > 192.168.1.30.139: tcp 72
    0x0000:  4500 0070 a0bd 4000 4006 15f8 c0a8 0164  E..p..@[email protected]
    0x0010:  c0a8 011e ece4 008b 550d 6dab 67a2 d9fe  ........U.m.g...
    0x0020:  5018 7210 380d 0000 8100 0044 2044 4244  P.r.8......D.DBD
    0x0030:  4a44 4343 4f44 4244 4744 4943 4f44 4243  JDCCODBDGDICODBC
    0x0040:  4f44 4444 4143 4143 4143 4143 4100 2045  ODDDACACACACA..E
    0x0050:  4845 4645 5046 4345 4845 4643 4e45 4f44  HEFEPFCEHEFCNEOD
    0x0060:  4644 4646 4445 4d43 4143 4143 4141 4100  FDFFDEMCACACAAA.
21:00:10.022602 IP 192.168.1.30.139 > 192.168.1.100.60644: tcp 0
    0x0000:  4500 0028 0965 4000 4006 ad98 c0a8 011e  E..(.e@.@.......
    0x0010:  c0a8 0164 008b ece4 67a2 d9fe 550d 6df3  ...d....g...U.m.
    0x0020:  5010 ffb7 3a38 0000                      P...:8..
21:00:10.022832 IP 192.168.1.30.139 > 192.168.1.100.60644: tcp 5
    0x0000:  4500 002d 0966 4000 4006 ad92 c0a8 011e  E..-.f@.@.......
    0x0010:  c0a8 0164 008b ece4 67a2 d9fe 550d 6df3  ...d....g...U.m.
    0x0020:  5018 ffb7 3729 0000 8300 0001 80         P...7).......
21:00:10.022894 IP 192.168.1.100.60644 > 192.168.1.30.139: tcp 0
    0x0000:  4500 0028 a0be 4000 4006 163f c0a8 0164  E..(..@.@..?...d
    0x0010:  c0a8 011e ece4 008b 550d 6df3 67a2 da03  ........U.m.g...
    0x0020:  5010 7210 c7da 0000                      P.r.....
21:00:10.023078 IP 192.168.1.100.60644 > 192.168.1.30.139: tcp 0
    0x0000:  4500 0028 a0bf 4000 4006 163e c0a8 0164  E..(..@.@..>...d
    0x0010:  c0a8 011e ece4 008b 550d 6df3 67a2 da03  ........U.m.g...
    0x0020:  5011 7210 c7d9 0000                      P.r.....
21:00:10.023268 IP 192.168.1.100.60645 > 192.168.1.30.139: tcp 0
    0x0000:  4500 003c 9181 4000 4006 2568 c0a8 0164  E..<..@.@.%h...d
    0x0010:  c0a8 011e ece5 008b fd08 5c97 0000 0000  ..........\.....
    0x0020:  a002 7210 3df5 0000 0204 05b4 0402 080a  ..r.=...........
    0x0030:  ffff cd16 0000 0000 0103 0307            ............
21:00:10.023588 IP 192.168.1.30.139 > 192.168.1.100.60644: tcp 0
    0x0000:  4500 0028 0967 4000 4006 ad96 c0a8 011e  E..(.g@.@.......
    0x0010:  c0a8 0164 008b ece4 67a2 da03 550d 6df3  ...d....g...U.m.
    0x0020:  5011 ffb7 3a32 0000                      P...:2..
21:00:10.023642 IP 192.168.1.100.60644 > 192.168.1.30.139: tcp 0
    0x0000:  4500 0028 a0c0 4000 4006 163d c0a8 0164  E..(..@.@..=...d
    0x0010:  c0a8 011e ece4 008b 550d 6df4 67a2 da04  ........U.m.g...
    0x0020:  5010 7210 c7d8 0000                      P.r.....

편집 2:약간의 진전이 있습니다. 의 조언에 따라https://askubuntu.com/questions/302159/ubuntu-13-04-will-not-connect-to-share-network-driveDolphin은 시간 초과가 아닌 사용자 이름과 비밀번호를 요청하게 되었습니다. 그러나 끝없이 계속해서 요구하고 있습니다.
이런 일이 발생할 때마다 3DS의 화면은 잠시 동안 "연결됨" 상태로 바뀌었다가 다시 돌아옵니다.

이제 smbclient의 출력이 달라집니다.

$ smbclient --user=myuser -L my3ds
Enter myuser's password: 
session setup failed: NT_STATUS_INVALID_NETWORK_RESPONSE

답변1

sudo mount.cifs //3DS-3885/microSD -o user=3dsUser,password=3dsPass,ip=3dsIP,servern=3DS-3885,uid=linuxUser,gid=users,nounix,vers=1.0 mountPoint

그래서 저는 모든 cifs 옵션이 제대로 작동하도록 강제하는 데 몇 달을 보냈고 이것이 바로 그런 종류의 작동을 발견한 것입니다.

중요한 옵션은 "servern"입니다

내가 말하는 종류의 작업은 한 번 작동하면 마운트를 해제하고 다시 연결해야 함을 의미합니다.

저는 그냥 가끔 싱글게임 복사용으로 사용합니다.

답변2

여기서 중요한 정보는 이 cifs 명령을 사용하여 nintendo 공유를 마운트할 수 있지만 내부에서 "ls"를 시도하면 공유 연결이 끊어져서는 안 된다는 것입니다! 따라서 파일을 전송하려면 공유를 마운트하고 명령줄에서 파일을 복사하고(대상 폴더의 위치를 ​​알고 있어야 함) 자동 완성도 사용하지 마십시오!

관련 정보