FUSIONDIRECTORY-SETUP(1)

πŸ“¦ version 1.3, in ubuntu jammy

πŸ’– NAME πŸ’–

fusiondirectory-setup β€” the FusionDirectory configuration management tool, bestie edition ✨

(also known as FUSIONDIRECTORY-SETUP(1) in the official FusionDirectory docs, iykyk)


πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so listen. This script? It's literally your FusionDirectory/LDAP bestie. It runs a bunch of checks on your whole FusionDirectory/LDAP architecture and then fixes the usual misconfiguration for you. No cap.

And because it's an overachiever, it also has some extra features that let you install FusionDirectory's plugins and change destination directories. Main character energy fr fr. πŸ‘‘

🌸 Options 🌸

  • --update-cache β€” refreshes the /var/cache/fusiondirectory/class.cache file, which is the little cutie holding the PHP classes used in FusionDirectory plus their locations. πŸ’…
  • --update-locales β€” updates internationalization by generating a fresh .mo locales file for every language, using every .po file it can find. Heads up bestie: this one needs msgcat and msgfmt to be installed or it simply cannot. 😭
  • --check-directories β€” runs a check on literally all of FusionDirectory's files or directories. vibe check for your filesystem ✨
  • --check-config β€” runs a check on FusionDirectory's config file. πŸŽ€
  • --check-ldap β€” checks your LDAP tree, looking for the admin account and for the groups or people branch. If one of those doesn't exist, the script will ask you what to do. So stay alert, it wants your opinion. πŸ™ˆ
  • --check-ids β€” checks your LDAP tree for duplicated uidNumber or gidNumber among users and groups. Duplicates are giving messy, we don't do that. πŸ’€
  • --migrate-users β€” adds FusionDirectory attributes to the people branch. 🫢
  • --migrate-phones β€” removes the device objectClass for phones, because fdPhones is now structural since FD 1.1. Evolution, slay. πŸ¦‹
  • --migrate-systems β€” replaces old systems objectClasses with the new objectClasses from FD 1.1. ✨
  • --migrate-winstations β€” replaces old winstations objectClasses with the new objectClasses from FD 1.1. ✨
  • --migrate-dhcp β€” moves DHCP configurations from the systems branch to the DHCP branch, which is necessary for FusionDirectory 1.0.17 and above. Necessary bestie, not optional. πŸ’…
  • --migrate-supannentite β€” adds the {SUPANN} prefix that was missing in supannTypeEntite values before FD 1.3. It was just wandering around prefix-less, poor thing. πŸ₯Ί
  • --delete-gosa-locks β€” deletes old GOsa style lock tokens from 1.0.15 or older. Byeee legacy tokens πŸ‘‹
  • --install-plugins β€” installs the plugin from a tar.gz of the plugin. This option is intended for people wanting to install from the sources. 🌈
  • --encrypt-passwords β€” encrypts the password inside your fusiondirectory.conf file. It needs the headers module to be activated in your apache to work β€” no headers module, no encryption, periodt. πŸ”₯
  • --show-version β€” parses the file variables_common.inc of FusionDirectory to find out which version of FusionDirectory is installed. Detective mode πŸ”
  • --list_vars β€” lists the variables you can change to install FusionDirectory on another set of directories. This option is intended for people wanting to install from the sources. πŸ‘‘
  • --write-vars β€” writes back the variables.inc file with the updated variables. It's only useful with --set-VAR=variable, and it's for people installing from sources. πŸ’–
  • --set-VAR=variable β€” changes the variable for the FusionDirectory installation. It's only useful with --install-directories, and again, for people installing from sources. ✨
  • --list-deprecated β€” lists the deprecated attributes and objectclasses that are still hanging around in your schemas and no longer used by FusionDirectory. They're so 2011 ngl. πŸ’€
  • --check-deprecated β€” lists the dn of LDAP entries that are using deprecated attributes or objectclasses, and no longer used by FusionDirectory. πŸ•΅οΈ
  • --ldif-deprecated β€” prints an LDIF to allow you to remove deprecated attributes from your ldap server.
⚠️ Be careful and check before applying! This one is a real-life "measure twice, cut once" situation bestie, do not just yeet it at your server. 😭
  • --show-config β€” prints a dump of the FusionDirectory configuration LDAP node. Show me everything πŸ’…
  • --set-config-VAR=value β€” sets the value of a configuration field in the LDAP. The value needs to be in the correct LDAP format. You cannot set a multivalued field with this. The var name can be provided with or without the fd prefix. πŸŽ€
  • --yes β€” this flag answers "yes" to every yes/no question asked by the script. Automatic yes, no thinking required, iconic behaviour fr fr. βœ…

✨ EXAMPLE ✨

benoit@catbert$ fusiondirectory-setup --update-cache --update-locales

Update FusionDirectory class cache and update localization

benoit@catbert$ fusiondirectory-setup --list-vars
List possible vars to give --set
locale_cache_dir        [locale]
config_file             [fusiondirectory.conf]
fd_cache                [/var/cache/fusiondirectory]
fd_smarty_dir           [/usr/share/php/smarty3]
fd_spool_dir            [/var/spool/fusiondirectory]
fai_log_dir             [fai]
tmp_dir                 [tmp]
secrets_file            [fusiondirectory.secrets]
template_dir            [template]
locale_dir              [locale]
class_cache             [class.cache]
fd_config_dir           [/etc/fusiondirectory]
fd_home [/var/www/fusiondirectory]

benoit@catbert$ fusiondirectory-setup --set-class_cache=class.cache --write-vars

update the class.cache name and write back the variables.inc file

πŸ™ˆ BUGS πŸ™ˆ

Found a bug? Have a suggestion? Please report any bugs, or post any suggestions, to the fusiondirectory mailing list fusiondirectory-users, or open an issue at <https://gitlab.fusiondirectory.org/fusiondirectory/fd/issues/new> πŸ’Œ


πŸ’œ AUTHORS πŸ’œ

  • Benjamin Carpentier
  • Come Bernigaud

This code is part of FusionDirectory (http://www.fusiondirectory.org/) 🌈

Copyright (C) 2011-2018 FusionDirectory

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. 🫢


And that's the whole page bestie πŸ’– β€” this was FusionDirectory 1.3, dated 2019-03-04, filed under FUSIONDIRECTORY-SETUP(1). Go forth and let your LDAP architecture be unproblematic for once βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from