DragonFlyBSD / DPorts

The dedicated application build system for DragonFly BSD
Other
89 stars 46 forks source link

samba412 broken in 2021Q4 binary packages #222

Closed timdarbydotnet closed 2 years ago

timdarbydotnet commented 2 years ago

The update to samba412-4.12.15_2 completely broke my samba server. I'm trying to troubleshoot it but no success so far and not seeing anything like this in google search. This is the first time I've used pkg upgrade -fy to upgrade packages, fyi. Normally, I run pkg upgrade, if that matters. Is there a way to roll back?

❯ smbclient -L boojum.timdarby.net -W team Enter TEAM\tim's password: session setup failed: NT_STATUS_UNEXPECTED_IO_ERROR

❯ smbclient //boojum.timdarby.net/m -W team Enter TEAM\tim's password: tree connect failed: NT_STATUS_NO_MEMORY

tuxillo commented 2 years ago

With regards to using pkg upgrade -fy, what it does basically is to reinstall everything again. Since we've switched from LibreSSL to OpenSSL, that was a must.

Which Samba version were you using before? What's that server you're trying to access, Windows, Linux, DragonFly?

timdarbydotnet commented 2 years ago

It was either 4.12.15 or 4.12.15_1. Pretty sure it was 4.12.15_1 since I try to stay current on pkg updates. The client machine is a RPi4 running Ubuntu Server. I get the same errors if I run those smbclient commands locally on the DragonFly machine.

tuxillo commented 2 years ago

So if the client is Ubuntu, I should assume the server is DragonFly? Is there any debugging you can enable in Samba? I'm not very familiar with it. If you can't find it, I guess I can do some sort of test setup and try to reproduce it.

timdarbydotnet commented 2 years ago

Yes, the server is Dragonfly 6.1. I've enabled debugging but the messages are not helpful, although I think I see where it's failing. I'm going to try making a clean install somewhere and see what happens. Can this be rolled back? I'd rather just get it working and see if I can and figure this out later.

tuxillo commented 2 years ago

I don't know at this point, since the base version (4.12.15) is the same since July.

timdarbydotnet commented 2 years ago

Right, the base version is what I want to roll back to.

tuxillo commented 2 years ago

No, what I mean is that the version has not changed for months. It's been 4.12.15 since July and it is now, too

timdarbydotnet commented 2 years ago

4.12.15_2 is the same as 4.12.15?

tuxillo commented 2 years ago

Yes, they are based on the same samba version. In any case, let me know if you find out something and, if not, give me enough information so that I can reproduce the issue myself.

timdarbydotnet commented 2 years ago

I'm going to switch to email because my reply may be too long for here, but the summary of what I've found so far is that samba appears to be corrupting its own tdb files (stored in /var/db/samba4). The samba package pulls in a large number of dependencies and I'm wondering if one of them is causing the problem? I'll try to do that clean install today also.

timdarbydotnet commented 2 years ago

I tried a new install of DF 6.0.1 and the samba package appears to be working. I'm going to try a snapshot of latest now.

timdarbydotnet commented 2 years ago

Ok, it fails on DF latest :(

tuxillo commented 2 years ago

I've read your email, I'll see if I can find out what's the issue.

tuxillo commented 2 years ago

dillon fixed it in https://github.com/DragonFlyBSD/DragonFlyBSD/commit/b256c8e35e8710a5a4544d000b29b46518765bc8.

There's a warning in the commit message:

* Should fix samba, however any tdb databases that were created are
  probably corrupt so you may need to rm -rf /var/db/samba4, restart
  samba, and re-create your smb passwords.

Just upgrade to latest master and it should be fixed, thanks for taking the time!

timdarbydotnet commented 2 years ago

Thanks to both you and Dillon!