rcnamed stop
Edit /etc/sysconfig/named
NAMED_RUN_CHROOTED="no"
Or use the Yast sysconfig editor to do so. Then:
rm -r /var/run/named
mkdir /var/run/named
chown named:named /var/run/named
chown named:named /var/lib/named
touch /var/lib/named/managed-keys.bind
There's some stuff to do for Samba 4 too in /usr/local/samba/private. From the file called named.txt in that folder:
chgrp named /usr/local/samba/private/dns.keytab
chmod g+r /usr/local/samba/private/dns.keytab
I got so fed up with it, I got out the big hammer:
#!/bin/bash
#Steve 17 Jan 2012
#To workaround the openSUSE bug. Run this script to restart named
#copy this script to e.g./usr/local/bin/restartnamed, chmod +x it
#Then just type restartnamed
rcnamed stop
rm -r /var/run/named
mkdir /var/run/named
chown named:named /var/run/named
rcnamed start
With Ubuntu you can use the bind9.9.0 beta. Instead of running as named, it runs as bind.