Dean Gibson (Mail Administrator)
2006-Aug-13 01:36 UTC
[Dovecot] dovecot tring to load sql modules
Dovecot is issuing: Aug 12 17:09:27 athlon1 dovecot: Dovecot v1.0.rc6 starting up Aug 12 17:09:27 athlon1 dovecot: Generating Diffie-Hellman parameters for the first time. This may take a while.. Aug 12 17:09:28 athlon1 dovecot: Auth process died too early - shutting down Aug 12 17:09:28 athlon1 dovecot: auth(default): dovecot-auth: error while loading shared libraries: libmysqlclient.so.10: cannot open shared object file: No such file or directory Aug 12 17:09:28 athlon1 dovecot: child 28705 (auth) returned error 127 That's because I installed the RPM from atrpms.net using "--nodeps". The RPM requires the above SQL library module, among others (inc. postgresql and sqlite). However: 1. Why do I need ANY SQL library??? I want PAM to do the authorization. 2. If I have to use SQL, I want Dovecot to use PostgreSQL (which I have installed and am using in another application). I hope the above is a dumb question, because that means the fix is easy. No, I'd rather not build my own; that's why I picked an RPM. Running Fedora Core 1. -- Dean
Dean Gibson (Mail Administrator)
2006-Aug-13 01:38 UTC
[Dovecot] dovecot tring to load sql modules
Oops, here's my dovecot.conf: protocol imap { # imap_client_workarounds = tb-extra-mailbox-sep } protocol pop3 { # pop3_uidl_format = %08Xu%08Xv } auth default { mechanisms = plain passdb pam { } userdb passwd { } user = root }
Dean Gibson (Mail Administrator) wrote:> Aug 12 17:09:28 athlon1 dovecot: auth(default): dovecot-auth: error > while loading shared libraries: libmysqlclient.so.10: cannot open shared > object file: No such file or directory > Aug 12 17:09:28 athlon1 dovecot: child 28705 (auth) returned error 127 > > That's because I installed the RPM from atrpms.net using "--nodeps". > The RPM requires the above SQL library module, among others (inc. > postgresql and sqlite). However: > > 1. Why do I need ANY SQL library??? I want PAM to do the authorization.Because the atrpm's version is apparently compiled with MySQL support. Rebuild without it or install the MySQL client libraries (alternatively, you might want to try *cough* another distribution *cough* :) ).> I hope the above is a dumb question, because that means the fix is > easy. No, I'd rather not build my own; that's why I picked an RPM.Find a RPM that is compiled without MySQL support. Cheers, -jkt -- cd /local/pub && more beer > /dev/mouth -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: <http://dovecot.org/pipermail/dovecot/attachments/20060813/a23f85c5/attachment.bin>
On Sat, Aug 12, 2006 at 06:36:38PM -0700, Dean Gibson (Mail Administrator) wrote:> Dovecot is issuing: > > Aug 12 17:09:27 athlon1 dovecot: Dovecot v1.0.rc6 starting up > Aug 12 17:09:27 athlon1 dovecot: Generating Diffie-Hellman parameters > for the first time. This may take a while.. > Aug 12 17:09:28 athlon1 dovecot: Auth process died too early - shutting down > Aug 12 17:09:28 athlon1 dovecot: auth(default): dovecot-auth: error > while loading shared libraries: libmysqlclient.so.10: cannot open shared > object file: No such file or directory > Aug 12 17:09:28 athlon1 dovecot: child 28705 (auth) returned error 127 > > That's because I installed the RPM from atrpms.net using "--nodeps".Never, ever, really never rape rpm/dpkg/etc by cutting off dependencies. These dependencies are there for a reason, for example because the binary was built against mysql libs. You can't just cut them off (unless they were dlopened like some plugins do)> The RPM requires the above SQL library module, among others (inc. > postgresql and sqlite). However: > > 1. Why do I need ANY SQL library??? I want PAM to do the authorization.That's what you want, what about your colleague next door? What about the LDAP admin next building? What about me doing sasl? We all have different ways of using dovecot or any other larger software piece. You don't have to use mysql. But if the package has been built with mysql support you need to at least leave the libs on the system ...> 2. If I have to use SQL, I want Dovecot to use PostgreSQL (which I have > installed and am using in another application).It's just a matter of configuration. Killing the libs is not an option. Leave all required libs in and just use what you want to use.> I hope the above is a dumb question, because that means the fix is > easy. No, I'd rather not build my own; that's why I picked an RPM.The fix is to _never_ use --nodeps in rpm and other package managers, and to simply add the mysql libs and ignore their presence. Unless you are setting up an embedded system and are running out of space there is no reason not to allow mysql libs to install.> Running Fedora Core 1. > > -- Dean >-- Axel.Thimm at ATrpms.net -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available URL: <http://dovecot.org/pipermail/dovecot/attachments/20060813/9a62e0e0/attachment.bin>
Hello Dean, Dean Gibson (Mail Administrator), 13.08.2006 (d.m.y):> Dovecot is issuing: > > Aug 12 17:09:27 athlon1 dovecot: Dovecot v1.0.rc6 starting up > Aug 12 17:09:27 athlon1 dovecot: Generating Diffie-Hellman parameters > for the first time. This may take a while.. > Aug 12 17:09:28 athlon1 dovecot: Auth process died too early - shutting down > Aug 12 17:09:28 athlon1 dovecot: auth(default): dovecot-auth: error > while loading shared libraries: libmysqlclient.so.10: cannot open shared > object file: No such file or directory > Aug 12 17:09:28 athlon1 dovecot: child 28705 (auth) returned error 127 > > That's because I installed the RPM from atrpms.net using "--nodeps".Hm.> The RPM requires the above SQL library module, among others (inc. > postgresql and sqlite). However:So why don't you install these dependencies?> 1. Why do I need ANY SQL library??? I want PAM to do the authorization.Because your dovecot has been built with mysql support and so has been linked against the corresponding libraries. Regards, Christian Schmidt -- Der Versuch, den Himmel auf Erden zu produziern, produzierte stets die H?lle. -- Karl Popper
On Sun, Aug 13, 2006 at 10:15:43AM -0700, Dean Gibson (Mail Administrator) wrote:> On 2006-08-13 02:50, Axel Thimm wrote: > >The fix is to _never_ use --nodeps in rpm and other package managers, and > >to simply add the mysql libs and ignore their presence. > > > >Unless you are setting up an embedded system and are running out of space > >there is no reason not to allow mysql libs to install. > > OT gripe: > > Well, if that's what I have to do, that's what I'll do. It's > getting to the state where, when you install Linux, you just have to > install everything, or administration becomes a treasure hunt. > Otherwise, every time you want to install a package, you have to go > on a treasure hunt. It's also why I search for RPMS rather than > doing a build from source; that's also a treasure hunt for more > files. Do you know that you can't run the printer command-line > configuration tools on Linux unless you have the GUI installed? You > can't set the time zone with the tools provided unless you have some > other giant package installed (I forget which) that I don't need. I > run several Linux servers, and I don't need that GUI crap on each > server. I thought one of the fundamental security concepts was, if > you don't need it, don't install it.Installing support for mysql client libs does not imply you have to run a mysql server (or even access one). That's what security is about when discussing minimal systems in a security context.> I first started with RH Linux 5.2 and it was a joy. However, > starting with about RH Linux 7.0, Linux developers have lost sight > of the original goal, in my opinion, which is to have a small, > easily managed server system. > > I don't have any problem with the dovecot RPM having support for God > knows what, built in. What would be nice is that if I don't reference > it in dovecot.conf, then it doesn't get called.Do you need hyperbole and elliptic functions? Or maybe not even sqrt? Should then glibc allow riping them out? Of course not. And what shoudl any packaging system do when you suddenly do reference mysql support in dovecot.conf? Should it automatically install the missing libs the moment you leave the editor?> End of gripe. I'll go find the required (but unused) packages and > install them, and hope that they don't drag in stall more (unused) crap.If you use --nodeps you'll end up with a broken system. -- Axel.Thimm at ATrpms.net -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available URL: <http://dovecot.org/pipermail/dovecot/attachments/20060813/da6c6637/attachment.bin>
Dean Gibson (Mail Administrator)
2006-Aug-13 21:20 UTC
[Dovecot] dovecot tring to load sql modules
On 2006-08-13 11:11, Axel Thimm wrote:> Installing support for mysql client libs does not imply you have to > run a mysql server (or even access one). That's what security is about > when discussing minimal systems in a security context.Really? And how do you install JUST the client libs? On my Fedora Core 1 CD-ROMS, there are: /Fedora/RPMS/mysql-3.23.58-4.i386.rpm /Fedora/RPMS/mysql-bench-3.23.58-4.i386.rpm /Fedora/RPMS/mysql-devel-3.23.58-4.i386.rpm /Fedora/RPMS/mysql-server-3.23.58-4.i386.rpm The only way to get libmysqlclient.so.10 is to install the base mysql-3.23.58-4.i386.rpm. However, that requires: perl(DBI) is needed by mysql-3.23.58-4 perl-DBD-MySQL is needed by mysql-3.23.58-4 perl-DBI is needed by mysql-3.23.58-4 And who knows WHAT from there. I already have PERL installed, but not the above packages. Oh, and by the way, the dovecot RPM I downloaded also "needs" SQLite; that isn't even on my FC1 CD-ROMS. Who knows what kind of treasure hunt THAT requires.> Do you need hyperbole and elliptic functions? Or maybe not even sqrt? > Should then glibc allow riping them out? Of course not.That's silly. Those are standard C-library routines, not major packages.> And what should any packaging system do when you suddenly do reference mysql support in dovecot.conf? Should it automatically install the missing libs the moment you leave the editor? >The packaging system shouldn't do anything. If I were ever to suddenly reference mysql support in dovecot.conf, I expect to THEN get the error message I got, and then it is then MY responsibility to go install all the MySQL crap I need. Of course, I'd use PostgreSQL instead of MySQL, but that's another story. Fortunately, when I gave up chasing the MySQL RPM dependency trail and downloaded the dovecot source, for some inexplicable reason it built without having to engage in the usual "include file treasure hunt". It took a couple builds (getting pam-dev and OpenSSL-dev, and for some reason e2fsprogs-dev), and a couple configuration fits and starts, but now Dovecot is up and running. So why did I move from UW-IMAP to Dovecot? Because UW-IMAP requires all the clients to specify the mail subdirectory. That works fine for most mail clients, but it doesn't work with the default mail client on Pocket PCs. While that is a deficiency in the Pocket PC mail client, it is also a deficiency in UW-IMAP, where the author refuses to make it a configuration option, claiming that he intended the daemon to be "plug-and-play". This laughable attitude is so typical of many Unix developers, that it's somehow more important for the SERVER to be "plug-and-play" than it is for the CLIENT to be "plug-and-play". No wonder Linux is not replacing Windows among most users. No wonder that RedHat dropped UW-IMAP from its distributions. -- Dean