
任天堂的 New 3DS(「新」是名稱的一部分)能夠公開其 micro SD 卡的 SMB 共享。
它要求您定義 3DS 的顯示名稱以及使用者名稱和密碼。對於以下內容,假設我已命名設備my3ds
並且用戶名是myuser
。另外,我給了它一個靜態 IP - 假設它是1.2.3.4
用於範例的。我可以成功 ping 這個 IP。
在 Windows 上,它可以毫無問題地運行。如果我進入\\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
回覆:Dolphin 說該資料夾不存在。
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 之後這些進程仍然存在。即使以 root 身份運行也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 可以連接。我安裝了Nautilus並嘗試了,但仍然超時失敗,就像Dolphin一樣。
據報導,Mac OSX 用戶使用 cifs:// 協定而不是 smb:// 進行連線。這似乎相當於使用 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)
另外,Dolphin 嘗試連接的 tcpdump 的一部分,給定 IP(0.100 是 PC,0.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-drive讓 Dolphin 要求輸入使用者名稱和密碼,而不僅僅是超時。然而,它卻一次又一次地無止盡地索取。
每次發生這種情況時,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 命令掛載任天堂共享,但您甚至不能嘗試在內部使用“ls”,這將斷開共享!因此,要傳輸文件,只需掛載共享,然後從命令列複製文件(您必須記住目標資料夾的位置),也不要使用自動完成!