Hallo,
vielen Dank für die Erinnerung an das Update der FAQ.
Zum beschriebenen Problem nach der Deinstallation:
Vor der Freigabe einer App führt Univention diverse automatisierte Tests durch. Dabei wird eine App auf den zugelassenen Systemrollen installiert und wieder deinstalliert. Bis auf einen Fehlalarm haben wir bislang noch keine Probleme bei der Freigabe gehabt. Die Tests werden übrigens bei jeder Aktualisierung erneut durchgeführt.
Grundsätzliche Probleme sollte es also nicht geben. Aber wie das so ist…
Die Deinstallation der ownCloud App wird in mehreren Schritten durchgeführt:
im prerm des Paketes wird u.a das Unjoin-Skript 81owncloud-uninstall.uinst nach /usr/lib/univention-install/ kopiert. Dieses Skript wird dann im postrm ausgeführt. Danach wird im postrm auch die ownCloud-Datenbank entfernt und die UCR-Variablen gelöscht.
Aufgabe des Skriptes sind die Aufräumarbeiten im LDAP. Dazu gehören eben auch das Löschen der Extended Attributes. Das dürfte bei Ihnen nicht funktioniert haben.
Ich würde in /var/log/univention/management-console-module-appcenter.log und ggf. auch /var/log/apt/term.log Hinweise zum Fehlschlag erwarten.
Bevor Sie an eine manuelle Deinstallation der Erweiterten Attribute gehen, wäre es sinnvoll, nachzusehen, ob das ownCloud-Paket noch als installiert angezeigt wird.
Nachfolgend noch ein Auszug aus den Remove-Skripten. Achtung, dies dient nur der Illustration, ist ungeeignet für Cut&Paste in die Shell und als Information gedacht, wo man nachschauen muß, wenn doch eine manuelle Deinstallation nötig sein sollte… :
[code]if ucs_isServiceUnused “${SERVICE}” “$@”; then
# remove LDAP tracks
echo “Cleaning up LDAP …”
udm users/user remove “$@” --dn=“uid=owncloudsystemuser,cn=sysusers,cn=owncloud,$ldap_base”
udm settings/extended_attribute remove “$@” --dn=“cn=ownCloudUserEnabled,cn=owncloud,cn=custom attributes,cn=univention,$ldap_base”
udm settings/extended_attribute remove “$@” --dn=“cn=ownCloudGroupEnabled,cn=owncloud,cn=custom attributes,cn=univention,$ldap_base”
udm settings/extended_attribute remove “$@” --dn=“cn=ownCloudUserQuota,cn=owncloud,cn=custom attributes,cn=univention,$ldap_base”
udm container/cn remove “$@” --dn=“cn=sysusers,cn=owncloud,$ldap_base”
udm container/cn remove “$@” --dn=“cn=owncloud,$ldap_base”
udm container/cn remove “$@” --dn=“cn=owncloud,cn=custom attributes,cn=univention,$ldap_base”
...
fi
[/code]
Im postrm ist dann noch:
[code]if [ “$1” = purge ]; then
# really remove ownCloud (except the data-dir in /var/lib/owncloud and the database)
ocmysqldb=$(grep dbname /var/www/owncloud/config/config.php | cut -d"’" -f4)
echo “Removing /var/www/owncloud/ …”
rm -Rf /var/www/owncloud
# we need to remove the database user, if not a new install will fail
mpw=$(cat /etc/mysql.secret)
mysql -u root -p$mpw -e “drop user oc_owncloudadmin@‘localhost’; drop user oc_owncloudadmin; flush privileges;” || true
mysql -u root -p$mpw -e “delete from oc_appconfig” -D $ocmysqldb || true
mysql -u root -p$mpw -e “delete from oc_users where uid=‘owncloudadmin’” -D $ocmysqldb || true
#unset ocr configuration
ucr unset owncloud/directory/data \
owncloud/db/name \
owncloud/join/users/update \
owncloud/join/users/filter \
owncloud/join/groups/filter \
owncloud/user/quota \
owncloud/user/enabled \
owncloud/ldap/tls \
owncloud/ldap/displayName \
owncloud/ldap/loginFilter \
owncloud/ldap/userlistFilter \
owncloud/ldap/base/users \
owncloud/ldap/base/groups \
owncloud/ldap/groupFilter \
owncloud/ldap/groupMemberAssoc \
owncloud/ldap/group/displayName \
owncloud/group/enabled \
owncloud/group/enableDomainUsers
# this password is no more
rm /etc/owncloudadmin.secret || true
# remove cron job if present
if crontab -lu www-data 2>/dev/null | grep -q owncloud; then
echo Removing crontab entry for owncloud...
crontab -lu www-data | \
grep -vF '# added by owncloud' | \
grep -vF 'owncloud/cron.php' | \
crontab -u www-data -
fi
fi
[/code]
Die Zitate sind beide aus der 7.0.4.
Viele Grüße,
Dirk Ahrnke