CIFS takma hataları paylaşıyor


31

Linksys NAS200’den Fedora 16’ya bir ağ paylaşımına bağlanmaya çalışıyorum.

Çalıştırmaya çalıştığım program, kaydedileceği ağ adreslerini kabul etmiyor. Sunucunun IP adresini belirtmeden koştum ve bazı rastgele IP'lerle geldi. Bir IP belirttim ve cihazı bulamıyor.

İşte hatalar:

[root@HOME ~]# mount -t cifs -v //NAS_SERVER/public/ /mnt/ -o username=user,password=pass
mount.cifs kernel mount options: ip=184.106.31.190,unc=\\NAS_SERVER\public,,ver=1,user=user,pass=********
mount error(115): Operation now in progress
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
[root@HOME ~]# mount -t cifs -v //NAS_SERVER/public/ /mnt/ -o username=user,password=pass,ip=192.168.1.77
ip address 192.168.1.77 override specified
mount.cifs kernel mount options: ip=192.168.1.77,unc=\\NAS_SERVER\public,,ver=1,user=user,pass=********
Retrying with upper case share name
mount.cifs kernel mount options: ip=192.168.1.77,unc=\\NAS_SERVER\PUBLIC,,ver=1,user=user,pass=********
mount error(6): No such device or address
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

Ancak bununla çalışır smbclient:

[root@HOME ~]# smbclient -L 192.168.1.77
WARNING: The security=share option is deprecated
Enter user's password: 
Domain=[HOME] OS=[Unix] Server=[Samba 3.0.22]

Sharename       Type      Comment
---------       ----      -------
IPC$            IPC       IPC Service (Network Storage)
DISK 1          Disk      
PUBLIC          Disk      
ADMIN$          IPC       IPC Service (Network Storage)
Domain=[HOME] OS=[Unix] Server=[Samba 3.0.22]

Server               Comment
---------            -------
HOME                 Samba Server Version 3.6.5-85.fc16
NAS_SERVER           Network Storage

Workgroup            Master
---------            -------
HOME                 HOME

Neden bu samba sunucusuna bağlanamıyorum? Bu hatalar ne anlama geliyor?

Yanıtlar:


35

Fedora'dan Windows XP paylaşılan klasörüne erişme ile ilgili sorunları giderme:

Hatayı alıyorsunuz:

mount error(115): Operation now in progress
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

1. Linux'un diğer kutuya ping attığından emin olun.

Linux kutusundaki bu komutu windows kutusunun IP'sine çalıştırın:

el@defiant /mnt $ ping 192.168.13.107
PING 192.168.13.107 (192.168.13.107) 56(84) bytes of data.
64 bytes from 192.168.13.107: icmp_req=1 ttl=128 time=0.366 ms
--- 192.168.13.107 ping statistics ---
44 packets transmitted, 44 received, 0% packet loss, time 42999ms
rtt min/avg/max/mdev = 0.178/0.227/0.366/0.038 ms

Kutuya ulaşamıyorsanız veya bağlantı girip çıkıyorsa, montaj şikayette bulunabilir.

2. Bir klasörün aslında pencerelerde paylaşıldığından emin olun, aşağıdaki adımları izleyin.

  1. Dosya tarayıcısını açın C:\.
  2. Adlı yeni bir klasör oluşturun public. Yani şimdi C: \ public var
  3. Bu klasörün içinde "testing.txt" adlı yeni bir metin belgesi hazırlayın.
  4. Klasörü sağ tıklayın C:\publicve özelliklere gidin.
  5. Paylaşım sekmesini tıklayın.
  6. Şunlara dikkat edin: "Bu klasörü ağda paylaş" seçeneğinin işaretli olduğundan emin olun. Paylaşım adını not edin: 'public'.
  7. Tamam'ı tıklayın. Klasörün altında paylaşılan anlamına gelen küçük bir el görünmelidir.

'Public' klasörü şimdi paylaşılıyor ve Linux ile bağlanabilmelisiniz.

3. Linux'ta, paylaşımı 'mount' ile bağlayın:

  1. Bir konsol açın ve suroot'a yönlendirin.
  2. Bir dizin oluştur mkdir /mnt/windows Bu, paylaşılan dosyalara eriştiğiniz yerdir.

  3. parola isteyen mount komutunu çalıştırın:

    [root@defiant mnt]# mount -t cifs //192.168.13.107/eric /mnt/windows -o username=eric
    Password for eric@//192.168.13.107/public:  **********
    [root@defiant mnt]# 
    
  4. Yukarıdaki komut sizden bir şifre ister, doğru şifreyi girin, yanlış bir hata verir. Şifreden emin değilseniz, parolayı Denetim Masası -> Kullanıcı Hesapları altındaki pencerelerden değiştirebilirsiniz.

  5. komutu cd /mnt/windows çalıştırın ve çalıştırın ls. Sürücünün içeriği sunulmuştur:

    [root@defiant windows]# ls
    testing.txt
    [root@defiant windows]#
    
  6. Windows sürücüsüne bağlandınız.

4. Paylaşılan sürücüye konqueror veya linux dosya tarayıcısı ile bağlanın:

  1. Benim dosya tarayıcımı aç, benim durumumda konqueror.
  2. Dosya konum çubuğunda, girin smb://192.168.13.107/publicve enter tuşuna basın.
  3. Bir kullanıcı adı ve şifre giriş kutusu ile size sunulabilir. Bu yayının en üstünde açıklanan pencere kutusunun kullanıcı adını ve şifresini girin.
  4. Tebrikler paylaşılan klasöre bağlısınız.

SORUN GİDERME, yukarıdaki işe yaramazsa.

1. Adım: Her iki bilgisayarı da yeniden başlatmayı denediniz mi?

Her iki bilgisayarı da yeniden başlatın. Bundan sonra, tüm windows güncellemelerinizin yapıldığından emin olun. Linux'un yazılım güncellemelerinin de üstesinden geldiğinden emin olun. Güncellemelerin ardından yeniden başlat.

Adım 2: Güvenlik duvarlarınızı, ZoneAlarms'lerinizi ve diğer Güvenlik Yazılımlarınızı inceleyin

Bilgisayarınızı virüslerden, kötü amaçlı yazılımlardan veya Internet'teki kötülüklerden korumak için tasarlanmış bir yazılım, dosya paylaşım denemenizi engelliyor olabilir. Windows güvenlik duvarı paranoyak modunda olabilir. Her ne kadar Windows Güvenlik Duvarı'nın suçlanması muhtemel olmasa da, sorunun olmadığını doğrulamak için geçici olarak kapatın. (bırakmayın).

Paranoyak moda ayarlanmış tüm güvenlik yazılımlarının bir listesini edinin. Windows Güvenlik Duvarları, 3. parti güvenlik duvarları, ZoneAlarms, Antivirüsler, Kaspersky, AVG veya sizi virüslerden / kötü amaçlı yazılımlardan / kötülüklerden koruduğunu iddia eden herhangi bir şey. Bunları gözden geçirmeniz ve geçici olarak kapatmanız veya IP adresiniz için bunlar arasında beyaz bir liste açmanız gerekir.

Adım 3: Güvenlik yazılımından ipuçları alın.

ZoneAlarm, tüm klasör paylaşım olaylarını ve denemelerinin bir kaydını tutar, Genel Bakış-> uyarılar ve kayıtlar bölümüne gidin. Ve başarısız girişimlerin bir listesini görün. Aynısı diğer yazılımlar için de mümkündür. Bu durumda, seni senden koruyor.

Adım 4: Yönlendirici veya yerel alan ağındaki sorunlardan şüphelenin

Belki de yönlendirici, kablosuz köprüler, dilsiz hub'lar veya başka bir ağ cihazında, paylaşılan klasör bağlantı girişimi engellemekte bazı yönlendirme yönelimleri vardır. Yöneltici veya cihazın kendisi bir bağlantı noktasını engelliyor olabilir veya kısıtlayıcı modda bir şey olabilir. Son zamanlarda kimse onunla dalga geçiyor mu? Yönelticiyi varsayılan ayarlara getirmeyi tekrar deneyin ve tekrar deneyin.

Adım 5: Yerel alan ağınızın basit ve doğru olduğundan emin olun.

Her iki bilgisayarınız da aynı yönlendiriciye mi bağlanıyor? Belki biri berbat bir ağ köprüsü kablosuz köprüsüne diğeri ise bir yönlendiriciye bağlı? Tüm bilgisayarların bir yönlendiriciye bağlanmasını sağlayarak ağı basitleştirin. Yönlendiricileri ve interneti yeniden başlatın, tekrar deneyin.

Adım 6: Hala çalışmıyor. Arızalı birimi izole edin.

Kedileri sürmek ve arızalı birimi izole etmenin zamanı geldi. Windows kutusunun, farklı bir bilgisayarla paylaşıma bağlanarak dosyanızı paylaşmadığını kanıtlayın. Bir arkadaşınızın dizüstü bilgisayarını veya elma ürününü edinin ve ağınıza bağlayın ve paylaşıma erişip erişemediklerini görün. Olmazlarsa, windows kutusunun bir sorunu var, eğer varsa, Linux kutusunun sorunu var.

Adım 7: Linux'taki güvenlik duvarından şüphelenin

Linux'taki herhangi bir özel güvenlik alarmını veya özel güvenlik duvarı yazılımını not alın. Koş system-config-firewallve smb'nin kontrol edildiğinden emin ol. Linux'un bağınızı engellemediğinden emin olmak için kontrol edin. Başka bir Linux kutusundan smb payı oluşturun ve buna bağlanmayı deneyin.

Bunların hiçbiri işe yaramazsa. Nükleer seçeneğini kullanın, her iki işletim sistemini de yeniden kurun ve en baştan başlayın. Bu roket ameliyatı.


1
Bu benim için yaptı. Benim durumumdaki sorun, ping işlemine izin veren ancak 445 numaralı TCP bağlantı noktasında SMB bağlantılarına izin vermeyen güvenlik duvarı ayarlarından kaynaklanıyordu.
Paul Gear,

sudo ping 192.168.13.107Sadece kullanmak zorunda kalmayacağınızı unutmayınping 192.168.13.107
Gabriel Staples

@GabrielStaples Neden bunun için sudo kullanıyorsunuz?
bryn

Hiçbir fikrim yok, ama ilk önce sudo olmadan denemeden ve işe yaramadı ve sonra sudo ile denemeden ve işe yaradıkça bunu yazamayacağımı biliyorum. Eminim ki o zamanlar birinin işe yarayıp yaramadığını da garip düşündüm.
Gabriel Staples

7

Deneyin:

mount -t cifs -v //NAS_SERVER/public/ /mnt/ -o username=user,password=pass,sec=ntlm

Anahtar sec = ntlm


Bu bana hiç neşe vermedi
Paul Gear

1
Ne yapar sec=ntlm?
Karl Richter

Ne sec=ntlmolduğu hakkında hiçbir fikrim yok, ama bu sayfa benim için çalışan tek çözüm. Düzenleme: işte ubuntu forumlarında bunun neden işe yaradığını açıklayan bir cevap: ubuntuforums.org/…
Jonathan Landrum

5

Bu soruna daha olası çözümler eklemek

Bu hata mesajı çok açıklayıcı değil, ancak işlemin zaman aşımına uğradığı anlamına geliyor. Bunun çok sayıda olası nedeni var ve bu problemi araştırırken, henüz bu konuda daha önce değinilmeyen bazı çözümler ile karşılaştım.

1.) Belirsiz Ağ

Çevrimiçi olarak bu soruna bulabileceğiniz çeşitli çözümlerde sıkça bahsedilmez, ancak bağlandığınız sunucunun yerel makinenizle aynı alt ağda olması gerekir. Bu sorun benim için ortaya çıktı, çünkü hem kablolu hem de kablosuz bağlantıları etkin hale getirdim ve iki bağlantı aynı ağ olmadığı için cihazın hangi alt ağa ait olduğunu belirleme belirsizdi. Wifi devre dışı bırakılması sorunu hemen çözdü. Das Werkstatt'ı okurken bu çözüme rastladım :

[ÇÖZÜM]

Benim durumumda, DFS paylaşımı farklı bir alt ağdaki bir depodaydı. Bu depolama alt ağında bir IP olan bir ağ diğer adı (eth0: 1) ekledim ve çalıştı.

Kriptik yerine "ev sahibi olma yolu yok" gibi bir şey beklerdim "hatası (115): İşlem devam ediyor" ...

Eh, her şeye sahip olamazsın;)

Kaynak: http://www.das-werkstatt.com/forum/werkstatt/viewtopic.php?f=7&t=2074

2.) Kimlik bilgileri dosyasının sonundaki yeni satırlar

Kimlik bilgisi dosyaları, ,şifrenizdeki virgül gibi özel karakterleriniz varsa kullanışlıdır . Bu gibi seçeneklerde başvuru yapılabilir:

mount -t cifs //remote /mnt/local -o credentials=/path/to/cifs.credo

Dosya sh-style değişken bildirimi ile biçimlendirilmiş :

username=me
password=mypassword
domain=mydomain

Bir kimlik bilgisi dosyası kullanıyorsanız, sonunda yeni satır olmadığından emin olun, yoksa kimlik bilgisi dosyasını ayrıştırmaya çalışırken zaman aşımına uğrar:

...
domain=mydomain
<empty line>

3.) Gerçek paylaşım noktasından ziyade belirli bir dizini bağlamaya çalışmak

İhtiyacınız olan belirli dizin paylaşımın bir alt diziniyse, bu klasörü doğrudan bağlayamazsınız. Bunu yapmaya çalışmak birkaç farklı hataya neden oluyor, bu onlardan biri.

Bunun yerine, paylaşım noktasını kendisi monte edin ve sonra ihtiyacınız olan alt dizine sembolik bir bağlantı ekleyin:

~> mkdir /mnt/local
~> sudo mount -t cifs //remote /mnt/local
~> ln -s /mnt/local/path/to/my-folder /mnt/my-folder

Bu şekilde, her seferinde delme yapmak zorunda kalmadan alt dizinin kendisini monte etmekle aynı sonucu elde edersiniz.


4

Bunun sizin durumunuzla ne kadar alakalı olduğundan emin değilim, ancak Android telefonumda bir CIFS paylaşımını takma konusunda da benzer bir sorunla karşılaştım:

# mount -t cifs //192.168.0.2/media/ /mnt/cifs/media -o username=user,password=pass
mount: mounting //192.168.0.2/media/ on /mnt/cifs/media failed: No such device or address
#

Sondaki eğik çizgiyi kaldırmayı denedim ve görünüşe göre bir fark yarattı - monte edildi:

# mount -t cifs //192.168.0.2/media /mnt/cifs/media -o username=user,password=pass
#

1
Evet, masaüstü ortamları varmış gibi yapsa bile, paylaşımlar tam olarak bir dizin değildir.
Eroen

3

Durumumdaki sorun, / etc / smb-credentials kimlik bilgilerinde boşluklar olmasıydı.

username = foobar
password = secret

Değiştirdikten sonra:

username=foobar
password=secret

İşe yaradı.


2

Sık sık alıntı yapmak zorunda kalırım -o "username=joe,password=yadayada,domain=adomain" //share/share /mnt ve doğru bir şekilde monte edilir ve baktığım çoğu örnek bu biti göstermez (eğer bu sistemlerde gerekliyse).
Aslında şu anda tabletimde bu sorunu yaşadım (neden burada UNC adı IP istememiştim) alıntılar düzeltti.


1

Ek olası çözüm

Paylaşım klasörü Windows 10'dan ise (muhtemelen 7 ve XP için de geçerlidir), Windows klasörünün paylaşım ayarlarının bağlı olduğunuz ağ türü için doğru bir şekilde yapılandırıldığını, yani PublicveyaPrivate .

Sadece deneyimimi ileteceğim ve durumunuza uygun şekilde adapte olacağım. Wifi ağlarının listesini açın ve bağlandığınız ağ için tıklayın Properties. PublicVeya Privateolarak ayarlayın . (Benim durumumda, bir Privateağ yanlış etiketlendi Public.)

Ağ doğru bir şekilde sınıflandırıldıktan sonra, paylaşılan klasörünüzü sağ tıklayın Properties, seçin, Sharingsekmeyi seçin, Network and Sharing Centerbağlantıyı seçin ve wifi bağlantı türünüze göre veya önceden sınıflandırıldığı gibi Turn on file and printer sharingseçildiğinden emin olun .PublicPrivate

Bunu yaptıktan sonra, bir Debian makinesini beklendiği gibi Windows 10'a bağlayabildim.


0

DNS ile ilgili başka bir sorun olabilir. Aynı "işlem devam ediyor" hatasını da alıyordum. Dolphin ile tarama olsa da, iyi çalıştı. Dolphin ile başarılı bir şekilde kullandığım ana bilgisayar adı, biri 0 olmak üzere bitecek olan 4 IP adresine çözümlenir (bir alt etki alanı adıdır). Adı diğer 3 IP adresinden biri için kullandığımda, mount çalışıyor. Dolphin, mount'a göre (alt) bir alan adı verildiğinde gerçek bir ana bilgisayarı aramak konusunda daha zeki olduğunu düşünüyorum.


Cevabımın neden aşağı oy kullandığını bilmiyorum. Dahil ettim çünkü OP ile aynı davranışı alıyorum ama farklı bir kök sebebi vardı. OP'nin konusunun ele alındığını biliyorum, ancak bu davranışa rastlayan başka bir olası neden olduğunu bilmenin başkaları için faydalı olabileceğini düşünüyorum.
Chris

0

Bugün birisinin CIFS kullanarak bir paylaşım yapmaya çalıştığı ancak CIFS kurulu olmayan bir vaka gördüm.

yum install cifs-utils
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.