oh mon zsh pour la racine et pour tous les utilisateurs

15

J'ai installé zshet j'utilise des plugins Oh My ZSH. Tout fonctionne bien, mais lorsque je deviens un utilisateur root, il se transforme en thème zsh par défaut.

Que dois-je faire pour faire de la configuration Oh My ZSH la valeur zshpar défaut pour tous les utilisateurs, y compris root?

J'ai essayé d'utiliser le chsh -s /bin/zsh root

Cela m'a donné zshmais pasoh_my_zsh

J'ai aussi essayé cp -R /home/user/.zshrc /root/.zshrcde chercher oh_my_zshroot, mais rien n'a fonctionné.

(Je n'ai pas besoin zshmais j'ai besoin oh_my_zshde tous les utilisateurs du système)

Tummala Dhanvi
la source
Comment devenez-vous root?
frlan
1
Comment avez-vous installé oh my zsh en premier lieu? Pourquoi ne pas faire de même pour root?
Adaephon
1
Je pense que cFINNYla réponse sur stackoverflow.com/a/42193058/1408600 est ce dont vous avez besoin. Je l'ai fait pendant des mois sur des serveurs que j'ai gérés. Cela fonctionne pour root et tous les utilisateurs
ayik

Réponses:

22

J'ai fait des liens symboliques vers mes fichiers zsh dans mon répertoire personnel, cela semble bien fonctionner:

ln -s $HOME/.oh-my-zsh           /root/.oh-my-zsh
ln -s $HOME/.zshrc               /root/.zshrc
Morten
la source
2
Cela devrait être la réponse acceptée, élimine l'agitation d'installer zshdeux fois.
Dominic Motuka
2
Si vous faites cela, cela n'a en fait aucun sens de lier .oh-my-zsh, car le .zshrc fait toujours référence au .oh-my-zsh de votre utilisateur d'origine.
Jam Risser
1
N'a pas fonctionné pour moi lorsque j'essayais de créer un lien entre un non-root et un root, a fini par l'installer également pour le non-root
Akash Agarwal
3
Je l'ai essayé et je n'ai pas pu utiliser les plugins oh-my-zsh en utilisant cette méthode. Ils étaient considérés comme peu sûrs par compinit.
Melebius
7
Je déconseille cette méthode, du moins si l'on ne considère pas d'abord les risques de sécurité. Tout programme que l'utilisateur exécute peut modifier ces fichiers de configuration sans demander à l'utilisateur - car ils appartiennent à l'utilisateur, et non root - et peuvent donc obliger root à effectuer n'importe quelle action la prochaine fois que root utilisera zsh! Seriez-vous prêt à ajouter (ou d'accord avec quelqu'un d'autre à ajouter) un avertissement à ce sujet à cette réponse?
Eliah Kagan
8

Exécutez simplement la commande d'installation en tant qu'utilisateur root (après avoir fait sudo su)

sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
Tummala Dhanvi
la source
1

J'ai installé oh-my-zsh avec un compte root. Maintenant, je me connecte avec un autre compte et installe à nouveau oh-my-zsh dans le répertoire personnel du compte. Cela fonctionne pour le compte non root.

Henri
la source