Samba-Fehler: reply_trans: ungültige Trans-Parameter

Samba-Fehler: reply_trans: ungültige Trans-Parameter

Ich versuche, die Ordnerfreigabe über Samba auf meinem Ubuntu 18.04-Server zu aktivieren.

Was ich bereits getan habe:

  1. Bearbeiten Sie die Datei /etc/samba/smb.conf wie folgt
[global]
workgroup = WORKGROUP
interfaces = lo eth0
server role = standalone server
server string = Samba Server %v
security = user
map to guest = bad user
name resolve order = bcast host
dns proxy = no
bind interfaces only = yes
log file = /var/log/samba/smb.log
max log size = 10000

[Public]
   path = /samba/share
   writable = yes
   guest ok = yes
   guest only = yes
   read only = no
   create mode = 0777
   directory mode = 0777
   force user = nobody
  1. Führen Sie testparm mit diesem Ergebnis aus
Load smb config files from /etc/samba/smb.conf rlimit_max: increasing
rlimit_max (1024) to minimum Windows limit (16384) Processing section
"[Public]" Loaded services file OK. Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters [global]
    bind interfaces only = Yes
    dns proxy = No
    interfaces = lo eth0
    log file = /var/log/samba/smb.log
    map to guest = Bad User
    max log size = 10000
    name resolve order = bcast host
    security = USER
    server role = standalone server
    server string = Samba Server %v
    idmap config * : backend = tdb


[Public]
    create mask = 0777
    directory mask = 0777
    force user = nobody
    guest ok = Yes
    guest only = Yes
    path = /samba/share
    read only = No
  1. Starten Sie smbd.service neu.
  2. Versuch, sich über Windows anzumelden. Windows kann nicht auf \SERVERNAME\ zugreifen...
  3. Siehe Fehlerprotokoll
[2019/06/23 21:05:54.565424,  0]
../lib/util/become_daemon.c:124(daemon_ready)   STATUS=daemon 'smbd'
finished starting up and ready to serve connections [2019/06/23
21:06:34.482176,  0] ../source3/smbd/ipc.c:843(reply_trans)  
reply_trans: invalid trans parameters

Ich bin seit ungefähr 5 Tagen dabei. Hat jemand eine Ahnung, was los ist? Wie kann ich das beheben? Ich brauche nur eine öffentliche Freigabe und eine weitere für eingeschränkten Zugriff.

Antwort1

Nur Bind-Schnittstellen = Ja

Schnittstellen = lo eth0

Sie sagen Samba, dass es nur bestimmte Schnittstellen verwenden soll, aber die von Ihnen angegebene ( eth0 ) existiert in Ubuntu 18.04 nicht. Es ist eine andere Form.

Sofern Sie keinen Grund haben, etwas anzugeben, und Samba dies lieber selbst herausfinden lassen möchten, würde ich diese beiden Zeilen aus smb.conf entfernen und smbd neu starten:

sudo service smbd restart

Wenn Sie eine bestimmte Schnittstelle angeben möchten, verwenden Sie diesen Befehl, um ihren tatsächlichen Namen zu ermitteln:

nmcli device show | grep DEVICE

Antwort2

Windows verwendet jetzt WSD (Web Services Discovery?), das in den verschiedenen Sambas, die ab Ubuntu 19.04 verfügbar sind, nicht enthalten ist.

Auf github gibt es ein Projekt, das WSD implementiert und in Python geschrieben ist. Es ist zu finden unterhttps://github.com/christgau/wsddoder direkt heruntergeladen unterhttps://raw.githubusercontent.com/christgau/wsdd/master/src/wsdd.py

Der Trick dabei besteht unter anderem darin, dass Sie einige Ports in Ihrer Firewall aktivieren müssen:

Die Ports 5357/TCP und 3702/UDP müssen geöffnet sein, damit wsdd ausgeführt werden kann.

wsdd kann über die Befehlszeile ausgeführt werden, oder Sie können einen systemd-Dienst erstellen, um es auszuführen.

Dies ist ein (vielleicht) aktiver Bereich der Samba-Entwicklung, und einige Informationen dazu finden Sie unterhttps://www.ixsystems.com/community/resources/how-to-kill-off-smb1-netbios-wins-and-still-have-windows-network-neighbourhood-better-than-ever.106/und ist derzeit im Arch-Benutzer-Repository und anscheinend auch in einigen anderen Distributionen verfügbar. Es wird auch in AskUbuntu erwähnt unterSamba-Freigabe im Windows-Netzwerk sichtbar machen

Als Service starten

Ich habe eine systemd Service Unit Datei für wsdd erstellt als /lib/systemd/system/wsdd.service Der Inhalt ist

[Unit]
Description=WSDD Network Service
BindsTo=smbd.service
After=smbd.service

[Service]
Type=simple
RemainAfterExit=yes
ExecStart=/usr/bin/wsdd
#ExecReload=/user/bin/wsdd

[Install]
WantedBy=multi-user.target

Dann bin ich wsdd.pyzu gewechselt /usr/bin/wsddund habe die Berechtigungen auf 555 (Lesen und Ausführen) geändert.

Schließlich sudo systemctl enable wsdd.serviceein Neustart – und mein Ubuntu-System ist jetzt für meine Win10-Computer sichtbar.

verwandte Informationen