CIFS: Возвращенный код состояния 0xc000006d STATUS_LOGON_FAILURE

Вопрос или проблема

Linux: 4.18.0-305 ОС: CentOS 8.4

У меня есть папка SMB, которая монтируется с помощью следующей команды:

mount -t cifs -o iocharset=utf8,rw,credentials=${_passwordFile},nobrl,nounix,file_mode=0644,dir_mode=0755,rsize=65536,wsize=130048,uid=10002,gid=1005,vers=3.0 //SMB_FOLDER LOCAL_FOLDER 

Иногда источник SMB становится недоступным. Тогда я получаю следующее сообщение об ошибке в messages:

Dec  1 12:40:09 XXXX kernel: CIFS: VFS: \\SMB_FOLDER Send error in SessSetup = -13 Dec  1 12:40:09 XXXX kernel: CIFS: Status code returned 0xc000006d STATUS_LOGON_FAILURE Dec  1 12:40:09 XXXX kernel: CIFS: VFS: \\SMB_FOLDER Send error in SessSetup = -13 Dec  1 12:40:10 XXXX kernel: CIFS: Status code returned 0xc000006d STATUS_LOGON_FAILURE

Эта ошибка постоянно СПАМИТСЯ в файлах журналов. Даже если я размонтирую папку, сообщение об ошибке продолжает появляться постоянно.

umount \\SMB_FOLDER 

Хотя я размонтировал папку, я не могу её удалить. Я получаю следующее сообщение об ошибке:

rm: removing 'LOCAL_FOLDER' is not possible: Device or resource busy 

Следующие команды не дают никакого вывода: lsof +D LOCAL_FOLDER и fuser LOCAL_FOLDER отображены.

Как я могу решить проблему без перезагрузки?

В моём случае установка пакета cifs-utils решила проблему.

В вашем файле учётных данных “credentials=${_passwordFile}” добавьте домен или IP-адрес следующим образом:

username=имя_пользователя

password=ваш_пароль

domain=домен_хоста

У меня сейчас такая же проблема. Я ничего не могу найти.

Одно, что я пробовал, и думал, что это сработает, но не было открыто необходимых портов, это: с помощью ssh на другой машине с Linux для удалённого выполнения команды

systemctl restart <affected log daemon/process> 

или

systemctl stop <affected log daemon/process> 

Если порт, который вы используете, открыт на удалённом сервере для SSH, я думал, что это сработает довольно хорошо.

Это должно выглядеть примерно так:

$ ssh -t admin@<remoteServerIP> sudo systemctl stop <neededService> 

Примечание: Убедитесь, что вы используете учетную запись с необходимыми разрешениями для работы

В моём случае это произошло на моём VMSS, работающем на Azure. Это было связано с тем, что, когда доступность учётной записи хранилища/файлового ресурса упала со 100% до 80%. В то же время я начал получать ту же ошибку. Даже после восстановления доступности до 100%, проблема не разрешилась сама собой. Мне пришлось перезагрузить экземпляр VMSS, чтобы исправить проблему.

В моем случае вам нужно отключить опцию “Для улучшенной безопасности разрешить вход только учетным записям Microsoft на этом устройстве с использованием Windows Hello (рекомендуется)” в параметрах входа в учетную запись Windows 11, так как это помешает вам получить доступ к Windows с помощью пароля

.

Ответ или решение

Ошибка "CIFS: Status code returned 0xc000006d STATUS_LOGON_FAILURE" указывает на проблему с аутентификацией при подключении сетевой папки SMB. Данная ошибка часто возникает на платформах Linux, например на CentOS 8.4 с ядром 4.18.0-305, когда возникает сбой подключения к SMB-серверу.

Причины и решения:

  1. Проблемы с учетными данными:

    • Убедитесь, что файл учетных данных, указанный в ключе credentials=${_passwordFile}, содержит актуальные данные. Например:
      username=ваше_имя_пользователя
      password=ваш_пароль
      domain=ваш_домен
    • Убедитесь, что ваш SMB-сервер использует соответствующий домен или IP-адрес в учетных данных.
  2. Конфигурация сети и доступные порты:

    • Проверьте доступность SMB-сервера и сетевые подключения. Например, возможна блокировка нужных портов.
    • Для управления сервисами через SSH убедитесь в наличии открытых портов и прав доступа от имени администратора. Пример команды:
      ssh -t admin@удаленный_IP sudo systemctl stop <нужная_служба>
  3. Проблемы клиента CIFS:

    • Проверьте установлен ли пакет cifs-utils, так как его отсутствие может вызывать проблемы. Установите его с помощью:
      sudo yum install cifs-utils
  4. Текущие процессы и блокировки:

    • Несмотря на неудачную попытку демонтирования каталога, ошибка ‘Device or resource busy’ может указывать на процесс, работающий с этой точкой монтирования. Возможно использование команды fuser -m LOCAL_FOLDER для точного обнаружения процессов.
    • Если процессы не отображаются, перезагрузка демона может помочь:
      sudo systemctl restart smb
  5. Проблема с SMB-сервером или файловым хранилищем:

    • Становится актуально использование Azure или другого облака. Хотя загрузка восстановилась, перезагрузка ВМ или ВМSS в Azure может устранить проблему доступности.
  6. Специфические настройки ОС Windows:

    • В случае если ваш SMB-сервер работает на Windows 11, отключите настройки безопасности типа "Используйте только учетные записи Microsoft" для входа.

Заключение

Эффективное управление ошибкой требует понимания текущей сетевой и серверной конфигурации, где ключевым является правильная настройка параметров подключения и учетных данных. В случае неудач перезапуск или, даже, перезагрузка системного компонента может служить временным решением, но в дальнейшей перспективе важно исключить конфликты и проверить настройки безопасности.

Это создает состояние прозрачности и надежности, минимизируя риски спорадических ошибок и улучшая стабильность подключения SMB.

Оцените материал
Добавить комментарий

Капча загружается...