Ajcody-Zimlet-Notes
- This article is NOT official Zimbra documentation. It is a user contribution and may include unsupported customizations, references, suggestions, or information. |
Zimlets
Actual Zimlet Notes Homepage
Please see Ajcody-Zimlet-Notes
Location Of Zimlets
Zimlets should be already located on the zimbra server in one of these directories:
/opt/zimbra/zimlets/ /opt/zimbra/zimlets-admin-extra/ /opt/zimbra/zimlets-extra/ /opt/zimbra/zimlets-experimental/ /opt/zimbra/zimlets-network/
How To List Currently Installed Zimlets
Do the following:
zmzimletctl listZimlets
You can also see them in the admin console.
Configuration > Zimlets
Configuration > Admin Extensions
How To Deploy Zimlets
To deploy a zimlet, simply cd to the directory where the zimlet is located and issue this command:
/opt/zimbra/bin/zmzimletctl deploy <zimlet_name>
Something like:
zmzimletctl deploy /opt/zimbra/zimlets-extra/com_zimbra_ycurrency.zip
You can also deploy them via the admin console.
Configuration > Zimlets
Configuration > Admin Extensions
How To Undeploy / Uninstall Zimlets
See how the zimlet is named:
zmzimletctl listZimlets
Now run the following with the naming convention used from the above output:
zmzimletctl undeploy com_zimbra_ycurrency
You can also undeploy them via the admin console.
Configuration > Zimlets
Configuration > Admin Extensions
Samba & Posix Zimlet
Main Samba & Posix How-To Reference
Please see:
http://wiki.zimbra.com/index.php?title=UNIX_and_Windows_Account_management_in_Admin_UI
Can't Manage Users After Removing Samba & Posix Zimlet
This is after you have removed the samba & posix zimlets and now can't see or manage old accounts in the admin ui. You might need to remove the samba/posix references in each user account. You'll need the nis.schema and samba.schema configured for ldap for this to work.
Untested comment, 3 things needed for this.
1. deployed samba/posix zimlet
2. add/have the samba/nis schema
3. add/have the extra oc's
zmprov mcf +zimbraAccountExtraObjectClass posixAccount zmprov mcf +zimbraAccountExtraObjectClass sambaSamAccount
If you do this on one of the old accounts:
zmprov ga user@domain.com
And you see:
objectClass: posixAccount objectClass: sambaSamAccount
These steps might need to be done.
Create a file called mod.ldif . Modify the dn line - dn: uid=posix1,ou=people,dc=testdomain,dc=com - for your server and user.
# posix1, people, testdomain.com dn: uid=posix1,ou=people,dc=testdomain,dc=com changetype: modify delete: objectClass objectClass: posixAccount - delete: objectClass objectClass: sambaSamAccount - delete: uidNumber - delete: gidNumber - delete: loginShell - delete: sambaAcctFlags - delete: sambaSID - delete: homeDirectory - delete: sambaNTPassword # posix2, people, testdomain.com dn: uid=posix2,ou=people,dc=testdomain,dc=com changetype: modify delete: objectClass objectClass: posixAccount - delete: objectClass objectClass: sambaSamAccount - delete: uidNumber - delete: gidNumber - delete: loginShell - delete: sambaSID - delete: homeDirectory - delete: sambaNTPassword
Then run a command similar to this, modify it for your environment:
ldapmodify -D uid=zimbra,cn=admins,cn=zimbra -w PassWord -H ldap://ldapmaster.hostname.com:389 -x -f /tmp/mod.ldif
Problems With The Above Steps?
Please see :
http://wiki.zimbra.com/index.php?title=King0770-Notes#LDAP_-_Export_.26_Reimport
It should be possible to modify the dump and the re-import. This has not been tested yet, though.
Steps done in one test. Please note, you'll still need to visually review the ldap file to see what lines need to be remove, this can't be scripted out.
-as zimbra- zimbra$ libexec/zmslapcat /tmp/ldap zimbra$ egrep -iv 'sambaSamAccount|posixAccount|uidNumber|gidNumber|loginShell|sambaAcctFlags|sambaSID|homeDirectory|sambaNTPassword' ldap.bak > ldap.bak2 zimbra$ egrep -i 'samba|posix' ldap.bak2 zimbra$ vi ldap.bak2 zimbra$ egrep -i 'loginshell|HOMEDIRECTORY|MEMBERUID' ldap.bak2 zimbra$ vi ldap.bak2 zimbra$ zmcontrol stop zimbra$ ps -aux | grep slapd 6) su - root 7) mv /opt/zimbra/openldap-data /opt/zimbra/openldap-data.OLD 8) mkdir -p /opt/zimbra/openldap-data/logs 9) chown -R zimbra:zimbra /opt/zimbra/openldap-data/ 10) su - zimbra zimbra$ cd /opt/zimbra/openldap-data.OLD zimbra$ cp DB_CONFIG ../openldap-data/ zimbra$ cd zimbra$ /opt/zimbra/openldap/sbin/slapadd -f /opt/zimbra/conf/slapd.conf -l /tmp/ldap/ldap.bak2 The first database does not allow slapadd; using the first available one (2) is_entry_objectclass("cn=IT,ou=groups,dc=XXXXX,dc=com", "2.16.840.1.113730.3.2.6") no objectClass attribute slapadd: dn="cn=IT,ou=groups,dc=XXXXX,dc=com" (line=11179): no objectClass attribute zimbra$ zmcontrol start ### Output ### assigned-72-29-183-240:~ zimbra$ libexec/zmslapcat /tmp/ldap2/ UNKNOWN attributeDescription "LOGINSHELL" inserted. UNKNOWN attributeDescription "HOMEDIRECTORY" inserted. UNKNOWN attributeDescription "SAMBAACCTFLAGS" inserted. UNKNOWN attributeDescription "SAMBASID" inserted. UNKNOWN attributeDescription "SAMBADOMAINNAME" inserted. UNKNOWN attributeDescription "SAMBANTPASSWORD" inserted. UNKNOWN attributeDescription "SAMBAALGORITHMICRIDBASE" inserted. UNKNOWN attributeDescription "SAMBANEXTUSERRID" inserted. UNKNOWN attributeDescription "SAMBAMINPWDLENGTH" inserted. UNKNOWN attributeDescription "SAMBALOGONTOCHGPWD" inserted. UNKNOWN attributeDescription "SAMBAMAXPWDAGE" inserted. UNKNOWN attributeDescription "SAMBAMINPWDAGE" inserted. UNKNOWN attributeDescription "SAMBALOCKOUTDURATION" inserted. UNKNOWN attributeDescription "SAMBALOCKOUTOBSERVATIONWINDOW" inserted. UNKNOWN attributeDescription "SAMBALOCKOUTTHRESHOLD" inserted. UNKNOWN attributeDescription "SAMBAFORCELOGOFF" inserted. UNKNOWN attributeDescription "SAMBAREFUSEMACHINEPWDCHANGE" inserted. UNKNOWN attributeDescription "SAMBAPWDHISTORYLENGTH" inserted. UNKNOWN attributeDescription "SAMBAGROUPTYPE" inserted. UNKNOWN attributeDescription "MEMBERUID" inserted. UNKNOWN attributeDescription "SAMBAPASSWORDHISTORY" inserted. UNKNOWN attributeDescription "SAMBAPWDLASTSET" inserted.