oh meu zsh para a raiz e para todos os usuários

15

Eu instalei zshe estou usando os plugins Oh My ZSH. Tudo funciona bem, mas quando eu me torno um usuário root, ele muda para o tema zsh padrão.

O que devo fazer para tornar a configuração Oh My ZSH como padrão zshpara todos os usuários, inclusive root?

Eu tentei usar o chsh -s /bin/zsh root

Isso me deu, zshmas nãooh_my_zsh

Também tentei cp -R /home/user/.zshrc /root/.zshrcobter oh_my_zsha raiz, mas nada funcionou.

(Não preciso, zshmas preciso oh_my_zshde todo o usuário no sistema)

Tummala Dhanvi
fonte
Como você está se tornando raiz?
frlan 8/09/14
1
Como você instalou oh my zsh em primeiro lugar? Algum por que não fazer o mesmo para o root?
Adaephon
1
Acho que cFINNYa resposta em stackoverflow.com/a/42193058/1408600 é o que você precisa. Eu fiz isso por meses nos servidores que eu consegui. Ele funciona para o root e todos os usuários
Ayik

Respostas:

22

Eu fiz links simbólicos para meus arquivos zsh no meu diretório home, que parece funcionar bem:

ln -s $HOME/.oh-my-zsh           /root/.oh-my-zsh
ln -s $HOME/.zshrc               /root/.zshrc
Morten
fonte
2
Esta deve ser a resposta aceita, elimina a confusão de instalar zshduas vezes.
Dominic Motuka 17/08/16
2
Se você fizer isso, na verdade não faz sentido vincular .oh-my-zsh, porque o .zshrc ainda faz referência ao .oh-my-zsh do usuário original.
quer
1
Não funcionou para mim ao tentar link de não-raiz para raiz, acabou instalando-o para o não-root assim
Akash Agarwal
3
Eu tentei e não podia usar os plugins oh-my-zsh usando esse método. Eles foram considerados inseguros por compinit.
Melebius
7
Eu recomendo esse método, pelo menos se você não considerar primeiro os riscos à segurança. Qualquer programa executado pelo usuário pode editar esses arquivos de configuração sem avisar o usuário - porque eles pertencem ao usuário, não root - e, portanto, pode fazer com que o root execute qualquer ação da próxima vez que o root usar o zsh! Você gostaria de adicionar (ou concordar com alguém adicionando) um aviso sobre isso a esta resposta?
Eliah Kagan 30/07/19
8

Basta executar o comando install como usuário root (depois de executar o sudo su)

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

Eu instalei o oh-my-zsh com a conta root. Agora, eu entro com outra conta e instalo o oh-my-zsh novamente no diretório inicial da conta. Funciona para a conta não raiz.

Henry
fonte