क्यों मैक smb कनेक्ट cli से लॉगिन के साथ विफल रहता है, लेकिन खोजक से और अतिथि खाते के साथ काम करता है?


8

इसलिए मेरे पास एक मैक (योसेमाइट) एक फ़ोल्डर है जो केवल कई उपयोगकर्ताओं के लिए पढ़ा जाता है और अतिथि खाता उस फ़ोल्डर को माउंट / एक्सेस करने में सक्षम है ताकि उपयोगकर्ता जो भी डाउनलोड कर सकें। मैं एक अन्य मैक (सिएरा) के प्रबंधक के रूप में शेयर से जुड़ रहा हूं। यह काम करता है जब मैं कमांड लाइन से अतिथि उपयोगकर्ता के रूप में चलाता हूं:

mount_smbfs //guest@macbook-pro.local/Files /tmp/files
ls /tmp/files
fileA    fileB

या यदि मैं अतिथि के रूप में खोजक से जुड़ता हूं:

click MacBook-Pro -> Connect As -> Guest -> Connect
double click Files
ls /Volumes/Files
fileA    fileB

अब मैक (Yosemite) पर एक व्यवस्थापक उपयोगकर्ता खाता है। मैं रीड राइट विशेषाधिकार के साथ उस फ़ोल्डर को माउंट / एक्सेस करना चाहता हूं, लेकिन कमांड लाइन से उपयोगकर्ता नाम की आवश्यकता होने पर फ़ोल्डर को एक लॉगिन असफल के साथ माउंट करने का प्रयास।

mount_smbfs //admin@macbook-pro.local/Files /tmp/files
Password for MacBook-pro.local:
mount_smbfs: server rejected the connection: Authentication error

हालाँकि, अगर मैं फाइंडर से जुड़ता हूँ:

click MacBook-Pro -> Connect As -> Registered User
Username: admin
Password: password
 -> Connect
double click Files
ls /Volumes/Files
fileA    fileB

सफल कनेक्शन के हर मामले में, मैं सिस्टम प्रॉपर्टीज के सर्वर शेयर सेक्शन में देख सकता हूं कि जब मैं फाइल शेयरिंग पर क्लिक करता हूं: ऑन -> ऑप्शंस ...

Share files and folders using SMB
  Number of users connected: 1

क्या आप अनुमान लगा सकते हैं कि प्रमाणीकरण की आवश्यकता वाले खाते का उपयोग करके कमांड लाइन के साथ smb से जुड़ने का प्रयास करने पर कनेक्शन अस्वीकार क्यों किया जाता है?

संपादित करें

हां, AFP हर मामले में क्ली सहित काम करता है जिसमें पासवर्ड की आवश्यकता होती है। उदाहरण के लिए:

mount_afp -i afp://admin@macbook-pro.local/Files /tmp/files
Password: 
ls /tmp/files
fileA    fileB

परीक्षण के लिए मैंने केवल मामले में smb प्रमाणीकरण नियमों को कम करने की कोशिश की, लेकिन इसका कोई असर नहीं हुआ, यहां तक ​​कि सादा कूटशब्द भी नहीं भेजा। जैसे की:

sudo nano /etc/nsmb.conf
   [default]
   minauth=none
^c+X
mount_smbfs smb://admin:password@macbook-pro.local/Files /tmp/files
mount_smbfs: server rejected the connection: Authentication error

EDIT2

इस समस्या के बारे में उनसे कोई भी जानकारी प्राप्त कर सकते हैं। (लॉग ऑफसाइट पोस्ट करने के लिए क्षमा करें, लेकिन सफल लॉग में बहुत अधिक पाठ था।)

सबसे पहले, मैकबुक-प्रो.लोकल से कनेक्ट करने का क्लाइंट लॉग, फाइंडर के माध्यम से एसएमबी के माध्यम से प्रवाह का उपयोग करके ऐसा करना:

Click MacBook-Pro
Connect As: Registered User
Name: admin
Password: password
Connect

कंसोल में इस तरह लॉग आउटपुट का उत्पादन करता है:

http://paste.ubuntu.com/23308183/

अब सभी शेयर फ़ोल्डर की सूची पाठ्यक्रम के व्यवस्थापक के लिए उपलब्ध है। इसलिए फाइल फोल्डर पर क्लिक करने से अधिक लॉग आउटपुट उत्पन्न होता है जैसे:

http://paste.ubuntu.com/23308186/

फ़ाइलें फ़ोल्डर माउंट करता है और व्यवस्थापक उपयोगकर्ता द्वारा पढ़ा / लिखा जा सकता है

तुलना के लिए, यहाँ कंसोल से एक लॉग होता है जब शुद्ध कमांड लाइन टूल आरोह_सम्फ का उपयोग करके संसाधन से कनेक्ट करने का प्रयास किया जाता है:

default 09:43:21.257429 -0400   gamed   GKClientProxy: clientForBundleID:
default 09:43:21.257543 -0400   gamed   GKClientProxy: updateIfRecentlyInstalled
default 09:43:21.258623 -0400   gamed   GKClientProxy: clientForBundleID:
default 09:43:21.258751 -0400   gamed   GKClientProxy: updateIfRecentlyInstalled
default 09:43:21.277114 -0400   opendirectoryd  Client: <private>, UID: 0, EUID: 0, GID: 0, EGID: 0
default 09:43:21.277194 -0400   opendirectoryd  <private> completed, delivered 1 result
default 09:43:22.025420 -0400   mount_smbfs subsystem: com.apple.SystemConfiguration, category: SCPreferences, enable_level: 0, persist_level: 0, default_ttl: 0, info_ttl: 0, debug_ttl: 0, generate_symptoms: 0, enable_oversize: 0, privacy_setting: 2, enable_private_data: 0
default 09:43:22.030767 -0400   mount_smbfs subsystem: com.apple.network, category: , enable_level: 0, persist_level: 0, default_ttl: 0, info_ttl: 0, debug_ttl: 0, generate_symptoms: 0, enable_oversize: 0, privacy_setting: 2, enable_private_data: 0
default 09:43:22.069146 -0400   opendirectoryd  Client: <private>, UID: 0, EUID: 0, GID: 0, EGID: 0
default 09:43:22.069231 -0400   opendirectoryd  <private> completed, delivered 1 result
default 09:43:22.069385 -0400   opendirectoryd  Client: <private>, UID: 0, EUID: 0, GID: 0, EGID: 0
default 09:43:22.069479 -0400   opendirectoryd  <private> completed, delivered 1 result
default 09:43:22.072139 -0400   opendirectoryd  Client: <private>, UID: 502, EUID: 502, GID: 20, EGID: 20
default 09:43:22.072212 -0400   opendirectoryd  <private> completed, delivered 1 result
error   09:43:22.146661 -0400   kernel  loginwindow is not entitled
error   09:43:22.146708 -0400   kernel  loginwindow is not entitled
error   09:43:22.146799 -0400   kernel  UserEventAgent is not entitled
error   09:43:22.146882 -0400   kernel  UserEventAgent is not entitled
default 09:43:22.886004 -0400   AppleIDAuthAgent    SERVER Doing account check for "a...n@???????.???". (scheduledAccountCheckDispatcher()/AppleIDAuthd.cpp #545) accountCheckDispatch
default 09:43:22.886074 -0400   AppleIDAuthAgent    Checking account <private>
default 09:43:22.887673 -0400   AppleIDAuthAgent    _AppleIDAuthAccountForAppleID falling back to account aliases

error   09:43:22.891028 -0400   AppleIDAuthAgent    ### Request GS token for '<private>' start failed: -101
default 09:43:22.891078 -0400   AppleIDAuthAgent    ### Authenticate '<private>' failed: <private>
default 09:43:22.891158 -0400   AppleIDAuthAgent    SERVER Didn't succeed with .authenticate, and error is ERROR:"CSIdentityErrorDomain" #-101 kCSIdentityAppleIDInvalidAccountOrPasswordErr {  } so releasing session. (___Z31__AppleIDSessionDoCreateSessionPK10__CFStringS1_PK14__CFDictionaryPS1_PS4_PP9__CFError_block_invoke()/AppleIDXMLServerCommunications.cpp #902) queue.session.
default 09:43:22.891399 -0400   AppleIDAuthAgent    Next time for '<private>': 2016-10-11 13:43:22 +0000 (497886202.891342 + 0.000000), 0.000000 seconds
default 09:43:22.891514 -0400   AppleIDAuthAgent    Next time for '<private>': 2016-10-11 13:43:22 +0000 (497886202.891467 + 0.000000), 0.000000 seconds
default 09:43:22.891560 -0400   AppleIDAuthAgent    Next action time for <private>: <private> (because the account does not have a certificate nor an uploaded csr)
default 09:43:25.393805 -0400   CommCenter  #watchdog #I Callback Watchdog: checkin 119
default 09:43:25.394014 -0400   CommCenter  #watchdog #I Server Watchdog: checkin 119
default 09:43:28.212369 -0400   opendirectoryd  Client: <private>, UID: 502, EUID: 502, GID: 20, EGID: 20
default 09:43:28.212476 -0400   opendirectoryd  <private> failed with error '<private>' (2)
default 09:43:29.061659 -0400   kernel  SmartBattery: finished polling type 4
default 09:43:29.847392 -0400   gamed   GKClientProxy: clientForBundleID:
default 09:43:29.847446 -0400   gamed   GKClientProxy: updateIfRecentlyInstalled
default 09:43:29.847970 -0400   gamed   GKClientProxy: clientForBundleID:
default 09:43:29.847992 -0400   gamed   GKClientProxy: updateIfRecentlyInstalled
default 09:43:29.879093 -0400   opendirectoryd  Client: <private>, UID: 0, EUID: 0, GID: 0, EGID: 0
default 09:43:29.879183 -0400   opendirectoryd  <private> completed, delivered 1 result

कारगर युक्तियाँ

मैंने पाया कि AppleScript स्निपेट कमांड लाइन से काम करता है।

osascript -e 'tell application "Finder" to mount volume "smb://admin:password@macbook-pro.local/Files"'

यह भरे हुए पासवर्ड फ़ील्ड के साथ एक पुष्टिकरण विंडो लॉन्च करेगा। हालाँकि, इसके लिए पासवर्ड को स्पष्ट पाठ में रखना होगा। जाहिर है, यह पासवर्ड के बिना भी किया जा सकता है और हर बार इसे टाइप कर सकता है।

osascript -e 'tell application "Finder" to mount volume "smb://admin@macbook-pro.local/Files"'

इसलिए मैंने पासवर्ड सेव करने की कोशिश की। किचेन में लॉगिन को सेव करने के लिए बॉक्स को टिक करने के बाद, वही कमांड क्लियरटेक्स्ट में पासवर्ड के बिना सफ़ल होता है, लेकिन फिर भी पासवर्ड भरे बॉक्स के साथ कन्फर्मेशन विंडो प्रस्तुत करता है और "पासवर्ड याद रखें" बॉक्स भी टिक हो जाता है।

पासवर्ड सहेजे जाने के बाद, फिर भी आरोह_संबंधी कनेक्शन पर लागू नहीं होता है। माउंट करने का प्रयास विफल रहा।

शायद यह ऑसस्क्रिप्ट आइडिया एक वर्कअराउंड है, लेकिन यह इस सवाल का जवाब नहीं देता है कि सांबा फाइंडर द्वारा क्यों कनेक्ट होता है, लेकिन क्ली का उपयोग करते समय नहीं।


क्या आप एएफपी के माध्यम से जुड़ने की कोशिश कर सकते हैं और देख सकते हैं कि क्या काम करता है?
नूह

मदद के लिए धन्यवाद। यह निश्चित रूप से एएफपी द्वारा सभी मामलों में काम करता है। खोजक, कमांड लाइन और स्क्रिप्ट के साथ चाहे वह अतिथि या पासवर्ड उपयोगकर्ता की आवश्यकता हो।
ndasusers

यह कोशिश करें: सर्वर पर, सिस्टम प्राथमिकताएं -> साझाकरण पर जाएं। खिड़की के केंद्र में एक हरे रंग का चक्र है। इसके आगे यह कहता है कि "फ़ाइल साझा करना: चालू" खिड़की के मध्य में बाईं ओर, "विकल्प ..." मारा। ड्रॉप डाउन में, "शेयर फ़ाइलों और फ़ोल्डरों को smb का उपयोग करके चालू करें"
NoahL

मुझे पता है कि कैसे जाता है
नोहल

फिर से धन्यवाद। फ़ाइल साझाकरण: पर, smb का उपयोग करके फ़ाइलें साझा करना पहले से ही सक्षम है। जब भी एक सफल कनेक्शन दिया जाता है, तो उपयोगकर्ताओं को उस विंडो में भी नंबर दिया जाता है।
ndasusers

जवाबों:


-3

GKClientProxy: clientForBundleID: 4


4
आपका स्वागत है अलग पूछने के लिए और आपके उत्तर के लिए धन्यवाद! हम हमेशा समाधान खोज रहे हैं और ऐसे उत्तर देना चाहते हैं जो जानकारी प्रदान करते हैं जैसे: (1) आपको लगता है कि आपने जो उत्तर दिया है वह समस्या का हल करता है और / या यह अन्य समाधानों से बेहतर क्यों हो सकता है, (2) सहायक जानकारी के लिंक और / या आप जिन उत्पादों की सिफारिश कर रहे हैं। अतिरिक्त जानकारी जैसे कि यह ओपी और अन्य लोगों की मदद कर सकता है, अपने लिए अतिरिक्त जानकारी पा सकता है। यहां उत्तर प्रदान करने के सुझावों के लिए कैसे देखें के बारे में देखें ।
Monomeeth
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.