Re: Shared object "libsodium.so.13" not found, required by "dnscrypt-proxy"

From: Miguel Clara <miguelmclara_at_gmail.com>
Date: Wed, 25 Feb 2015 01:58:35 +0000
On Wed, Feb 25, 2015 at 12:26 AM, Miguel Clara <miguelmclara_at_gmail.com>
wrote:

>
> On Tue, Feb 24, 2015 at 11:11 PM, Kevin Oberman <rkoberman_at_gmail.com>
> wrote:
>
>> On Tue, Feb 24, 2015 at 10:53 AM, Miguel Clara <miguelmclara_at_gmail.com>
>> wrote:
>>
>>> On Tue, Feb 24, 2015 at 6:13 PM, Garrett Cooper <yaneurabeya_at_gmail.com>
>>> wrote:
>>>
>>> > On Feb 24, 2015, at 6:35, Miguel Clara <miguelmclara_at_gmail.com> wrote:
>>> >
>>> > > ]# rcorder /etc/rc.d/* /usr/local/etc/rc.d/* >/dev/null
>>> > > rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
>>> > `kerberos'
>>> > > rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
>>> > `named'
>>> > > rcorder: file `/usr/local/etc/rc.d/dnscrypt-proxy' is before unknown
>>> > provision `unbound'
>>> > > rcorder: Circular dependency on file `/usr/local/etc/rc.d/webcamd'.
>>> > > rcorder: Circular dependency on provision `dbus' in file
>>> > `/usr/local/etc/rc.d/webcamd'.
>>> > > rcorder: Circular dependency on provision `ldconfig' in file
>>> > `/usr/local/etc/rc.d/dnscrypt-proxy'.
>>> > > rcorder: Circular dependency on provision `mountcritremote' in file
>>> > `/etc/rc.d/devfs'.
>>> > > rcorder: Circular dependency on provision `mountcritremote' in file
>>> > `/etc/rc.d/mdconfig2'.
>>> > > rcorder: Circular dependency on provision `mountcritremote' in file
>>> > `/etc/rc.d/newsyslog'.
>>> > > rcorder: Circular dependency on provision `mountcritremote' in file
>>> > `/etc/rc.d/syslogd'.
>>> > > rcorder: Circular dependency on provision `NETWORKING' in file
>>> > `/etc/rc.d/kdc'.
>>> > > rcorder: Circular dependency on provision `ldconfig' in file
>>> > `/etc/rc.d/SERVERS'.
>>> > > rcorder: Circular dependency on provision `mountcritremote' in file
>>> > `/etc/rc.d/archdep'.
>>> > > rcorder: Circular dependency on provision `mountcritremote' in file
>>> > `/etc/rc.d/SERVERS'.
>>> > > rcorder: requirement `tpmd' in file `/usr/local/etc/rc.d/tcsd' has no
>>> > providers.
>>> > > rcorder: Circular dependency on file `/usr/local/etc/rc.d/uuidd'.
>>> > > rcorder: requirement `usbd' in file `/usr/local/etc/rc.d/hald' has no
>>> > providers.
>>> > >
>>> > > # rcorder /etc/rc.d/* /usr/local/etc/rc.d/* | awk
>>> > ‘/SERVERS|cleanvar|ldconfig|dbus/ { print NR, $0 }’
>>> > > rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
>>> > `kerberos'
>>> > > rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
>>> > `named'
>>> > > rcorder: file `/usr/local/etc/rc.d/dnscrypt-proxy' is before unknown
>>> > provision `unbound'
>>> > > rcorder: Circular dependency on file `/usr/local/etc/rc.d/webcamd'.
>>> > > rcorder: Circular dependency on provision `dbus' in file
>>> > `/usr/local/etc/rc.d/webcamd'.
>>> > > rcorder: Circular dependency on provision `ldconfig' in file
>>> > `/usr/local/etc/rc.d/dnscrypt-proxy'.
>>> > > rcorder: Circular dependency on provision `mountcritremote' in file
>>> > `/etc/rc.d/devfs'.
>>> > > rcorder: Circular dependency on provision `mountcritremote' in file
>>> > `/etc/rc.d/mdconfig2'.
>>> > > rcorder: Circular dependency on provision `mountcritremote' in file
>>> > `/etc/rc.d/newsyslog'.
>>> > > rcorder: Circular dependency on provision `mountcritremote' in file
>>> > `/etc/rc.d/syslogd'.
>>> > > rcorder: Circular dependency on provision `NETWORKING' in file
>>> > `/etc/rc.d/kdc'.
>>> > > rcorder: Circular dependency on provision `ldconfig' in file
>>> > `/etc/rc.d/SERVERS'.
>>> > > rcorder: Circular dependency on provision `mountcritremote' in file
>>> > `/etc/rc.d/archdep'.
>>> > > rcorder: Circular dependency on provision `mountcritremote' in file
>>> > `/etc/rc.d/SERVERS'.
>>> > > rcorder: requirement `tpmd' in file `/usr/local/etc/rc.d/tcsd' has no
>>> > providers.
>>> > > rcorder: Circular dependency on file `/usr/local/etc/rc.d/uuidd'.
>>> > > rcorder: requirement `usbd' in file `/usr/local/etc/rc.d/hald' has no
>>> > providers.
>>> > > cleanvar: Command not found.
>>> > > dbus/: Command not found.
>>> > >
>>> > > Note that this is still with the change to dnscrypt-ptoxy REQUIRE
>>> > (adding ldconfig)
>>> >
>>> > Your rcorder is 50 shades of broken :(. Please remove all local
>>> > modifications to scripts, then repost the output of the rcorder
>>> commands
>>> > again. I suspect what’s going wrong is the result of some of my
>>> changes to
>>> > remove etc/rc.d based on build knobs…
>>> > Cheers,
>>> >
>>>
>>> So much like the movies them... damn.... :X
>>>
>>> I don't recall any changes to the rc.d scripts except the one to
>>> dnscrypt-proxy (adding the ldconfig REQUIRE)
>>>
>>> I also don't really know what to make of the output... expect this part:
>>>
>>> "Circular dependency on provision", but the man says:
>>> A set of files has a circular dependency which was detected while
>>> processing the stated condition.
>>>
>>> So it should mean that 'A' requires 'B' but 'B' requires 'A'... but this
>>> does not seem to be the case...
>>>
>>> I guess I'll have to go one by one and see if I can identify issue. But
>>> first I'll make sure the ports that use those rc.d scripts are up to
>>> date.
>>>
>>
>> Just to save a bit of time, many RC scripts are messed up at install
>> time.
>>
>> One of the worst I have is for security/trousers-tddl. It is a mess. It
>> wants kerberos and named, but most FreeBSD systems no longer run named or
>> kerberos. As far as I can tell, no FreeBSD port provides a tpmd, so I have
>> no idea where the heck that comes from.
>>
>> hald wants usbd which has been obsolete for some years. Certainly no
>> providers any longer. I don't think that any supported version of FreeBSD
>> still has usbd, so any port requiring it should be fixed.
>>
>> Also, webcamd and dbus have a circular dependency. It really needs to be
>> fixed some time, but does not break anything.
>>
>> I suspect that whatever is causing the multiple circular dependencies on
>> mountcritremote might be tied to the issue. I don't see the obvious problem
>> here and I don't have it. Circular dependencies are a real pain to track
>> down as they are often not direct. A required E and G and B requires A. But
>> the rcorder only knows that. It does not report that E does require B and
>> just reports that A is a circular dependency. (I hope that makes some
>> sense.)
>>
>> Normally mountcritremote should be very soon after NETWORKING...usually
>> after NETWORKING and netwait. This means it should run right after the
>> network starts and before anything that depends on the network.
>> rcorder /etc/rc.d/* /usr/local/etc/rc.d/* | less should show this with
>> ldconfig right after mountcritremote. There is no reason that devfs,
>> syslogd or any of the others listed should precede mountcritremote! The
>> errors indicate that SOMETHING before NETWORKING and netwait is causing all
>> of these other things to run and, BOOM, your script is firing off before
>> ldconfig is run.
>>
>> Good luck! It will likely be tedious, but looking at the output of
>> rcorder should point the finger in at least the right direction. Hete is an
>> exerpt from mine in the area where these things belong:
>> /etc/rc.d/NETWORKING
>> /etc/rc.d/netwait
>> /etc/rc.d/mountcritremote
>> /etc/rc.d/ldconfig
>> /etc/rc.d/accounting
>> /etc/rc.d/newsyslog
>> /etc/rc.d/syslogd
>> /etc/rc.d/ntpdate
>> /etc/rc.d/rpcbind
>> /etc/rc.d/nfsclient
>> /etc/rc.d/devfs
>> /etc/rc.d/ipmon
>> /etc/rc.d/mdconfig2
>> /etc/rc.d/kdc
>>
>
> Kevin... many thanks, for this I was really thinking the same... "I just
> installed the ports and the system was upgrade properly WTH did I do wrong".
>
> I've reinstalled the the ports of the affected scripts to be sure I'm
> running the most updated version, I still see the issues so now I'lll have
> to go one by one and see if I can fix them, or maybe start by moving them
> elsewhere and run rcorder until its happy and then move back one by one and
> rcorder should start complaining...
>
> But just so I try to understand this better.... dbus and webcamd have a
> circular dependency... is this beacause:
> webcamd requires "FILESYSTEMS netif dbus"
> dbus requires "DAEMON ldconfig"
>
> And then ldconfig also requires FILESYSTEMS?
>
>
>
Acctaully dnscrypt-proxy is running just after SERVERS and this requires
ldconfig but does not run it before... Example:

etc/rc.d/netif
/etc/rc.d/devd
/etc/rc.d/ipsec
rcorder: Circular dependency on provision `mountcritremote' in file
`/etc/rc.d/devfs'.
/etc/rc.d/devfs
/etc/rc.d/ipmon
rcorder: Circular dependency on provision `mountcritremote' in file
`/etc/rc.d/mdconfig2'.
/etc/rc.d/mdconfig2
rcorder: Circular dependency on provision `mountcritremote' in file
`/etc/rc.d/newsyslog'.
/etc/rc.d/newsyslog
rcorder: Circular dependency on provision `mountcritremote' in file
`/etc/rc.d/syslogd'.
/etc/rc.d/syslogd
rcorder: Circular dependency on provision `NETWORKING' in file
`/etc/rc.d/kdc'.
/etc/rc.d/kdc
/etc/rc.d/watchdogd
/etc/rc.d/savecore
rcorder: Circular dependency on provision `ldconfig' in file
`/etc/rc.d/SERVERS'.
rcorder: Circular dependency on provision `mountcritremote' in file
`/etc/rc.d/archdep'.
/etc/rc.d/archdep
/etc/rc.d/abi
rcorder: Circular dependency on provision `mountcritremote' in file
`/etc/rc.d/SERVERS'.
/etc/rc.d/SERVERS
/usr/local/etc/rc.d/dnscrypt-proxy
/etc/rc.d/resolv
/etc/rc.d/local_unbound
/etc/rc.d/atm2
/etc/rc.d/pfsync
/etc/rc.d/pflog
/etc/rc.d/pf
/etc/rc.d/stf
/etc/rc.d/ppp
/etc/rc.d/routing
/etc/rc.d/mroute6d
/etc/rc.d/nsswitch
/etc/rc.d/rtsold
/etc/rc.d/static_ndp
/etc/rc.d/static_arp
/etc/rc.d/bridge
/etc/rc.d/route6d
/etc/rc.d/routed
/etc/rc.d/defaultroute
/etc/rc.d/ipfw
/etc/rc.d/NETWORKING


If I just leave SERVERS out of dnscrypt-proxy the order seems ok (not sure
if perfect).
SERVERS now runs after NETWORKING, and still runs because DEAMON requires
SERVERS and a bunch of the rc.d's require DEAMON ofc...

Now its more like this (just shoing some to proof dnscrypt-proxy is better
placed now:
% rcorder /etc/rc.d/* /usr/local/etc/rc.d/* | egrep
"SERVERS|ldconfig|dnscrypt|DAEMON|NETWORKING|FILESYSTEMS|sshd"
rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
`kerberos'
rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision `named'
rcorder: Circular dependency on file `/usr/local/etc/rc.d/webcamd'.
rcorder: Circular dependency on provision `dbus' in file
`/usr/local/etc/rc.d/webcamd'.
rcorder: Circular dependency on file `/usr/local/etc/rc.d/uuidd'.
rcorder: requirement `usbd' in file `/usr/local/etc/rc.d/hald' has no
providers.
/etc/rc.d/FILESYSTEMS
/etc/rc.d/NETWORKING
/etc/rc.d/ldconfig
/etc/rc.d/SERVERS
/etc/rc.d/DAEMON
/etc/rc.d/sshd
/usr/local/etc/rc.d/dnscrypt-proxy


So basically if SERVERS is required by dnscrypt-proxy ldconfig (and others)
complain about "Circular dependency" issues and don't run, I have no idea
why, but could somebody try to replicate the issue in freebsd current (by
installing dnscrypt-proxy I mean)?

thanks


>
>> --
>> Kevin Oberman, Network Engineer, Retired
>> E-mail: rkoberman_at_gmail.com
>>
>
>
Received on Wed Feb 25 2015 - 00:58:56 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:55 UTC