omz:forum

    • Register
    • Login
    • Search
    • Recent
    • Popular

    Welcome!

    This is the community forum for my apps Pythonista and Editorial.

    For individual support questions, you can also send an email. If you have a very short question or just want to say hello — I'm @olemoritz on Twitter.


    Python SMB Connection

    Pythonista
    3
    85
    24325
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • cvp
      cvp @DavinE last edited by cvp

      @cvp said:

      my_smb = SMB_client()
      smb_name = my_smb.getBIOSName(ip)
      print('smb_name=',smb_name)

      These lines do not use user nor pwd, it is only to get the smb_name that you need to use in tHe second. Note that if you know this smb_name, the ip is not necessary

      my_smb = SMB_client(username=user,password=pwd, smb_name=smb_name, print_errors=False)
      my_smb.connect()
      smb_files = my_smb.getRemoteDir('', '*')
      for smb_file in smb_files:
      	smb_filename = smb_file.filename
      	print(smb_file.filename)
      
      1 Reply Last reply Reply Quote 0
      • cvp
        cvp @DavinE last edited by

        @DavinE said:

        pi@RaspberryPi2:~/TEST/smb $ python smb_de.py

        This line is printed by the smb client, and it is not the same on iPad, it does not print anything, it is normal.

        But is the connection ok?

        1 Reply Last reply Reply Quote 0
        • DavinE
          DavinE last edited by DavinE

          @cvp ,

          this is my test code for my connection:

          import smb, socket
          from smb.SMBConnection import SMBConnection
          from nmb.NetBIOS import NetBIOS
          
          netbios = NetBIOS()
          
          user = 'xxx'
          pwd = 'xxx'
          
          share_name          = "ELEKTROTECHNIK"
          user_name           = user
          password            = pwd
          server_IP           = "xxx.xxx.178.251"
          local_machine_name  = socket.gethostname()
          server_machine_name = netbios.queryIPForName(server_IP)
          
          print(server_machine_name[0])
          
          # create and establish connection
          conn = SMBConnection(user_name, password, local_machine_name, server_machine_name[0], domain="WORKGROUP", use_ntlm_v2=True)
          # 139
          # 445
          print(conn.connect(server_IP, 139))
          

          on my iPad i get here False

          on my Raspi2 i get True.....

          or need i to "translate" my Pwd on my iPad in Base64 ?

          cvp 2 Replies Last reply Reply Quote 0
          • cvp
            cvp @DavinE last edited by

            @DavinE said:

            or need i to "translate" my Pwd on my iPad in Base24 ?

            No.

            Did you retry with the other port? 445

            1 Reply Last reply Reply Quote 0
            • DavinE
              DavinE last edited by

              @cvp
              yes, its the same False

              1 Reply Last reply Reply Quote 0
              • cvp
                cvp @DavinE last edited by cvp

                @DavinE you cold also remove ,use_ntlm_v2 = True) in the source code of SmB_client.py

                Just to check

                1 Reply Last reply Reply Quote 0
                • DavinE
                  DavinE last edited by

                  @cvp
                  Its the same...

                  1 Reply Last reply Reply Quote 0
                  • DavinE
                    DavinE last edited by

                    @cvp

                    Do you know what protocol Pythonista use ?
                    SMB1; SMB2; SMB3 ?

                    cvp 1 Reply Last reply Reply Quote 0
                    • cvp
                      cvp @DavinE last edited by

                      @DavinE no idea.
                      Your code works on my NAS

                      1 Reply Last reply Reply Quote 0
                      • DavinE
                        DavinE last edited by

                        @cvp
                        Which on do you have ? WD or ?

                        and do you mean on your iPad ?

                        cvp 1 Reply Last reply Reply Quote 0
                        • cvp
                          cvp @DavinE last edited by

                          @DavinE my NAS is a WD
                          I work on an iPad. WitH your code.
                          It also works with a flash drive connected in usb slot of my router, drive that I always reach in smb.

                          DavinE 1 Reply Last reply Reply Quote 0
                          • cvp
                            cvp last edited by

                            Obviously, the smb module in Pythonista is old and is not identical as on your Radpberry.

                            DavinE 1 Reply Last reply Reply Quote 0
                            • DavinE
                              DavinE @cvp last edited by

                              @cvp said:

                              @DavinE my NAS is a WD
                              I work on an iPad. WitH your code.
                              It also works with a flash drive connected in usb slot of my router, drive that I always reach in smb.

                              When i use my Raspi with the data i get this:

                              RASPBERRYPI4
                              Error on line 87 OperationFailure Failed to list  on Ebner-Elektrotechnik: Unable to connect to shared device
                              ==================== SMB Message 0 ====================
                              SMB Header:
                              -----------
                              Command: 0x03 (SMB2_COM_TREE_CONNECT) 
                              Status: 0x00000000 
                              Flags: 0x00 
                              PID: 1563 
                              MID: 9 
                              TID: 0 
                              Data: 78 bytes 
                              b'09000000480046005c005c005200410053005000420045005200520059005000490034005c00450062006e00650072002d0045006c0065006b00740072006f0074006500630068006e0069006b00' 
                              SMB Data Packet (hex):
                              ----------------------
                              b'fe534d42400000000000000003000000000000000000000009000000000000001b06000000000000979d8799000000000000000000000000000000000000000009000000480046005c005c005200410053005000420045005200520059005000490034005c00450062006e00650072002d0045006c0065006b00740072006f0074006500630068006e0069006b00'
                              ==================== SMB Message 1 ====================
                              SMB Header:
                              -----------
                              Command: 0x03 (SMB2_COM_TREE_CONNECT) 
                              Status: 0xC0000022 
                              Flags: 0x01 
                              PID: 1563 
                              MID: 9 
                              TID: 0 
                              Data: 9 bytes 
                              b'090000000000000000' 
                              SMB Data Packet (hex):
                              ----------------------
                              b'fe534d4240000000220000c003000100010000000000000009000000000000001b06000000000000979d87990000000000000000000000000000000000000000090000000000000000'
                              
                              []
                              

                              this is a shared folder on my Pi Ebner-Elektrotechnik

                              1 Reply Last reply Reply Quote 0
                              • DavinE
                                DavinE @cvp last edited by

                                @cvp said:

                                Obviously, the smb module in Pythonista is old and is not identical as on your Radpberry.

                                it looks so but it sucks.... :(

                                cvp 1 Reply Last reply Reply Quote 0
                                • cvp
                                  cvp @DavinE last edited by

                                  @DavinE smb is not a standard module of Pythonista, in site-packages, thus you could try to install there the same as on your Raspberry.

                                  1 Reply Last reply Reply Quote 0
                                  • DavinE
                                    DavinE last edited by

                                    @cvp
                                    smb is in the module of pysmb or ?
                                    on my iPad an my Pi the version is the same.... 1.2.6
                                    and i installed both with pip install pysmb

                                    cvp 1 Reply Last reply Reply Quote 0
                                    • cvp
                                      cvp @DavinE last edited by

                                      @DavinE said:

                                      smb is in the module of pysmb

                                      Yes

                                      DavinE 1 Reply Last reply Reply Quote 0
                                      • cvp
                                        cvp last edited by

                                        I have the same problem on another WD NAS....

                                        DavinE 1 Reply Last reply Reply Quote 0
                                        • DavinE
                                          DavinE @cvp last edited by

                                          @cvp said:

                                          @DavinE said:

                                          smb is in the module of pysmb

                                          Yes

                                          okay... then i have no idea what and how i solve my what ever ^^....

                                          1 Reply Last reply Reply Quote 0
                                          • DavinE
                                            DavinE @cvp last edited by

                                            @cvp said:

                                            I have the same problem on another WD NAS....

                                            oh okay for test now ?

                                            cvp 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Powered by NodeBB Forums | Contributors