systemctl enable rpcbind
Test 1: domainname
Configured domainname is "xyz"
Test 2: ypbind
can't yp_bind: Reason: Domain not bound
I'm still getting (none) in /var/yp
If I use yptest -h <host>
Then I go through all 9 tests, 6 tests fail and Warning: Internal NIS error
On test 4, it gives Warning: RPC failure on NIS operation.
angelo@fiscomp:/var/yp$ ls
binding fiscomp Makefile nicknames
angelo@fiscomp:/var/yp$ ls fiscomp/
group.bygid hosts.byname netgroup.byuser passwd.byuid rpc.byname services.byservicename
group.byname netgroup netid.byname protocols.byname rpc.bynumber shadow.byname
hosts.byaddr netgroup.byhost passwd.byname protocols.bynumber services.byname
angelo@fiscomp:/var/yp$ ls binding/
fiscomp.1 fiscomp.2
angelo@fiscomp:/var/yp$ cat nicknames
passwd passwd.byname
group group.byname
networks networks.byaddr
hosts hosts.byname
protocols protocols.bynumber
services services.byname
aliases mail.aliases
ethers ethers.byname
angelo@fiscomp:/var/yp$
Actually the server is debian, only the nodes uses archlinux.
Still, everything works smooth.
I still don't know what is your problem! What is the output of yptest?
Are you sure the services are active? Have you tried: "systemctl list-units"?
See if there are any problems on the initialization with: "journalctl | grep ypbind"
Anyhow, what did your contents of /var/yp look like? Did it have a (none) directory?
]]>This is not possible because of the herementioned errors with ypbind.service.
The next best solution now is to define more ypservers in yp client's yp.conf. This will get entries like 'ypserver xxx.xxx.xxx.xxx' with all possible ypserver's ip addresses in my domain. By using ipv4 addresses I avoid having to rely on working dns resolution and thus changing every client's /etc/hosts file. I only have to deploy this yp.conf to all clients and ypbind works like a charm with systemd.
Of course this is only a workaround, but it is the best that came to my mind.
Hope this helps someone
Harvey
]]>One can use the words "before" and "after", on *.sevice files, to make sure that the service will start on the right order.
But this does check only start but not completion of the started service. In our case dns is started and systemd moves on, not waiting for a valid dns configuration (but it takes a few seconds for dhcpd to put the nameserver in /etc/resolv.conf). The ypbind service gets started and tries to resolve a dns for ypserver from /var/yp.conf. Since the nameserver is not configured properly at this moment it gets no valid answer. Unfortunately ypbind seems not to be smart enough to retry ypserver and hangs. Thats the cause for 'YPBINDPROC_DOMAIN: Domain not bound'.
From the ypbind manpage:
This ypbind version listens for DBUS messages from NetworkManager. If no NetworkManager is running at startup, ypbind will behave as usual and assumes there is a working network connection. If NetworkManager is running on the system, ypbind will only search and provide NIS informations, if NetworkManager tells that a network connection is available. If NetworkManager establishes a connection, ypbind will reread all configuration files, registers at the local portmapper and try to search NIS servers. If NetworkManager drops a connection, ypbind will unregister from portmapper.
I don't use NetworkManager on these systems (because of keeping it simple, as a real archer).
Harvey
]]>Harvey
]]>I suggest you check if this behaviour is still present in netctl, and if necessary post bug reports/patches/etc against it. netctl is currently in the testing repo.
]]>Since ypbind must start after network.target.
Net-auto-wired must depends on the network.target.
This should prevent network.target from starting before it should.
However, I don't remember why this did not work...