The Package Manager service stores a variety of files containing software packages, metadata, and artifacts to function properly and speed up computation.
This storage can be configured in three different ways:
- Local storage: This is the default configuration and only works with single-node configurations
- Network File Systems (NFS): This enables Package Manager to function in a cluster and provides better redundancy
- AWS Simple Cloud Storage Service (S3): This also enables Package Manager to function in a cluster, provides better redundancy, and allows administrators to separate the computation from the storage-layer entirely
The only exceptions are the application program files, the application logging, and the access logging which will be written to local storage by default.
The Package Manager installers place all program files into the
You should not move any files in the
/opt/rstudio-pm hierarchy as this could break installations. Also, note that any alterations will be overwritten by subsquent Package Manager upgrades.
The installer will also create the
/var/log/rstudio/rstudio-pm directory with
/var/lib/rstudio-pm directory with
0701 permissions, and all other subdirectories within
/var/lib/rstudio-pm (e.g., file storage and database directories) with
The Package Manager configuration file is stored at
/etc/rstudio-pm/rstudio-pm.gcfg and owned by
rstudio-pm with permissions
0640. This configuration may need to contain passwords and other sensitive information. See the appendix for more information on encrypting this information for better security.
An example configuration file that includes all the available configuration settings along with their defaults is installed at
The Package Manager data directory contains information used by the server to manage repositories including a
SQLite databases and an encryption key.
The default location for the Package Manager data directory is
/var/lib/rstudio-pm, which can be configured by changing the
DataDir setting in your configuration file's
Server section. Here is an example of updating the
DataDir to the point to the
The Package Manager service user must have permissions to read, write, and create directories in the data directory. See the appendix for more information on changing the
The SQLite database must exist on local storage. If the location for
DataDir is not local storage but a networked location over NFS, configure the
Dir setting in the
SQLite section of your server configuration file.
By default, the data directory stores several subdirectories used by Package Manager. These subdirectories include the
packages, and other folders containing data used by Package Manager during execution. Although it is not recommended, you can customize each of these storage directories individually. For more information on the contents of these subdirectories or how to change the locations, see the appendix.
As mentioned above, Package Manager can use local, NFS, or S3 for file storage. While local storage works for single-node setups and does not require additional configuration, multi-node or high-availability setups require mounting certain files to a shared file system. The NFS and S3 sections, available below, provide the steps for configuring these systems.