J'ai toujours des problèmes avec RVM installations et sessions Shell non interactives ou interactives. Si la session n'est pas interactive, j'obtiens généralement le command not found
erreur sur différents programmes/fonctions dans la chaîne d'outils RVM/Ruby (c'est-à-dire gem
, rvm
, Ruby
etc.). Il existe trois solutions au problème que je connais:
.bashrc
pour chaque utilisateur. Les changements dépendent de la version d'Ubuntubash --login
avant de travailler avec RVM pour obtenir un shell interactifToutes ces solutions ne sont pas exactement ce que je recherche car j'ai quelques hôtes avec différentes versions d'Ubuntu et pour certaines applications, les solutions décrites ci-dessus ne fonctionnent pas (c'est-à-dire démonisées Suite de gestion de la configuration du chef =). Pour autant que je puisse tracer le problème, cela est basé sur le fait que les scripts Shell dans /etc/profile.d
ne sont exécutés que si l'utilisateur se connecte à une session Shell interactive. Ce qui ne semble pas être le cas si un processus démonisé s'exécute ou si moi ou une application se connecte via ssh.
Ce que je recherche, c'est un moyen d'unifier tous les types de sessions Shell pour exécuter des scripts dans /etc/profile.d
. Idéalement, cette solution devrait fonctionner pour tous les utilisateurs qui peuvent se connecter et pour différentes versions d'Ubuntu (atm utilisée: 10.4, 11.10). Il serait également utile de pouvoir le configurer facilement à l'aide de scripts automatisés ou de recettes Chef.
Remarque: je ne sais pas si les scripts ne sont pas en cours d'exécution dans /etc/profile.d
est le seul problème auquel je suis confronté, je sais que faire bash --login
résout généralement mes problèmes.
Votre problème est que gnome-terminal n'utilise pas --login
pour bash par défaut: https://rvm.io/integration/gnome-terminal/
Pour l'écriture de scripts avec RVM, choisissez l'une des méthodes décrites ici: https://rvm.io/integration/cron/
Il y a plus d'informations sur les fichiers utilisateur rc ici: https://rvm.io/support/faq/#Shell_login