...
Cette page vous présente l'installation et l'utilisation du client, avec des exemples pratiques, vous retrouverez sur la sous-page dédiée la Référence détaillée des commandes bm-cli.
Installation
Pour installer le client bm-cli, installer le paquet dédié sur le serveur, disponible à partir de BlueMind 3.5.10 :
Bloc de code |
---|
# aptitude install bm-cli |
Info |
---|
Aucun redémarrage n'est nécessaire, l'outil est immédiatement effectif. |
Fonctionnement
Les commandes
Les commandes sont passées via un terminal directement sur le serveur, connecté en ssh par exemple.
Par exemple, une commande permettant de connaître les carnets d'adresses d'un utilisateur :
Bloc de code |
---|
root@mail:~# bm-cli contact list jdoe@bluemind.loc
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"book:Contacts_05E25C2C-3643-4ED2-997C-4A4F39933D18","name":"My contacts"}
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18","name":"Collected contacts"}
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"408C741B-3FDC-44B6-B1FD-19E79404BFCF","name":"Perso"} |
Obtenir de l'aide
Remarque |
---|
Les commandes sont enrichies au fur et à mesure des versions de BlueMind. Il se peut donc que vous ayez plus (ou moins) de commandes selon la version de votre installation. Il est donc important de se référer à la commande "bm-cli help" afin de savoir quelles sont celles que vous pouvez utiliser. Par exemple : Bloc de code |
---|
# bm-cli help
usage: bm-cli <command> [<args>]
The most commonly used bm-cli commands are:
calendar calendar task(s)
contact contact task(s)
help Display help information
maintenance maintenance task(s)
tick tick task(s)
user user task(s)
See 'bm-cli help <command>' for more information on a specific command. |
L'installation, ici en 3.5.11, bénéficie ici des commandes calendar, contact et user qui n'étaient pas présentes sur les versions antérieures. |
À tout moment vous pouvez obtenir de l'aide sur une commande, une sous-commande, son usage et ses options au moyen de "help".
Par exemple "help maintenance" vous présente la commande maintenance et ses diverses actions possibles :
Bloc de code |
---|
# bm-cli help maintenance
NAME
bm-cli maintenance - maintenance task(s)
SYNOPSIS
bm-cli maintenance
bm-cli maintenance consolidateIndex [--workers <workers>]
bm-cli maintenance list [--workers <workers>]
bm-cli maintenance repair [--dry] [--workers <workers>]
COMMANDS
With no arguments, List directory entries
list
List directory entries
... |
Pour obtenir plus de détail sur une sous-commande, il vous suffit de taper la sous-commande à son tour, ici pour obtenir l'aide concernant l'opération de consolidation d'index :
Bloc de code |
---|
# bm-cli help maintenance consolidateIndex
NAME
bm-cli maintenance consolidateIndex - Consolidate a mailbox index
SYNOPSIS
bm-cli maintenance consolidateIndex [--workers <workers>] [--] <target>
OPTIONS
--workers <workers>
run with X workers
... |
Exemples pratiques
Administration & Maintenance
Effectuer un check&repair global
La commande suivante permet d'effectuer l'opération "valider et réparer" sur l'ensemble des utilisateurs du domaine en utilisant 4 threads :
Bloc de code |
---|
bm-cli maintenance repair domain.net --numworkers 4 |
Modifier le mot de passe admin0
Pour diverses raisons, techniques ou pratiques (en cas de perte, par exemple), il peut être utile de modifier le mot de passe de l'utilisateur admin0 sans avoir à se loguer dans BlueMind.
La commande suivante permet de le faire sans connaître l'ancien mot de passe :
Bloc de code |
---|
bm-cli user update admin0@global.virt --password "NewPassword" |
Mettre à jour la configuration tick
Lorsque l'outil de monitoring Bm-Tick est installé, il est possible d'effectuer des tâches d'administration sur celui-ci. Par exemple, vous pouvez redéployer la configuration sur l'ensemble des serveurs du domaine avec la commande suivante :
Bloc de code |
---|
# bm-cli tick reconfigure |
Astuce |
---|
L'option --dry permet de tester la commande : l'opération est juste simulée Bloc de code |
---|
# bm-cli tick reconfigure --dry |
|
Gestion des utilisateurs
Supprimer les utilisateurs archivés (suspendus) du domaine
Info |
---|
|
La commande "bm-cli user" sera disponible avec BlueMind 3.5.11. |
Les commandes peuvent être couplées afin d'effectuer plusieurs opérations en une seule fois.
Par exemple, avec la commande ci-dessous on recherche les adresses emails des utilisateurs suspendus :
Bloc de code |
---|
bm-cli user get domain.net --archived --display "email" |
Il est alors possible de coupler le retour de cette commande avec une commande "delete" afin de supprimer les utilisateurs retournés :
Bloc de code |
---|
bm-cli user get local.lan --display "email" | jq -r '.[].email' > /tmp/archived.txt
while read account; do bm-cli user delete --dry $account ;done < /tmp/archived.txt |
Opérations sur les calendriers
Partager les calendriers de tous les utilisateurs vers un utilisateur
Il peut s'avérer utile qu'un utilisateur ait des droits d'accès sur les calendriers de tous les autres utilisateurs sans pour autant qu'il soit désigné administrateur (par exemple une secrétaire devant pouvoir voir/créer des événements pour l'ensemble des collaborateurs). Afin d'éviter la tâche laborieuse de passer sur toutes les fiches d'administration des utilisateurs pour activer un partage, il est possible de réaliser cela en ligne de commande.
Cette opération n'est pas réalisable en une seule commande, néanmoins il est possible de réaliser une boucle récupérant l'ensemble des utilisateurs du domaine puis activant un partage pour chacun d'eux :
Bloc de code |
---|
bm-cli users get domain.net > /tmp/allUser.domain.net
while read account; do bm-cli calendar share $account « default » toto@domain.net r;done < /tmp/allUser.domain.net |
Opérations sur les contacts
Exemple de procédure pour nettoyer le carnet des collectés d'un utilisateur puis transférer les contacts vers son carnet personnel (en testant au préalable l'import) :
Installation Remarque |
---|
title | Versions antérieures à 3.5.14 |
---|
| Si votre BlueMind n'est pas à jour de la toute dernière version publiée, il risque d'y avoir un conflit entre les paquets installés car bm-cli s'installera dans la dernière version disponible. Pour éviter cela, vous pouvez : Bloc de code |
---|
#deb https://SUBSCRIPTION_USER:PASSWORD@pkg.bluemind.net/3.5/xenial/pkgs /
deb https://SUBSCRIPTION_USER:PASSWORD@pkg.bluemind.net/3.5.12-4/xenial/pkgs |
NB : nous vous recommandons comme ci-dessus de copier la ligne et commenter la 1ère version en rajoutant un # en début de ligne, cela facilitera le retour arrière. Image Added avec cela, la version de toute votre installation BlueMind est figée. Une fois les paquets installés, pensez à remettre le numéro de version générique afin de pouvoir mettre à jour lorsque vous le souhaiterez. |
Pour installer le client bm-cli, installer le paquet dédié sur le serveur, disponible à partir de BlueMind 3.5.10 : Tabs group |
---|
border | all-sides |
---|
navcolor | navy |
---|
| Debian/UbuntuRedhat/CentOS |
Info |
---|
Aucun redémarrage n'est nécessaire, l'outil est immédiatement effectif. |
FonctionnementLes commandesLes commandes sont passées via un terminal directement sur le serveur, connecté en ssh par exemple. Par exemple, une commande permettant de connaître les carnets d'adresses d'un utilisateur : Bloc de code |
---|
root@mail:~# bm-cli contact list jdoe@bluemind.loc
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"book:Contacts_05E25C2C-3643-4ED2-997C-4A4F39933D18","name":"My contacts"}
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18","name":"Collected contacts"}
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"408C741B-3FDC-44B6-B1FD-19E79404BFCF","name":"Perso"} |
Obtenir de l'aide Remarque |
---|
Les commandes sont enrichies au fur et à mesure des versions de BlueMind. Il se peut donc que vous ayez plus (ou moins) de commandes selon la version de votre installation. Il est donc important de se référer à la commande "bm-cli help" afin de savoir quelles sont celles que vous pouvez utiliser. Par exemple : Bloc de code |
---|
# bm-cli help
usage: bm-cli <command> [<args>]
The most commonly used bm-cli commands are:
calendar calendar task(s)
contact contact task(s)
help Display help information
maintenance maintenance task(s)
tick tick task(s)
user user task(s)
See 'bm-cli help <command>' for more information on a specific command. |
L'installation, ici en 3.5.11, bénéficie ici des commandes calendar, contact et user qui n'étaient pas présentes sur les versions antérieures. |
À tout moment vous pouvez obtenir de l'aide sur une commande, une sous-commande, son usage et ses options au moyen de "help". Par exemple "help maintenance" vous présente la commande maintenance et ses diverses actions possibles : Bloc de code |
---|
# bm-cli help maintenance
NAME
bm-cli maintenance - maintenance task(s)
SYNOPSIS
bm-cli maintenance
bm-cli maintenance consolidateIndex [--workers <workers>]
bm-cli maintenance list [--workers <workers>]
bm-cli maintenance repair [--dry] [--workers <workers>]
COMMANDS
With no arguments, List directory entries
list
List directory entries
... |
Pour obtenir plus de détail sur une sous-commande, il vous suffit de taper la sous-commande à son tour, ici pour obtenir l'aide concernant l'opération de consolidation d'index : Bloc de code |
---|
# bm-cli help maintenance consolidateIndex
NAME
bm-cli maintenance consolidateIndex - Consolidate a mailbox index
SYNOPSIS
bm-cli maintenance consolidateIndex [--workers <workers>] [--] <target>
OPTIONS
--workers <workers>
run with X workers
... |
Exemples pratiquesAdministration & MaintenanceEffectuer un check&repair globalLa commande suivante permet d'effectuer l'opération "valider et réparer" sur l'ensemble des utilisateurs du domaine en utilisant 4 threads : Bloc de code |
---|
bm-cli maintenance repair domain.net --numworkers 4 |
Modifier le mot de passe admin0Pour diverses raisons, techniques ou pratiques (en cas de perte, par exemple), il peut être utile de modifier le mot de passe de l'utilisateur admin0 sans avoir à se loguer dans BlueMind. La commande suivante permet de le faire sans connaître l'ancien mot de passe : Bloc de code |
---|
bm-cli user update admin0@global.virt --password "NewPassword" |
Mettre à jour la configuration tickLorsque l'outil de monitoring Bm-Tick est installé, il est possible d'effectuer des tâches d'administration sur celui-ci. Par exemple, vous pouvez redéployer la configuration sur l'ensemble des serveurs du domaine avec la commande suivante : Bloc de code |
---|
# bm-cli tick reconfigure |
Astuce |
---|
L'option --dry permet de tester la commande : l'opération est juste simulée Bloc de code |
---|
# bm-cli tick reconfigure --dry |
|
Gestion des utilisateursSupprimer les utilisateurs archivés (suspendus) du domaine Info |
---|
| La commande "bm-cli user" sera disponible avec BlueMind 3.5.11. |
Les commandes peuvent être couplées afin d'effectuer plusieurs opérations en une seule fois. Par exemple, avec la commande ci-dessous on recherche les adresses emails des utilisateurs suspendus : Bloc de code |
---|
bm-cli user get domain.loc --archived --display "email" |
Il est alors possible de coupler le retour de cette commande avec une commande "delete" afin de supprimer les utilisateurs retournés : Bloc de code |
---|
bm-cli user get domain.loc --display "email" | jq -r '.email' > /tmp/archived.txt
while read account; do bm-cli user delete --dry $account ;done < /tmp/archived.txt |
Appliquer un quota à tous les utilisateurs qui n'en ont pasPour cela, nous avons besoin de plusieurs commande qui seront ensuite regroupées en une seule : Bloc de code |
---|
#récupérer la liste des utilisateurs avec leur quota :
bm-cli user get domain.loc --display 'email quota'
#filtrer sur les utilisateurs ayant un quota null :
bm-cli user get domain.loc --display 'email quota' |grep null
#l'outil "jq" nous aidera ensuite à extraire l'email de chaque ligne retournée :
jq -r '.email'
#enfin, pour chaque ligne nous appliquerons la commande de mise à jour du quota (ici un quota de 80Mo) :
bm-cli user update --quota "81920" $1 |
Ainsi, la commande finale pour réaliser cela en une seule ligne de commande : Bloc de code |
---|
bm-cli user get domain.loc --display 'email quota' |grep null|jq -r '.email'| xargs -n1 bm-cli user update --quota "81920" $1 |
Astuce |
---|
L'exécution n'émet pas de retour sur la console, or cela peut s'avérer long à s'exécuter ; il convient donc de patienter jusqu'à ce que le prompt rende la main. Pour vérifier que tout se passe bien, on peut en premier lieu récupérer la liste des utilisateurs : Bloc de code |
---|
bm-cli user get domain.loc --display 'email quota' |grep null |
Si celle-ci est importante, on peut rajouter l'option "-p4" afin d'exécuter la commande avec 4 threads en parallèle : Bloc de code |
---|
bm-cli user get domain.loc --display 'email quota' |grep null|jq -r '.email'| xargs -n1 bm-cli user update --quota "81920" $1 -p4 |
Pendant l'attente, on peut ainsi vérifier dans la console d'administration l'onglet messagerie d'un utilisateur de temps en temps, en les prenant dans l'ordre de la liste : le nouveau quota est visible et effectif dès que la commande le concernant est passée. |
Opérations sur les calendriersExporter l'ensemble des calendriers d'un utilisateurDans le cadre d'un départ en vue de pouvoir les réimporter chez d'autres utilisateurs on veut exporter l'ensemble des calendriers d'un utilisateurs : Bloc de code |
---|
bm-cli calendar export --output-directory /home/user/export/cals user@domain.net #exporte tous les calendriers de l'utilisateur dans le dossier /home/user/export/cals |
NB : cette commande est disponible à partir de BlueMind 3.5.13 On pourra ensuite les réimporter soit individuellement, soit en créant une boucle plus complexe sur les calendriers d'un autre utilisateur et le dossier d'export grâce à la commande d'import suivante : Bloc de code |
---|
bm-cli calendar import user@domain.net --calendarUid calendar:Default:A1B2C3D4E5F6Z --ics-file-path /tmp/user_default.ics --dry #importe les événements du fichier user_default.ics dans le calendrier par défaut de user@domain.net |
Exporter les calendriers de tous les utilisateursDans une optique de migration ou de sauvegarde, on souhaite exporter et sauvegarder tous les calendriers de tous les utilisateurs au format ICS. Cette opération n'est pas réalisable en une seule commande, néanmoins il est possible de réaliser une boucle récupérant l'ensemble des utilisateurs du domaine puis en lançant l'export de leurs calendriers (voir ci-dessus) : Bloc de code |
---|
bm-cli user get domain.net --display 'email' |grep -v null|jq -r '.email' > /tmp/allUser.domain.net
while read account; do bm-cli calendar export --output-directory /tmp/export/cals $account;done < /tmp/allUser.domain.net |
Exemple de procédure pour nettoyer le carnet des collectés d'un utilisateur puis transférer les contacts vers son carnet personnel (en testant au préalable l'import) : Bloc de code |
---|
root@mail:~# bm-cli contact list jdoe@bluemind.loc
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"book:Contacts_05E25C2C-3643-4ED2-997C-4A4F39933D18","name":"My contacts"}
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18","name":"Collected contacts"}
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"408C741B-3FDC-44B6-B1FD-19E79404BFCF","name":"Perso"}
root@mail:~# bm-cli contact deduplicate jdoe@bluemind.loc --addressbook-uid book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18
2 were removed out of 35
root@mail:~# bm-cli contact export jdoe@bluemind.loc --vcf-file-path /tmp/jdoe-collected.vcf --addressbook-uid book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18
addressbook book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18 of jdoe@bluemind.loc was exported
root@mail:~# bm-cli contact import jdoe@bluemind.loc --vcf-file-path /tmp/jdoe-collected.vcf --addressbook-uid 408C741B-3FDC-44B6-B1FD-19E79404BFCF --dry
DRY : AddressBook 408C741B-3FDC-44B6-B1FD-19E79404BFCF of jdoe@bluemind.loc was imported
root@mail:~# bm-cli contact import jdoe@bluemind.loc --vcf-file-path /tmp/jdoe-collected.vcf --addressbook-uid 408C741B-3FDC-44B6-B1FD-19E79404BFCF
AddressBook 408C741B-3FDC-44B6-B1FD-19E79404BFCF of jdoe@bluemind.loc was imported
root@mail:~# bm-cli contact reset jdoe@bluemind.loc --addressbook-uid book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18
Addressbook book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18 of jdoe@bluemind.loc was reset |
MaintenanceL'outil bm-cli permet d'effectuer des opérations de maintenance sur les utilisateurs, comme par exemple : Bloc de code |
---|
bm-cli maintenance repair user@domain.net #réparer l'utilisateur user@domain.net
bm-cli maintenance repair domain.net --numworkers 4 #réparer l'ensemble des utilisateurs du domaine en utilisant 4 threads
bm-cli maintenance consolidateIndex user@domain.net #consolider l'index de l'utilisateur user@domain.net
bm-cli maintenance consolidateIndex domain.net --from 0 --size 100 #traite les 100 premiers utilisateurs retournés
bm-cli maintenance consolidateIndex domain.net --from 101 --size 50 #traite les 50 utilisateurs suivants
bm-cli maintenance consolidateIndex domain.net --match '[a-c].*' # traite les entités commencant par a, b ou c | Installation et mise à jourLa souscription donnant accès aux mises à jour automatisées de BlueMind, elle donne aussi accès à des opérations supplémentaires du client bm-cli pour celles-ci. Avertissement |
---|
Ces opérations étant sensibles et risquées, ce sont des commandes à réserver à une utilisation par des administrateurs avancés. |
Pour disposer de ces commandes, il est nécessaire d'installer le plugin dédié : Bloc de code |
---|
apt install bm-plugin-cli-setup
|
CommandesLa commande supplémentaire "setup " est disponible dès l'installation du plugin : Bloc de code |
---|
bm-cli help setup #obtenir de l'aide sur les arguments disponibles et leur utilisation
bm-cli setup install --external-url bluemind.domain.net --domain domain.net --sw-pass Passw0rd
bm-cli setup install --external-url bluemind.domain.net --domain domain.net --sw-pass Passw0rd --set-contact admin@domain.net --reinstall
bm-cli setup upgrade #lance la procédure de mise à jour post-installation en lieu et place du déroulement de l'url https://<domain.net>/setup via un navigateur |
--external-url : url externe du BlueMind--domain : domaine--set-contact : permet de positionner l'adresse de messagerie par défaut pour les notifications de l'expiration de la souscription--sw-pass : permet de positionner le mot de passe de l'admin pour le setupwizard
Procédure de mise à jourPour réaliser une mise à jour de l'installation en ligne de commande au moyen de l'outil bm-cli, la procédure suit le même déroulement que pour une mise à jour classique : - Préparation de la mise à jour :
NB : cette commande est disponible à partir de la version 3.5.14 La commande "bm-cli setup" permet de paramétrer la version vers laquelle on souhaite mettre à jour.
saisir la commande suivante pour mettre à jour dans la dernière version disponible : Bloc de code |
---|
bm-cli setup version latest |
pour mettre à jour dans une version particulière, passer le numéro de la version en paramètre : Bloc de code |
---|
bm-cli setup version 3.5.14-2 |
NB : l'utilisation du numéro de version majeure ("3.5" ou "4" par exemple) aura les mêmes effets que l'option "latest" : la dernière version mineure disponible de celle-ci sera installée
pour bloquer la version et empêcher les mises à jour dans une version supérieure : Bloc de code |
---|
bm-cli setup version current |
Mettre à jour les paquets : Remarque |
---|
Si vous souhaitez limiter le temps d'interruption des services, vous pouvez passer la commande de mise à jour avec l'option "download-only" afin dans un premier temps de ne faire que télécharger l'ensemble des paquets. N'entrainant pas d'interruption ni de ralentissement des services, cette action peut être réalisée à n'importe quel moment de la journée ou de la nuit. On pourra ensuite lancer au moment le plus opportun la commande "upgrade" de mise à jour effective des paquets, qui entrainera donc une coupure de service plus réduite. |
Tabs group |
---|
border | all-sides |
---|
navcolor | navy |
---|
| Debian/UbuntuRedhat/CentOS |
Lancer la procédure de mise à jour : Bloc de code |
---|
bm-cli setup upgrade |
|
Sv translation |
---|
|
Installation Remarque |
---|
title | Versions earlier than 3.5.14 |
---|
| If you haven't updated BlueMind to the latest published version, there may be a conflict between the packages installed because bm-cli will install its latest available version. To avoid this, you can: Bloc de code |
---|
#deb https://SUBSCRIPTION_USER:PASSWORD@pkg.bluemind.net/3.5/xenial/pkgs /
deb https://SUBSCRIPTION_USER:PASSWORD@pkg.bluemind.net/3.5.12-4/xenial/pkgs |
Note: we recommend that you copy the command line – as above – and comment the first version by adding # at the beginning of the line. This will make going back easier. Image Added when you do this, the version for your entire BlueMind installation is frozen. Once the packages are installed, remember to change the version number back to the generic number so that you can update BlueMind in due course. |
The bm-cli client is installed through a dedicated package on the server – available from BlueMind 3.5.10: Tabs group |
---|
border | all-sides |
---|
navcolor | navy |
---|
| Debian/UbuntuRedhat/CentOS |
Info |
---|
No restart is required, the commands are effective immediately. |
Using the clientCommandsCommands are passed using a terminal straight onto the server, connected via ssh for instance. For example, the following command can help you find out a user's address books: Bloc de code |
---|
root@mail:~# bm-cli contact list jdoe@bluemind.loc
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"book:Contacts_05E25C2C-3643-4ED2-997C-4A4F39933D18","name":"My contacts"}
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18","name":"Collected contacts"}
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"408C741B-3FDC-44B6-B1FD-19E79404BFCF","name":"Perso"} |
Getting help Remarque |
---|
Commands are improved with every version of BlueMind. You may have more or fewer commands depending on the version you have installed. Make sure you check the "bm-cli help" command to find out which commands are available. E.g.: Bloc de code |
---|
# bm-cli help
usage: bm-cli <command> [<args>]
The most commonly used bm-cli commands are:
calendar calendar task(s)
contact contact task(s)
help Display help information
maintenance maintenance task(s)
tick tick task(s)
user user task(s)
See 'bm-cli help <command>' for more information on a specific command. |
This installation – version 3.5.11 – includes calendar, contacts and user commands which did not exist in earlier versions. |
You can get help on a command, sub-command, how to use it and its options using "help" at any time. E.g. "help maintenance" shows the maintenance command and the actions it can perform: Bloc de code |
---|
# bm-cli help maintenance
NAME
bm-cli maintenance - maintenance task(s)
SYNOPSIS
bm-cli maintenance
bm-cli maintenance consolidateIndex [--workers <workers>]
bm-cli maintenance list [--workers <workers>]
bm-cli maintenance repair [--dry] [--workers <workers>]
COMMANDS
With no arguments, List directory entries
list
List directory entries
... |
For more details about a sub-command, type it to get help, e.g. about index consolidation: Bloc de code |
---|
# bm-cli help maintenance consolidateIndex
NAME
bm-cli maintenance consolidateIndex - Consolidate a mailbox index
SYNOPSIS
bm-cli maintenance consolidateIndex [--workers <workers>] [--] <target>
OPTIONS
--workers <workers>
run with X workers
... |
Practical examplesAdministration and MaintenancePerforming a domain-wide check&repairThe following command is used to perform a "check and repair" on all domain users using 4 threads: Bloc de code |
---|
bm-cli maintenance repair domain.net --numworkers 4 |
Changing the admin0 passwordFor multiple reasons – technical or practical, e.g. in case of loss -- you may need to change the admin0 user's password without logging into BlueMind. The following command allows you to do this without knowing the old password: Bloc de code |
---|
bm-cli user update admin0@global.virt --password "NewPassword" |
Updating Tick configurationWhen the Bm-Tick monitoring tool is installed, you can use it to perform administration tasks. E.g. you can roll out the configuration on all domain servers again using the following command: Bloc de code |
---|
# bm-cli tick reconfigure |
Astuce |
---|
--dry is added to test the command: the operation is merely simulated
Bloc de code |
---|
# bm-cli tick reconfigure --dry |
|
Operations on usersDeleting archived (suspended) domain users Info |
---|
| The "bm-cli user" command will be available from BlueMind 3.5.11. |
Commands can be coupled to perform several operations at once. E.g. the command below is used to look for the email addresses of suspended users: Bloc de code |
---|
bm-cli user get domain.net --archived --display "email" |
You can then couple this command with a "delete" command to remove all the users it returns: Bloc de code |
---|
bm-cli user get local.lan --display "email" | jq -r '.[].email' > /tmp/archived.txt
while read account; do bm-cli user delete --dry $account ;done < /tmp/archived.txt |
Operations on calendarsSharing all user calendars with one userIt may be useful for one user to have access privileges on all user calendars without being given an administrator role (e.g. a secretary might be able to view/create events for all other employees). To avoid having to go through each user's page to enable sharing, this can be done in command line. This cannot be done with a single command, but you can create a loop which picks up all domain users and enables sharing for each of them: Bloc de code |
---|
bm-cli users get domain.net > /tmp/allUser.domain.net
while read account; do bm-cli calendar share $account « default » toto@domain.net r;done < /tmp/allUser.domain.net |
The procedure below can be used to clean a user's collected address book and transfer their contacts to their personal address book (and testing the import process beforehand): Bloc de code |
---|
root@mail:~# bm-cli contact list jdoe@bluemind.loc
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"book:Contacts_05E25C2C-3643-4ED2-997C-4A4F39933D18","name":"My contacts"}
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18","name":"Collected contacts"}
{"owner":"05E25C2C-3643-4ED2-997C-4A4F39933D18","uid":"408C741B-3FDC-44B6-B1FD-19E79404BFCF","name":"Perso"}
root@mail:~# bm-cli contact deduplicate jdoe@bluemind.loc --addressbook-uid book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18
2 were removed out of 35
root@mail:~# bm-cli contact export jdoe@bluemind.loc --vcf-file-path /tmp/jdoe-collected.vcf --addressbook-uid book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18
addressbook book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18 of jdoe@bluemind.loc was exported
root@mail:~# bm-cli contact import jdoe@bluemind.loc --vcf-file-path /tmp/jdoe-collected.vcf --addressbook-uid 408C741B-3FDC-44B6-B1FD-19E79404BFCF --dry
DRY : AddressBook 408C741B-3FDC-44B6-B1FD-19E79404BFCF of jdoe@bluemind.loc was imported
root@mail:~# bm-cli contact import jdoe@bluemind.loc --vcf-file-path /tmp/jdoe-collected.vcf --addressbook-uid 408C741B-3FDC-44B6-B1FD-19E79404BFCF
AddressBook 408C741B-3FDC-44B6-B1FD-19E79404BFCF of jdoe@bluemind.loc was imported
root@mail:~# bm-cli contact reset jdoe@bluemind.loc --addressbook-uid book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18
Addressbook book:CollectedContacts_05E25C2C-3643-4ED2-997C-4A4F39933D18 of jdoe@bluemind.loc was reset |
MaintenanceThe bm-cli tool is used to perform maintenance operations on users, e.g.: Bloc de code |
---|
bm-cli maintenance repair user@domain.net #repairs the user @domain.net
bm-cli maintenance repair domain.net --numworkers 4 #repairs all domain users using 4 threads
bm-cli maintenance consolidateIndex user@domain.net #consolidates the index for the user user@domain.net
bm-cli maintenance consolidateIndex domain.net --from 0 --size 100 #processes the first 100 users returned
bm-cli maintenance consolidateIndex domain.net --from 101 --size 50 #processes the next 50 users
bm-cli maintenance consolidateIndex domain.net --match '[a-c].*' #processes the entities that begin with a, b or c |
Installation and upgradeThe subscription includes automatic BlueMind updates, as well as the related additional bm-cli client operations. Avertissement |
---|
These operations are sensitive and risky. Related commands should therefore be used by advanced administrators only. |
To access these commands, you need to install the CLI plugin: Bloc de code |
---|
apt install bm-plugin-cli-setup
|
CommandsThe additional "setup " command is then available: Bloc de code |
---|
bm-cli help setup #for help on available arguments and how to use them
bm-cli setup install --external-url bluemind.domain.net --domain domain.net --sw-pass Passw0rd
bm-cli setup install --external-url bluemind.domain.net --domain domain.net --sw-pass Passw0rd --set-contact admin@domain.net --reinstall
bm-cli setup upgrade #starts the post-installation update procedure instead unrolling the browser-based url https://<domain.net>/setup |
--external-url : BlueMind's external url --domain --set-contact : sets the default email address for subscription expiry notifications--sw-pass : sets the admin password for the setupwizard
Update procedureTo update the installation in command line using the bm-cli tool, the procedure is the same as for a standard update procedure: - Preparing for the update:
Note: this command is available from version 3.5.14 The "bm-cli setup" command is used to set the version you want to update.
type the following command to update to the latest available version: Bloc de code |
---|
bm-cli setup version latest |
to update to a specific version, pass the version number as a parameter: Bloc de code |
---|
bm-cli setup version 3.5.14-2 |
Note: using a major version number (e.g. "3.5" or "4") will have the same result as the "latest" option: the latest minor available version will be installed to freeze a version and prevent updates to above versions: Bloc de code |
---|
bm-cli setup version current |
Update the packages: Remarque |
---|
If you want to minimize service downtime, you can pass the update command with the "download-only" option, which enables you to download all the packages ahead of the update. This does not interrupt or slow down services, which means it can be done at any time of day or night. You can then run the "upgrade" command at a more convenient time and therefore reduce service downtime. |
Tabs group |
---|
border | all-sides |
---|
navcolor | navy |
---|
| Debian/UbuntuRedhat/CentOS |
Launch the update procedure: Bloc de code |
---|
bm-cli setup upgrade |
|
...