Linux в Windows — smbclient работает нормально, а mount.cifs — нет

Linux в Windows — smbclient работает нормально, а mount.cifs — нет

Я использую гостевую Ubuntu 22.04 в Hyper-V в Windows 11. Я создал файловый ресурс и предоставил к нему общий доступ для локального пользователя ("shareuser"). Я пытаюсь автоматически смонтировать его с помощью cifs и соответствующих изменений, /etc/fstabно у меня ничего не получается. Когда я выполняю монтирование в командной строке, мне выдается следующее:

sudo mount -t cifs -o domain=WORKGROUP,username=shareuser,password=pass1234 
//172.22.0.1/sharename /home/otheruser/share
mount: /home/otheruser/share: cannot mount //172.22.0.1/sharename read-only.

sharenameопределенно не только для чтения, так как я могу подключиться к smbclient и передавать файлы совершенно нормально. Просто cifs не работает так, как должен.

Работающее соединение smbclientвыглядит так:

smbclient -U WORKGROUP/shareuser --password 'pass1234' //172.22.0.1/sharename

Странно, что у меня есть еще одна Ubuntu 22.04 VM, где все работает нормально. Я нашел много постов, которые идут в том же направлении, но ни один из них не содержит точно такое же сообщение об ошибке. Также --verboseне выводит ничего, кроме сообщения об ошибке выше. Любая подсказка приветствуется.

решение1

Для подключения из Linux CIFS к Windows 11 требуется SMB3. Вот два варианта, которые работают у меня на Debian 12 («книжный червь»):

w='WORKGROUP'                 # Workgroup or domain; blank if unused
u='shareuser'                 # Username
p='pass1234'                  # Password; no comma allowed
s='//172.22.0.1/sharename'    # Share

mkdir -p /mnt/net
mount -t cifs -o "vers=3.02,${w:+domain=$w,}username=$u,password=$p" "$s" /mnt/net

smbclient --user "$u" --max-protocol SMB3 "$s" "$p" --command 'dir'

Связанный контент