3

Jenkins fonctionnait correctement sur une machine Linux RedHat (une machine EC2 propre sur AWS), jusqu'à ce que je décide de changer le JENKINS_HOME. J'ai simplement déplacé le répertoire Jenkins de /var/lib/jenkins à /home/ec2-user/jenkins, puis créé un lien symbolique. (J'ai suivi la première réponse à cette question: Change JENKINS_HOME on Red Hat Linux?).Erreur "Impossible de créer le répertoire de base" lors du changement JENKINS_HOME

Cependant lorsque je redémarre Jenkins je reçois l'erreur:

Unable to create the home directory ‘/var/lib/jenkins’. This is most likely a permission problem. To change the home directory, use JENKINS_HOME environment variable or set the JENKINS_HOME system property.

J'ai essayé de changer JENKINS_HOME dans /etc/sysconfig/jenkins, la mise au nouveau dossier (que je suppose défaites le point d'un lien symbolique?) Et je reçois encore la même erreur

Unable to create the home directory ‘/home/ec2-user/jenkins’.

Il est à des fins de sauvegarde, de sorte que j'ai toutes les données Jenkins dans un stockage de données externe monté (AWS File System élastique).

+0

Vous devriez répondre à votre propre question; voir http://stackoverflow.com/help/self-answer Ne modifiez pas la réponse dans la question. – SiKing

Répondre

2

Je l'ai compris. Cette erreur persistait car le dossier/jenkins/devait être accessible à l'utilisateur 'jenkins' pour exécuter les processus, mais il ne pouvait pas accéder à ce dossier car il appartient à l'utilisateur connecté. J'ai changé le montage en/var/où jenkins peut accéder en tant que processus global, et cela a résolu le problème.

-1

L'erreur semble assez évident: « Ceci est probablement un problème d'autorisation. »

Je suppose que /home/jenkins n'existe pas, et l'utilisateur jenkins ne dispose pas des autorisations d'écriture dans /home. Si vous avez déménagé la maison Jenkins, vous l'avez probablement fait en tant que root et vous avez oublié de mettre à jour les permissions des propriétaires.

Vous devez créer la maison, quelque chose comme ceci:

sudo service jenkins stop 
# make the changes in /etc/sysconfig/jenkins 
sudo mkdir --parents /home/jenkins # or mv, in your case 
sudo chown --recursive jenkins /home/jenkins 
sudo service jenkins start 
+0

J'ai déplacé le répertoire entier de jenkins dans/home/jenkins pour qu'il existe. Néanmoins, j'ai suivi ces commandes mot à mot et cela n'a pas résolu le problème (même message d'erreur que précédemment). – ru111

+0

@ ru111 Si vous avez déménagé la maison Jenkins, je devine que vous l'avez fait en tant que root (ou un autre utilisateur). J'ai mis à jour ma réponse: Vous devez passer récursif à la commande 'chown'. – SiKing

+0

Merci cependant l'erreur est toujours là. Je pense qu'il peut avoir quelque chose à voir avec les autorisations sur le système de fichiers élastique AWS ... – ru111