Default Account
The installer creates a user account and group named rstudio-pm
and runs the RStudio Package Manager service under this account. See RunAs User for more information.
Changing The RunAs Account (Service)
You can configure RStudio Package Manager to run under another account. The steps below serve as a guide for reconfiguring RStudio Package Manager to run under an account named thor
with a primary group of heroes
instead of the default rstudio-pm:rstudio-pm
.
- Stop the RStudio Package Manager service. See Stopping and Starting.
sudo systemctl stop rstudio-pm
- Create a new group and user account
sudo groupadd heroes
sudo useradd -r -g heroes -M -s /sbin/nologin thor
In order to use the CLI tool, a user must be a member of the primary group of the user that starts the RStudio Package Manager service.
In this example, RStudio Package Manager is started by the user thor
. The primary group of the thor
account is heroes
, so users must be members of the heroes
group to use the CLI.
- Edit the service configuration
sudo vi /etc/systemd/system/rstudio-pm.service.d/user.conf
Change these lines:
[Service]
User=thor
Group=heroes
- Change ownership of files and directories
# Configuration file
sudo chown thor:heroes /etc/rstudio-pm/rstudio-pm.gcfg
# Log files
sudo chown thor:heroes /var/log/rstudio-pm.*
# Data directory (or `Server.DataDir`, if configured for a custom location)
sudo chown -R thor:heroes /var/lib/rstudio-pm
# Run directory
sudo chown -R thor:heroes /var/run/rstudio-pm
# RStudio Job Launcher cookie key
sudo chown thor:heroes /tmp/rstudio-server/secure-cookie-key
# If you have a custom `Sqlite.Dir` (e.g., `Sqlite.Dir = /database/directory`)
sudo chown -R thor:heroes /database/directory
# If you have a custom `Server.CacheDir` (e.g., `Server.CacheDir = /path/to/cache`)
sudo chown -R thor:heroes /path/to/cache
- Remove remaining domain socket file (if any)
sudo rm /var/run/rstudio-pm/rstudio-pm.sock
- Start the RStudio Package Manager service. See Stopping and Starting.
sudo systemctl daemon-reload # Reload the systemd process
sudo systemctl start rstudio-pm
- Verify that the
rstudio-pm
service is running under thethor
account.
ps -axj | grep `id -u thor`
- Check
/var/log/rstudio-pm.log
to verify that the server started up with no errors.
Using the New RunAs Account (CLI)
After changing the service RunAs user, your CLI users must be members of the heroes
group. For example:
sudo useradd -g heroes hulk
sudo passwd hulk
su hulk
/opt/rstudio-pm/bin/rspm <command>
Comments