[Kolab-devel] kolab 3.0 on wheezy x86_64 report !

Franz Skale i.bin at dah.am
Sat Oct 27 18:17:04 CEST 2012


Hello,
i was redirected from paul to post my expierience to the kolab-devel list.
First of all, i setup a new server and configured it only with the
development repository.

1.) There's a bug in the cyrus-imap package.
pts and ldap is not enabled in the package, so cyrus-imapd never will work.
I did a rebuild of cyrus-imapd adding --with-ldap=/usr \ and
--with-auth=pts \ (before i did a apt-get build-dep cyrus-imapd)
Also i patched the cyurs-imapd.install to add ptloader, ptexpire and ptdump.
Also there's a problem with /usr/lib/cyrus-imapd/bin in the rules file.
Default, cyrus configures alle executables to the
/usr/lib/cyrus-imapd/bin dir.
So i did a symlink to /bin/ to get cyrus working properly.
The next bug is in the init-script. There's a reference on kolab-cyrus
which actually don't exist.
The cyrus-imapd init script has a bug when calling start-stop-daemon.
Also the fix_directories function has some typos. export a var without a
vale export var=$value.
So i did a workaround patch to even be able to start cyrus-imapd.
After that, cyrus.imapd starts

2.) kolab-saslauthd bug
It only works when starting in the forgroud.
when issuing kolab list-mailboxes it terminates, when using the
forground mehtod.


Error when in background:
12-10-27 17:23:37,175 pykolab.conf WARNING Option kolab/auth_mechanism
does not exist in config file /etc/kolab/kolab.conf, pulling from defaults
2012-10-27 17:23:37,176 pykolab.conf WARNING Option does not exist in
defaults.
2012-10-27 17:23:37,176 pykolab.auth DEBUG [13267]: Attempting to use
LDAP URI None
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/saslauthd/__init__.py", line
114, in run
    self.do_saslauthd()
  File "/usr/lib/python2.7/dist-packages/saslauthd/__init__.py", line
195, in do_saslauthd
    auth.connect()
  File "/usr/lib/python2.7/dist-packages/pykolab/auth/__init__.py", line
161, in connect
    self._auth.connect()
  File "/usr/lib/python2.7/dist-packages/pykolab/auth/ldap/__init__.py",
line 222, in connect
    self.ldap = ldap.initialize(uri, trace_level=trace_level)
  File "/usr/lib/python2.7/dist-packages/ldap/functions.py", line 91, in
initialize
    return LDAPObject(uri,trace_level,trace_file,trace_stack_limit)
  File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 70,
in __init__
    self._l =
ldap.functions._ldap_function_call(ldap._ldap_module_lock,_ldap.initialize,uri)
  File "/usr/lib/python2.7/dist-packages/ldap/functions.py", line 63, in
_ldap_function_call
    result = func(*args,**kwargs)
TypeError: must be string, not None

foreground:
2012-10-27 17:24:13,422 pykolab.auth DEBUG [13274]: Attempting to use
LDAP URI ldap://localhost:389
*** <ldap.ldapobject.SimpleLDAPObject instance at 0x1027cf8>
ldap://localhost:389 - SimpleLDAPObject.set_option
((17, 3), {})
*** <ldap.ldapobject.SimpleLDAPObject instance at 0x1027cf8>
ldap://localhost:389 - SimpleLDAPObject.set_option
((17, 3), {})
2012-10-27 17:24:13,423 pykolab.conf WARNING Option imap/virtual_domains
does not exist in config file /etc/kolab/kolab.conf, pulling from defaults


So i think, there's a general problem with augeas or what is used to
parse the config.

Pykolab log is full of errrors.

Like:
2012-10-27 17:24:34,606 pykolab.conf WARNING Option does not exist in
defaults.
2012-10-27 17:24:34,607 pykolab.conf WARNING Option kolab/auth_mechanism
does not exist in config file /etc/kolab/kolab.conf, pulling from defaults
2012-10-27 17:24:34,607 pykolab.conf WARNING Option does not exist in
defaults.



3.) When creating a kolab user, no mailbox is created. There's no
interaction in cyrus when a user was created.
kolab create-mailbox [username] works. (cyradm also works)
Also i read about policies which should be pretty good.
Is this a bug or not implemented yet ?

4.) wallace missing a directory when filtering (simply not created on
the post section of the package installation) (debugged it via strace)
fix in my testsetup:
mkdir -p /var/spool/pykolab/wallace && chown -R kolab /var/spool/pykolab
then did a restart of wallace.
postfix tries do delivers but nothing is delivered ( no mailbox ;-) )
Also, only working when running in the foreground. (screen session)
Permission problem prevents wallace from accessing the lmtp socket.
So adding postfix to group mail fixed the problem.


5.) kolab-server
also working only when running not in the --fork mode.
Otherwise, it will not detect any config sections.
Problem in the output:
2012-10-27 18:13:42,305 pykolab.conf WARNING Option imap/virtual_domains
does not exist in config file /etc/kolab/kolab.conf, pulling from defaults


Other things i found out:
Also, them [imap] section seems to be missing in the kolab.conf which
kolab-saslauthd is being complaining about.

So, right now no mailbox is created and no mail could be delivered.

Rgds.

Franz

P.s:

cyrus-imapd (quick patch)

--- cyrus-imapd    2012-09-11 22:38:27.000000000 +0200
+++ /etc/init.d/cyrus-imapd    2012-10-27 14:01:19.356945871 +0200
@@ -61,24 +61,6 @@
 
 export CONFIGDIRECTORY=$(get_config configdirectory /var/lib/imap)
 
-fix_directories() {
-    # Debian/Ubuntu are supposed to have this
-    [ -x $(which dpkg-statoverride 2>/dev/null) ] && prg="$(which
dpkg-statoverride)"
-    # A dummy filler
-    [ -x $(which true) ] && prg="$(which true)"
-    # Export for subshells
-    export $prg
-    # Iterate over the directories listed in /etc/imapd.conf
-    for dir in \
-            $(get_config configdirectory /var/lib/imap) \
-            $(get_config partition /var/spool/imap) \
-        ; do
-        if [ $($prg $dir; return $?) -ne 0 ]; then
-            cyrus_failure "Permissions not exempted on $dir. Use $prg
to correct the problem."
-        fi
-    done
-    unset prg
-}
 
 cyrus_success() {
     if [ $(success >/dev/null 2>&1; echo $?) -ne 0 ]; then
@@ -289,14 +271,13 @@
 
 case "$1" in
     start)
-        verify_cyrus_15_upgrade
+        #verify_cyrus_15_upgrade
         echo -n "Starting ${DESC}: "
         if check_status ; then
             echo "${DAEMON} already running."
             exit 0
         fi
-        fix_directories
-        if start-stop-daemon ${START} >/dev/null 2>&1 ; then
+        if start-stop-daemon --start -b --quiet --pidfile
/var/run/cyrus-master.pid --exec /usr/lib/cyrus-imapd/cyrus-master  --
-M /etc/cyrus.conf  -C /etc/imapd.conf  -l 32 >/dev/null 2>&1 ; then
             echo "$NAME."
         else
             if ! check_status ; then
@@ -308,25 +289,9 @@
 
     stop)
         echo -n "Stopping $DESC: "
-        if start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \
-            --name ${NAME} --quiet --startas $DAEMON >/dev/null 2>&1 ; then
-            echo "$NAME."
-            rm -f ${PIDFILE}
-            exit 0
-    else
-            # process running?
-            if check_status; then
-                # Yes, report failure.
-                echo "(failed)."
-                exit 1
-            else
-                # No, return as if stopped a running process
-                # successfully.
-                echo "."
+    start-stop-daemon --stop quiet  --pidfile
/var/run/cyrus-master.pid  --startas /usr/lib/cyrus-imapd/cyrus-master
                 rm -f ${PIDFILE}
                 exit 0
-            fi
-        fi
     ;;
     reload|force-reload)
         echo "Reloading $DESC configuration files."



-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4495 bytes
Desc: S/MIME Kryptografische Unterschrift
URL: <http://lists.kolab.org/pipermail/devel/attachments/20121027/ee95f152/attachment.p7s>


More information about the devel mailing list