Scroll to navigation

gromox-mkprivate(8) Gromox admin reference gromox-mkprivate(8)

Name

gromox-mkprivate — Tool for creating a blank private store

Synopsis

gromox-mkprivate [-Uv] [-T template_dir] [-c config] [-f] username

Description

mkprivate is used to generate the exchange.sqlite3 file for a private store. mkprivate directly operates on the filesystem, which has implications. First, the program ought to be executed on the correct homeserver in case a multi-server Gromox installation is used. Second, there is no coordination with exmdb_provider(4gx), and exmdb_provider might continue using file descriptors opened earlier, working with the old copy of the mailbox, or get confused because e.g. a WAL file no longer matches the sqlite db. Ideally, you would use something like `gromox-mbop -u ... ( freeze ) ( unload )` to make exmdb_provider close the mailbox before resetting it. Even then, services that build on top of exmdb, such as exchange_emsmdb(4gx) or zcore(8gx), may also get confused when the mailbox (now as an abstract object rather than a concrete file descriptor) or any key characteristics like PR_STORE_RECORD_KEY.

Options

This option can be used to override the built-in data path for folder name translations and prepoulated named properties.
Default: /usr/share/gromox
Rather than creating the SQLite file, upgrade it. (The -f option has no effect.) mkprivate does not coordinate with exmdb_provider(4gx) and data corruption is possible if both try to edit the file at the same time. You should let exmdb_provider(4gx) do upgrades instead, via the "exmdb_schema_upgrades" directive, or at the very least, stop http(8gx)/exmdb_provider when using mkprivate -U.
Read configuration directives from the given file. If this option is not specified, /etc/gromox/mysql_adaptor.cfg will be read for MySQL connection parameters if that file exists.
Force overwrite when an existing SQLite database is detected for the user. By default, mkprivate will not touch exchange.sqlite3.
Turn on verbose mode for -U.
Create blank initial database using version 0. (This can be used for testing the upgrade procedure.)
Perform SQLite integrity check, either standalone or, if -U is also given, as part of an upgrade.
-?
Display option summary.

Files

  • data_file_path/folder_names.txt: Translations for essential folders in a message store.
  • data_file_path/propnames.txt: Initial set of named properties to add to the new private store.
  • /var/lib/gromox/.../exmdb/exchange.sqlite3: MAPI object database.

See also

gromox(7), gromox-mkmidb(8), gromox-mkpublic(8), mysql_adaptor(4gx)

Gromox