CIFS поділяють помилки в монтажі


31

Я намагаюся встановити мережеву частку від Linksys NAS200 до Fedora 16.

Програма, яку я намагаюся запустити, не сприймає мережеві адреси, для яких потрібно зберегти. Я запустив його, не вказуючи IP-адресу сервера, і він придумав якийсь випадковий IP-адресу. Я вказав IP-адресу, і він не може знайти пристрій.

Ось помилки:

[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)

Але це працює з 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

Чому я не можу встановити цей сервер самби? Що означають ці помилки?

Відповіді:


35

Виправлення неполадок доступу до спільної папки Windows XP від ​​Fedora:

Ви отримуєте помилку:

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

1. Переконайтеся, що Linux може пінг другого поля.

Виконайте цю команду у вікні linux до IP вікна:

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

Якщо ви не можете дістатись до коробки, або підключення не працює і вимикається, монтування може скаржитися.

2. Переконайтесь, що папка фактично надана у Windows, виконайте ці дії.

  1. Відкрийте браузер файлів для C:\.
  2. Створіть нову папку під назвою public. Отже, тепер у вас є C: \ public
  3. Всередині цієї папки зробіть новий текстовий документ під назвою "testing.txt".
  4. Клацніть правою кнопкою миші папку C:\publicта перейдіть до властивостей.
  5. Перейдіть на вкладку спільного доступу.
  6. Переконайтесь, що "Надіслати цю папку в мережі" встановлено. Зверніть увагу на загальну назву: "загальнодоступна".
  7. Натисніть ОК. Під папкою має з’явитися маленька рука, тобто її поділяють.

Папка 'public' тепер спільна, і ви маєте змогу підключитися до неї за допомогою Linux.

3. У Linux встановіть спільний доступ за допомогою 'mount':

  1. Відкрийте консоль і suвикоріньте корінь.
  2. Створити каталог mkdir /mnt/windows Тут буде доступ до спільних файлів.

  3. запустіть команду mount, яка запропонує ввести пароль:

    [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. Наведена вище команда вимагає ввести пароль, ввести правильний пароль, неправильний призведе до помилки. Якщо ви не впевнені в паролі, можете змінити пароль у вікні Windows під Панель керування -> Облікові записи користувачів.

  5. запустити команду cd /mnt/windows і запустити ls. Вміст накопичувача представлений:

    [root@defiant windows]# ls
    testing.txt
    [root@defiant windows]#
    
  6. Ви підключилися до накопичувача Windows.

4. Підключіться до спільного диска за допомогою браузера файлів konqueror або linux:

  1. Відкрийте свій файловий браузер, в моєму випадку konqueror.
  2. У рядку розташування файлів введіть smb://192.168.13.107/publicта натисніть клавішу enter.
  3. Можливо, вам буде запропоновано поле для входу з ім'ям користувача та паролем. Введіть ім’я користувача та пароль у вікні Windows, описаному вгорі цієї публікації.
  4. Вітаємо, що ви підключились до папки, що ділиться.

ВИМОЖЕННЯ, якщо вищезгадане не працює.

Крок 1: Ви спробували перезапустити обидва комп'ютери

Перезавантажте обидва комп'ютери. Після цього переконайтесь, що всі ваші оновлення Windows виконані. Переконайтеся, що в Linux також береться оновлення програмного забезпечення. Перезавантажте після оновлень.

Крок 2: Перегляньте свої брандмауэры, ZoneAlarms та інше програмне забезпечення безпеки

Частина програмного забезпечення, призначена для захисту вашого комп'ютера від вірусів, зловмисного програмного забезпечення або зла в Інтернеті, може блокувати вашу спробу обміну файлами. Брандмауер Windows може перебувати в параноїдальному режимі. Хоча навряд чи винен брандмауер Windows, тимчасово вимкніть його, щоб переконатися, що це не проблема. (не залишайте його).

Придбайте список усіх програм безпеки, які можуть бути встановлені в параноїдальному режимі. Брандмауери Windows, сторонні брандмауери, ZoneAlarms, антивіруси, Kaspersky, AVG або будь-що інше, що стверджує, що захищає вас від вірусів / зловмисних програм / зла. Вам потрібно буде переглянути їх і або вимкнути їх тимчасово, або відкрити через них білий список для вашої IP-адреси.

Крок 3: Отримайте підказки із програмного забезпечення безпеки.

ZoneAlarm веде журнал усіх подій та спроб спільного використання папок, перейдіть до огляду-> попереджень та журналів. Перегляньте список усіх ваших невдалих спроб. Те ж саме можливо і для іншого програмного забезпечення. У такому випадку це захищає вас від вас.

Крок 4: Підозрюйте проблеми в маршрутизаторі або локальній мережі

Можливо, маршрутизатор, бездротові мости, німі хаби або інший мережевий пристрій має в ньому певну директиву, блокуючи вашу спільну спробу підключення папки. Сам маршрутизатор або пристрій може блокувати порт або щось у обмеженому режимі. Хтось з цим дурив останнім часом? Спробуйте повернути маршрутизатор до типового, і спробуйте ще раз.

Крок 5. Переконайтесь, що ваша локальна мережа проста та правильна.

Чи підключені обидва комп'ютери до одного маршрутизатора? Можливо, один підключений до шаленого мережевого бездротового мосту, а другий до маршрутизатора? Спростіть мережу за допомогою підключення всіх комп'ютерів до одного маршрутизатора. Перезавантажте маршрутизатори та Інтернет, повторіть спробу.

Крок 6: Все ще не працює. Ізолюйте несправний блок.

Настав час випасати котів та ізолювати дефектну одиницю. Доведіть, що вікно Windows не надає спільний доступ до вашого файлу, під’єднавшись до спільного доступу до іншого комп’ютера. Отримайте ноутбук з друзями для Windows або яблучний продукт та підключіть його до своєї мережі та подивіться, чи можуть вони отримати доступ до спільної доступу. Якщо вони не можуть, у вікні Windows є проблема, якщо вони можуть, у вікні Linux є проблема.

Крок 7: Підозра на брандмауер в Linux

Зверніть увагу на будь-яку спеціальну сигналізацію безпеки або спеціальне програмне забезпечення для брандмауера в Linux. Запустіть system-config-firewallі переконайтеся, що smb перевірено. Переконайтеся, що Linux не перешкоджає вашій версії. Створіть smb-спільний доступ до іншого вікна Linux та спробуйте підключитися до цього.

Якщо нічого з цього не працює. Використовуйте ядерний варіант, перевстановіть обидві операційні системи та починайте зверху вгорі. Це ракетна хірургія.


1
Цей зробив це для мене. Проблему в моєму випадку спричинили налаштування брандмауера, які дозволяли пінг, але не дозволяли підключення SMB на порту TCP 445.
Пол Gear,

Зауважте, що вам, можливо, доведеться використовувати sudo ping 192.168.13.107не простоping 192.168.13.107
Габріель Стейплз

@GabrielStaples Навіщо використовувати для цього судо?
брин

Я поняття не маю, але я знаю, що не писав би, якби спершу спробував це без судо, і воно не вийшло, а потім спробувало це з судо, і воно спрацювало. Я впевнений, що тоді я вважав це дивним, що один працював, а той не робив у той час.
Габріель Степлес

7

Спробуйте:

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

Ключ sec = ntlm


Це не доставило мені ніякої радості
Пол Гір

1
Що робить sec=ntlm?
Карл Ріхтер

Поняття не маю, що sec=ntlmробить, але це єдине рішення на цій сторінці, яке працювало для мене. Редагувати: ось відповідь на форумах ubuntu, яка пояснює, чому це працює: ubuntuforums.org/…
Джонатан

5

Додавання більше можливих рішень цієї проблеми

Це повідомлення про помилку не є дуже описовим, але це означає, що операція закінчилася. Для цього є чимало можливих причин, і, досліджуючи цю проблему, я натрапив на деякі рішення, про які ще не було сказано у цій темі.

1.) Неоднозначна мережа

У різних рішеннях, які ви можете знайти цю проблему в Інтернеті, це не часто згадується, але сервер, до якого ви підключаєтеся, повинен знаходитися в тій самій підмережі, що і ваша локальна машина. Ця проблема у мене виникла через те, що у мене було ввімкнено як дротовий, так і бездротовий зв’язок, і визначити, до якої підмережі належить пристрій, було неоднозначним, оскільки два з'єднання не є однією мережею. Відключення Wi-Fi миттєво вирішило проблему. Я натрапив на це рішення, читаючи Das Werkstatt :

[РІШЕННЯ]

У моєму випадку частка DFS знаходилась на сховищі в іншій підмережі. Я додав мережевий псевдонім (eth0: 1) з IP в цій підмережі зберігання, а потім він працював.

Я б очікував щось на кшталт "немає маршруту до хоста" замість криптованої "помилки (115): Операція зараз триває" ...

Ну, не можу це все;)

Джерело: http://www.das-werkstatt.com/forum/werkstatt/viewtopic.php?f=7&t=2074

2.) Нові рядки в кінці файлу облікових даних

Файли облікових даних корисні, якщо ,у вашому паролі є спеціальні символи, такі як кома . На нього можна посилатись у таких варіантах:

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

Файл відформатований shдекларацією змінної -style:

username=me
password=mypassword
domain=mydomain

Якщо ви використовуєте файл облікових даних, переконайтеся, що в кінці немає нових символів рядка, інакше він буде затримати час, намагаючись розібрати файл облікових даних:

...
domain=mydomain
<empty line>

3.) Спроба встановити конкретний каталог, а не фактичну точку поділу

Якщо потрібний вам каталог є підкаталогом спільного доступу, ви не зможете встановити цю папку безпосередньо. Спроба зробити це призводить до декількох різних помилок, це одна з них.

Замість цього встановіть саму точку спільного доступу та додайте символьне посилання до потрібного підкаталогу:

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

Таким чином, ви отримуєте такий самий результат, як і монтаж самого підкаталогу, без необхідності щоразу переходити до нього.


4

Не впевнений, наскільки це важливо для вашого випадку, але у мене була подібна проблема із встановленням спільного доступу до CIFS на моєму телефоні Android:

# 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
#

Я спробував зняти кінцеву косу рису, і, мабуть, це змінило значення - вона встановлена:

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

1
Так, акції - це не зовсім каталоги, навіть якщо настільні середовища хочуть робити вигляд.
Eroen

3

Проблема в моїй ситуації полягала в тому, що я мав пробіли у файлі облікових даних / etc / smb-облікових даних

username = foobar
password = secret

Після того як я змінив його на:

username=foobar
password=secret

Це спрацювало.


2

Мені часто доводиться цитувати, -o "username=joe,password=yadayada,domain=adomain" //share/share /mnt і він встановиться правильно, і більшість прикладів, які я шукав, не показують цей біт (якщо він потрібен для цих систем).
Я справді мав цю проблему на своєму планшетному ПК (чому я тут хотів, щоб UNC назва не IP) цитати виправили це правильно.


1

Додаткове можливе рішення

Якщо до загальної папка з Windows 10 (ймовірно , відноситься до 7 і XP теж), підтверджує , що настройки загального доступу до папки в Windows сконфігуровані правильно для типу мережі , до якої ви підключені, тобто PublicабоPrivate .

Я просто передам свій досвід і адаптую до вашої ситуації, якщо це доречно. Відкрийте список мереж Wi-Fi і для тієї, до якої ви підключені, натисніть Properties. Встановіть Publicабо Privateдоречно. (У моєму випадку Privateмережа була неправильно позначена Public.)

Після того, як мережа буде класифікована правильно, клацніть правою кнопкою миші вашу спільну папку, виберіть Properties, виберіть Sharingвкладку, виберіть Network and Sharing Centerпосилання та переконайтесь, що Turn on file and printer sharingвибрано для Publicабо Privateзалежно від типу вашого Wi-Fi, як було раніше класифіковано.

Після цього мені вдалося підключити машину Debian до Windows 10, як очікувалося.


0

Інша проблема може бути з DNS. Я отримував ту саму помилку "операція, яка зараз триває". Хоча перегляд з Дельфіном працював чудово. Ім'я хоста, яке я успішно використовував з Dolphin, вирішує 4 IP-адреси, одна з яких закінчується на 0 (це ім'я субдомену). Коли я використовую ім'я для однієї з інших 3-х IP-адрес, працює монтаж. Я думаю, що Дельфін розумніший у пошуку справжнього хоста, коли йому надається (суб) доменне ім’я, ніж це гора.


Я не знаю, чому моя відповідь була знята. Я включив це, тому що я отримував таку ж поведінку, що і ОП, але з іншою першопричиною. Я знаю, що питання ОП вирішено, але я думаю, що може бути корисним, щоб інші, хто стикався з такою поведінкою, знали, що є ще одна можлива причина.
Кріс

0

Сьогодні я бачив випадок, коли хтось намагався встановити спільний доступ за допомогою CIFS, але CIFS не був встановлений.

yum install cifs-utils
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.