How to change home directory of Jenkins?

I am using Ubuntu server and using Jenkins version (2.277.4 +). I was able to change the Jenkins home directory by:

  1. Changing the JENKINS_HOME value in /etc/default/jenkins to the desired folder name.
  2. Update permission on the target folder so that jenkins user has read,write,execute permissions on the folder.

To change the Jenkins home directory you just need to setup the "JENKINS_HOME" environment variable to point to the new location. You can also set the JENKINS_HOME as a system property or a JNDI environment entry as explained in the documentation.

Jenkins Documentation


Jenkins usually runs with its own user,
so changing the home-dir of that user should do the job.

If not sure, simply run a test-job with a shell-command like 'id' or 'whoami' or 'env' to find the user that Jenkins uses.

Also, note that a message of "Started by user anonymous" does not mean that Jenkins started as an anonymous user -
please see this related answers by Sagar and Peter Tran:

how to run jenkins as a different user


For me on Jenkins 2.7.2 on RHEL 7.2 after already starting jenkins and configuring a build, I needed to:

1) Change the jenkins user's home directory

sudo su -
service jenkins stop
vi /etc/passwd
#  change the /var/lib/jenkins to /home/jenkins or whatever 

2) Change the setting in the start script to also find it

vi /etc/sysconfig/jenkins
#   change the JENKINS_HOME to /home/jenkins or what ever

3) Copy all the data to the new location (eg: /home/jenkins)

cd /home
cp -Rf /var/lib/jenkins .
chown -R jenkins:jenkins *

4) Start it back up

service jenkins start

And that seems to have done it for me.