[Resolvido] Habilitar temas do 'Oh My Zshell' em modo 'root'

Colei esse conteúdo no meu .zshrc e funcionou. digita aí e manda a saída:

cd ~
pwd
source .zshrc

trex@TRex-PC ~ % cd ~
trex@TRex-PC ~ % pwd
/home/trex
trex@TRex-PC ~ % source .zshrc
trex@TRex-PC ~ % su
TRex-PC# cd ~
TRex-PC# pwd
/root
TRex-PC# source .zshrc
source: arquivo ou diretório inexistente: .zshrc
TRex-PC#

No tty2 ele fica como deveria ficar

root@TRex-PC~#

cd ~
ls -la .zs*

O que diz sobre as permissões do arquivo?

trex@TRex-PC ~ % cd ~
trex@TRex-PC ~ % ls -la .zs*
-rw-r–r-- 1 trex 2799 ago 24 13:41 .zshrc
trex@TRex-PC ~ %

passa pra root, vai no /root e dá o ls

su
cd ~
ls -la .zs*

Aqui funcionou assim.

Provavelmente ficou algo por editar ou não está certo, use o comando chsh para mudar o shell do usuário e copie o arquivo .zshrc para /root, ele vai até pegar o tema do seu usuário caso use o oh-my-zsh.

Ex: chsh --shell /bin/zsh root

@Deleterium

trex@TRex-PC ~ % su
Senha:
TRex-PC# cd ~
TRex-PC# ls -la .zs*
zsh: no matches found: .zs*
TRex-PC#

@LeoLucena

Ai vc ta mudando o Shell do konsole so, ou vc usa o comando chsh ou muda no arquivo passwd.

@anon94729332 Não to usando oh-my-zsh.

trex@TRex-PC ~ % su
Senha:
TRex-PC# cd ~
TRex-PC# ls -la .zs*
zsh: no matches found: .zs*
TRex-PC#

Agora que eu vi, você já está no zsh, pra tirar a dúvida, entre como root e rode um: which $SHELL. Para copiar da home para a pasta root, como super usuário digite cp -av /home/seu_user/.zshrc /root

Roda isso:

su
cd ~
rm .zshrc
touch .zshrc
nano .zshrc

Cole o conteúdo do .zshrc que você quer. Salve e feche (Ctrl + o), (enter) , (Ctrl + x)

exit
su
2 Curtidas

@anon94729332

trex@TRex-PC ~ % su
Senha:
TRex-PC# which $SHELL
/bin/zsh
TRex-PC#

@Deleterium

trex@TRex-PC ~ % su
Senha:
TRex-PC# cd ~
TRex-PC# rm .zshrc
rm: não foi possível remover ‘.zshrc’: Arquivo ou diretório inexistente
TRex-PC# touch .zshrc
TRex-PC# nano .zshrc
TRex-PC# exit
trex@TRex-PC ~ % su
Senha:
root@TRex-PC /home/trex #

Agora foi, não sei o q era, mais o arquivo existia no root( pelo menos no dolphin).


Depois do processo era para existir .zshrc?
Mais quando entro no root ele me joga para minha pasta home.

O root do sistema de arquivos é a pasta base de tudo. Conhecido como root, pasta raiz, raiz do sistema. Não confundir com a pasta /root que é o diretório pessoal do usuário root, também conhecido como administrador ou super usuário.

Então a resposta para sua primeira pergunta já era a primeira resposta: Copie o .zshrc e cole no /root. A imagem mostrava o arquivo na sua pasta pessoal de usuário ( /home/trex ). Esse comando deveria ser executado no shell como super-usuário “cp /home/trex/.zshrc /root” e teria resolvido o problema. O Dolphin rodando como usuário não tem permissão de escrever na pasta /root , então ele pode ter falado que copiou mas não fez.

1 Curtida

Eu sei o dolphin ñ tem permissão de super usuário. Eu usei pro gerenciador de ficheiro.

@T-Rex_numa_Suzuki A solução desse tópico é exatamente o quê o @Danielaustlab e o @Deleterium falaram. Acabei de fazer isso aqui e funcionou de primeira, não precisei nem reiniciar a máquina.

É só abrir o terminal e executar os comandos:

sudo su

cp /home/seuusuario/.zshrc /root

E problema resolvido!

Se não funcionou aí é provavelmente porquê tu fez alguma coisa errada, tenta desinstalar o OhMyZshell e o ZSH, conforme já te ensinei no outro tópico, e refazer o processo do tutorial. Depois execute os comandos que eu falei acima.

1 Curtida

@T-Rex_numa_Suzuki @Deleterium @Danielaustlab

Complementando a resposta de vocês, copiar o .zshrc para a pasta /root funcionou, o tema apareceu normalmente. Porém toda vez ao entrar no modo root com sudo su apareciam alguns erros referentes ao proprietário da pasta /home/user/.oh-my-zsh. Então para resumir todo o procedimento e encerrar esse tópico, são 3 passos (Lembre-se de substituir a palavra “user” pelo seu nome de usuário):

  • 1 - Copiar o arquivo .zshrc para a pasta /root. (Como vocês falaram).

sudo su

cp /home/user/.zshrc /root

  • 2 - Copiar a pasta /home/user/.oh-my-zsh para /root.

cp -r /home/user/.oh-my-zsh /root

  • 3 - Alterar o arquivo /root/.zshrc para que fique da seguinte forma:

Agora é só reiniciar o terminal e pronto!

Como podem ver:

3 Curtidas

@Jedi_Fonseca Eu uso ArchLinux, mais configs do Zsh normal sem temas ou alteração não estavam sendo ativado no modo root. Mais to testando numa maquina virtual o Oh My Zshell para ver como funciona.
Se vc quiser pode testar a minha config do .zshrc que eu postei ali em cima, é o Zsh vanilla com mudanças no .zshrc que eu peguei no pagina do Arch.

Não faz diferença qual Distro tu usa, aqui no artigo que eu postei tem instruções de como instalar no Arch também. E também não importa qual tema tu esteja usando, o procedimento continua sendo o mesmo que eu postei. Só seguir direitinho.

1 Curtida

Vlw, funcionou aq
eu só tive que fazer um passo a mais que foi ativar o zsh como shell padrão pro root

sudo usermod --shell $(which zsh) root

Screenshot_20200117_135241

2 Curtidas

Eu fiz o seguinte, mudei o terminal pelo etc/passwd e deixei uns links dos arquivos do ohmyzsh no pasta root, e funciona de boa!

Isso não era necessário na época em que fiz o post. Por algum motivo passou a ser, inclusive aqui. Vou editar o post e adicionar esse comando. Valeu brother!

2 Curtidas