Gắn kết cifs: Hoạt động không được hỗ trợ


16

Không giống như câu hỏi tương tự , tôi thậm chí không thể kết nối với smbclient.

Chia sẻ samba hoạt động tốt trong các cửa sổ và hoạt động tự động, nhưng trong Linux tôi hoàn toàn không thể gắn kết nó và thông báo lỗi là khó hiểu nhất. Đây là samba.conf của tôi:

[global]
    dos charset = CP437
    netbios name = REDACTED
    server string = Lab
    server role = standalone server
    map to guest = Bad User
    obey pam restrictions = Yes
    smb passwd file = /var/etc/private/smbpasswd
    private dir = /var/etc/private
    max log size = 51200
    server min protocol = SMB2
    time server = Yes
    deadtime = 15
    max open files = 11070
    hostname lookups = Yes
    load printers = No
    printcap name = /dev/null
    disable spoolss = Yes
    dns proxy = No
    pid directory = /var/run/samba
    panic action = /usr/local/libexec/samba/samba-backtrace
    idmap config * : backend = tdb
    acl allow execute always = Yes
    create mask = 0666
    directory mask = 0777
    directory name cache size = 0
    kernel change notify = No
    map archive = No
    map readonly = no
    store dos attributes = Yes
    strict locking = No

[common]
    comment = Lab Common share
    path = /mnt/pool/common
    read only = No
    inherit acls = Yes
    hosts allow = XXX.XXX.XX.X/24, XXX.XX.XX.X/24 <-- redacted
    hide dot files = No
    veto files = /.snap/.windows/.zfs/
    vfs objects = zfsacl, streams_xattr, aio_pthread
    zfsacl:acesort = dontcare
    nfs4:chown = yes
    nfs4:acedup = merge
    nfs4:mode = special
    recycle:subdir_mode = 0700
    recycle:directory_mode = 0777
    recycle:touch = yes
    recycle:versions = yes
    recycle:keeptree = yes
    recycle:repository = .recycle/%U

Thông báo lỗi là:

[as@localhost ~]$ sudo mount -t cifs -o username=removed,password=removed  //server.ip.address/common /media/windowsshare/
mount error(95): Operation not supported

Một tin nhắn hoàn toàn vô dụng.

Các dmesg kích hoạt gỡ lỗi:

[237179.795551] fs/cifs/cifsfs.c: Devname: //132.239.27.172/common flags: 0
[237179.795563] fs/cifs/connect.c: Username: lauria
[237179.795565] fs/cifs/connect.c: file mode: 0x1ed  dir mode: 0x1ed
[237179.795600] fs/cifs/connect.c: CIFS VFS: in cifs_mount as Xid: 44 with uid: 0
[237179.795600] fs/cifs/connect.c: UNC: \\132.239.27.172\common
[237179.795605] fs/cifs/connect.c: Socket created
[237179.795606] fs/cifs/connect.c: sndbuf 16384 rcvbuf 87380 rcvtimeo 0x1b58
[237179.795897] fs/cifs/fscache.c: cifs_fscache_get_client_cookie: (0xffff8803e0aa4800/0xffff880035d25580)
[237179.795898] fs/cifs/connect.c: Demultiplex PID: 25817
[237179.795902] fs/cifs/connect.c: CIFS VFS: in cifs_get_smb_ses as Xid: 45 with uid: 0
[237179.795903] fs/cifs/connect.c: Existing smb sess not found
[237179.795907] fs/cifs/cifssmb.c: Requesting extended security.
[237179.795910] fs/cifs/transport.c: For smb_command 114
[237179.795912] fs/cifs/transport.c: Sending smb: smb_len=78
[237179.801062] fs/cifs/connect.c: RFC1002 header 0x25
[237179.801067] fs/cifs/misc.c: checkSMB Length: 0x29, smb_buf_length: 0x25
[237179.801090] fs/cifs/transport.c: cifs_sync_mid_result: cmd=114 mid=1 state=4
[237179.801093] fs/cifs/cifssmb.c: Dialect: 65535
[237179.801094] fs/cifs/cifssmb.c: negprot rc -95
[237179.801097] fs/cifs/connect.c: CIFS VFS: leaving cifs_get_smb_ses (xid = 45) rc = -95
[237179.801100] fs/cifs/fscache.c: cifs_fscache_release_client_cookie: (0xffff8803e0aa4800/0xffff880035d25580)
[237179.801262] fs/cifs/connect.c: CIFS VFS: leaving cifs_mount (xid = 44) rc = -95
[237179.801263] CIFS VFS: cifs_mount failed w/return code = -95

Tôi đã thử nhiều -sectùy chọn khác nhau --- tất cả đều thất bại, mọi thứ đều có cùng một thông báo lỗi. smbclient cũng không hữu ích:

smbclient //132.239.27.172/common -U username%password
protocol negotiation failed: NT_STATUS_INVALID_NETWORK_RESPONSE

Làm thế nào để nó hoạt động trên windows nhưng hoàn toàn không có trên linux?

Câu trả lời:


13

Để điền câu trả lời từ @Ken và @Paul: Phiên bản SMB cần được chỉ định khi cao hơn v1:

mount -t cifs \
  -o username=USERNAME,vers=3.0 \
  //server/share \
  /mnt/point

Máy khách kernel cifs Linux đã được đưa vào kernel kể từ 2.5.42. Giao thức cifs (và các phương ngữ SMB trước đó có liên quan) là mặc định ("Vers = 1.0") nhưng hỗ trợ cho các phương ngữ mới hơn (SMB2.02, SMB2.1 và SMB3 và SMB3.02) có thể được chọn bằng cách chỉ định "Vers = 2.0" hoặc "Vers = 2.1" hoặc "Vers = 3.0" hoặc "Vers = 3.02" khi gắn kết. - https://wiki.samba.org/index.php/LinuxCIFSKernel

Đối với smbclient, câu thần chú là -m, --max-protocol=LEVEL:

smblcient -L server -U username -m SMB2

Tôi đã không tìm thấy một danh sách các mức cho phép cho smbclient. Theo Marc Muehlfeld trong chủ đề này, các phiên bản được Windows sử dụng là:

  • SMB 2.0 được giới thiệu bởi Vista / 2008
  • SMB 2.1 bởi Win7 / 2008R2
  • SMB 2.2 hay còn gọi là 3.0 của Win8 / 2012
  • SMB 3.02 vào 8.1 / 2012R2

Có một số mountthông báo lỗi khác nhau có thể được truy trở về mức giao thức không khớp. Danh sách không đầy đủ (thoải mái chỉnh sửa câu trả lời và thêm thông tin khác):

mount error(13): Permission denied
mount error(95): Operation not supported
mount error(121): Remote I/O error

Cuối cùng, tôi đã thấy một số ý kiến ​​chỉ ra lời khuyên thường được trích dẫn để sử dụng tùy chọn sec=ntlmv2và tương tự không nên được theo dõi nữa. Vì vậy, có lẽ là một ý tưởng tốt để ít nhất là không trộn lẫn và kết hợp secvers.


Nó có thể là một máy mới, đối với tôi vers=3.0không hoạt động nhưng vers=3.02cảm ơn.
bảnh bao

3
Và trong trường hợp của tôi, người duy nhất tôi có thể làm việc là vers=2.0(Ubuntu 18.04)
James T Snell

1
Trải nghiệm tương tự với Ubuntu 18.04; hãy chắc chắn thử tất cả các phiên bản SMB có thể.
Jay Taylor

9

OK "Tôi" đã tìm ra nó - vì một số lý do, thêm "Vers = 3.0" làm cho nó hoạt động. Tôi không biết tại sao nó lại gặp sự cố mà không có vấn đề này hoặc tại sao nó hoạt động. nhưng để tham khảo trong tương lai nếu những người khác đang gặp vấn đề này với các thiết lập freenas của họ.


1
thêm vers=3.0vào cái gì ? Xin hãy giúp đỡ
khaverim

1
Tôi nghĩ paul có nghĩa là để gắn kết tùy chọn.
BHS

2
vers=1.0làm việc cho tôi
Bilow

5

Tôi đã chiến đấu với điều này trong hơn một tháng nay. Với máy khách là Xenserver 6.2 và 6.5, không thể gắn thư mục ISO qua CIFS.

Vers = 3.0 cuối cùng đã hoạt động.

Bạn đã tìm thấy tùy chọn này ở đâu ??!

Tên miền của tôi là Windows 2012 R2. Tôi đã không hạ thấp các yêu cầu xác thực trong sổ đăng ký - tất cả chúng vẫn mặc định (tôi chỉ định mở nó ra khi tôi tìm thấy điều này).

Tôi không phải xác định một giây = cài đặt nào cả.

Tôi DID phải chỉ định một tên miền. Tôi đã chỉ định tên miền trong mũ - có thể không cần thiết mặc dù.

Lệnh của tôi theo sau.

mount -t cifs "//192.168.92.25/shared" -o username=administrator,password=<your_password>,domain=<YOUR DOMAIN IN CAPS>,vers=3\.0 /root/tmp

Bây giờ để tìm hiểu làm thế nào để thêm các tùy chọn để xác thực.

Cảm ơn Paul, dù bạn là ai.


3\.0đã không làm việc cho tôi, nhưng 3.0đã làm.
trpt4him

0

FreeNas cho phép bạn thiết lập các cổ phiếu an toàn hơn. Nếu bạn cho phép các giao thức bảo mật windows thấp nhất (windows NT 4.0), nó sẽ hoạt động với samba. Nếu bạn đã cài đặt, giả sử các giao thức Windows XP và ở trên bạn yêu cầu phiên bản Vers = 3.0 như tôi đã khám phá sau khi vật lộn trong 40 phút để có được FreeNas connecte wiv CentOS 7. Vấn đề là các máy khách (và GUI) phải kiểm tra cao nhất phiên bản xuống. Thay vào đó, nó đi từ phiên bản thấp nhất có sẵn. Nó có thể có ý nghĩa một lần nhưng nhiều thay đổi. Tôi nghĩ thật khó chịu khi trong Gnome, bạn không thể thêm tùy chọn, để sử dụng CIFS hoặc để chỉ định phiên bản giao thức bảo mật. Tôi đoán họ cho những người này là dòng lệnh hoặc không có gì, nhưng điều đó khiến Linux không được sử dụng rộng rãi hơn bởi các mục đích sử dụng máy tính để bàn. đó là một sự xấu hổ thực sự.


-1

trên dịch vụ nhấp vào Nas4free -> CIFS / SMB ở cuối màn hình trong loại hộp Tham số bổ sung

ntlm auth = có


Nó là gì nas4freevà làm thế nào nó liên quan đến câu hỏi OP?
jesse_b
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.