Giter VIP home page Giter VIP logo

Comments (8)

idledk avatar idledk commented on July 29, 2024 1

The first issue should only be able to occur if you have some soft of update script that also forces updates of packages that have been put on hold.
The error might be that you have also tried installing netatalk3. netatalk2 and netatalk3 cannot co-exist.

from retronas.

danmons avatar danmons commented on July 29, 2024 1

ProFTPd fix committed. The offending module in ProFTPd was "mod_unique_id.c". It's used for virtual host lookups, and breaks if it can't find a matching hostname to DNS entry in either your network's DNS server or /etc/hosts.

I'm not using virtual hosts in FTP, so I don't need the feature. I told Ansible to remove the item and force bind FTP to 0.0.0.0

Appears to be working now. Please re-test and let me know how you go.

from retronas.

birdybro avatar birdybro commented on July 29, 2024

Proftpd also had a result of failing upon reconfiguration.

image

pi@retronas:/opt/retronas $ sudo systemctl status proftpd.service
sudo: unable to resolve host retronas: Name or service not known
● proftpd.service - ProFTPD FTP Server
     Loaded: loaded (/lib/systemd/system/proftpd.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Tue 2022-02-01 06:03:02 GMT; 47s ago
    Process: 42314 ExecStartPre=/usr/sbin/proftpd --configtest -c $CONFIG_FILE (code=exited, status=1/FAILURE)
        CPU: 31ms

Feb 01 06:03:02 retronas systemd[1]: Starting ProFTPD FTP Server...
Feb 01 06:03:02 retronas proftpd[42314]: Checking syntax of configuration file
Feb 01 06:03:02 retronas proftpd[42314]: 2022-02-01 06:03:02,247 retronas proftpd[42314]: warning: unable to determine IP address of 'retronas'
Feb 01 06:03:02 retronas proftpd[42314]: 2022-02-01 06:03:02,247 retronas proftpd[42314]: error: no valid servers configured
Feb 01 06:03:02 retronas proftpd[42314]: 2022-02-01 06:03:02,247 retronas proftpd[42314]: fatal: error processing configuration file '/etc/proftpd/proftpd.conf'
Feb 01 06:03:02 retronas systemd[1]: proftpd.service: Control process exited, code=exited, status=1/FAILURE
Feb 01 06:03:02 retronas systemd[1]: proftpd.service: Failed with result 'exit-code'.
Feb 01 06:03:02 retronas systemd[1]: Failed to start ProFTPD FTP Server.

proftpd.conf.txt

from retronas.

danmons avatar danmons commented on July 29, 2024

In both cases, did you change the configuration via

Configuration -> Configure RetroNAS top level directory

And then re-run those installers after that?

Also the config gets dropped in a separate file, located in /etc/proftpd/conf.d/retronas.conf

Verify that the directory listed in that config file is the same as your RetroNAS top level directory, and that the permissions on the directory are correct.

from retronas.

danmons avatar danmons commented on July 29, 2024

The first issue should only be able to occur if you have some soft of update script that also forces updates of packages that have been put on hold.

This is very likely the culprit. Netatalk2 is currently a binary package stolen from an earlier version of Debian, and then marked for hold so the current Netatalk3 package in-repo doesn't overwrite it.

I'll check that tomorrow and add an unhold/rehold to solve it being installed over the top of itself. Long term I'm removing this method for a source fork of a new Netatalk2.x build that's just recently gone stable by the author, and will be a better fit for RetroNAS.

The error might be that you have also tried installing netatalk3. netatalk2 and netatalk3 cannot co-exist.
This too, however choosing one will uninstall the other. I think the first point is correct - installing Netatalk2 over itself will probably break at the moment, and that's a RetroNAS bug I think I can fix.

from retronas.

birdybro avatar birdybro commented on July 29, 2024

In both cases, did you change the configuration via

Configuration -> Configure RetroNAS top level directory

And then re-run those installers after that?

Yes.

Also the config gets dropped in a separate file, located in /etc/proftpd/conf.d/retronas.conf

Verify that the directory listed in that config file is the same as your RetroNAS top level directory, and that the permissions on the directory are correct.

It all looks correct to me, user pi, group pi, and all references to the path is /storage. the ServerName is RetroNAS however, which is the "pretty name", but I have my doubts that this matters. It might though.

Thanks! I am prone to breaking things, so figured I'd help beta test it out a bit. :)

from retronas.

danmons avatar danmons commented on July 29, 2024

Very much appreciated!

I'll check in to this later on today. I have a fix in mind for the Netatalk2 stuff, but I'll need to dig into ProFTPd.

[edit]

OK it looks like this is a ProFTPd thing. By default it always wants to resolve the system hostname to an IP address.

By default this is fine as the hostname you set at install time (or by default on an RPi) is in /etc/hosts mapped to a loopback address. However when you change the hostname, this mapping is lost, and ProFTPd doesn't like it.

I'll attempt to look for an override in the ProFTPd config. Failing that, I'll try to find away to ensure the currently set hostname always lands in /etc/hosts with a 127.0.0.0/8 range IP.

This is one of those terrible "changing hostnames on Linux without ensuring your DNS is happy is bad" things, which I wish tools like hostnamectl would take care of.

from retronas.

birdybro avatar birdybro commented on July 29, 2024

Yup, everything seems to be working fine now! Thank you!

from retronas.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.