Eu tenho dois usuários. Cada usuário tem um projeto.
Problema:
Eu preciso trabalhar nos dois projetos simultaneamente, mas sempre tenho que logar no outro usuário para fazer alterações, senão não tenho permissão.
Dividi o projeto para dois usuários porque preciso de outro conjunto de aliases para ambos os usuários. Ambos os projetos estão sendo executados com diferentes versões do PHP e os aliases precisam referenciar o correto. Os aliases são para comandos CLI específicos do projeto.
Pergunta:
Existe uma maneira de dar ao usuário A acesso total ao usuário B e vice-versa?
Se você é realmente o usuário A e o usuário B (ou seja, ambas as contas podem confiar completamente na outra), você pode usar
sudo
para alternar entre elas. Se você colocar seus aliases e outras definições em seus scripts de login/inicialização.bash_profile
ou.bashrc
até mesmo executá-los automaticamente ao alternar.Você pode configurar isso para que nem o Usuário A nem o Usuário B tenham permissões de root, mas apenas permissões suficientes para alternar para a outra conta.
Abra um shell raiz (
sudo -s
). Não o feche até que tenha alterado a configuração e saiba quesudo
continua a dar-lhe acesso root.Use
visudo
(ouEDITOR=nano visudo
se não gostarvi
) e adicione uma linha próxima ao final do arquivo,Teste que você pode ir
sudo
e voltar novamente.usera
userb
Teste se você ainda pode obter acesso root da maneira que usou para alcançar a etapa 1.
Em um comentário, você observa que já faz algo assim, mas deseja poder usar qualquer uma das contas de usuário e escrever diretamente na árvore de diretórios do outro usuário.
Geralmente eu não recomendaria isso, especialmente se você tiver configurações diferentes para o ambiente de desenvolvimento de cada usuário. E principalmente porque parece que podem ser clientes diferentes . No entanto, se você realmente deseja fazer isso, pode colocar os dois usuários no mesmo grupo e garantir que os arquivos sejam criados com permissões de gravação em grupo.
Preparação:
Você pode querer reduzir o
*
curinga nos doisfind
comandos para corresponder apenas à(s) árvore(s) de diretório apropriada(s).Invoque isso no início de cada sessão (talvez em
~/.bashrc
ou em seus scripts de configuração):Você pode achar útil executar variantes por usuário de ambos os
find
comandos a cada horacron
ou no momento do login.Observe que isso não altera o grupo principal dos usuários para
bothusers
. Você pode usarnewgrp bothusers
para fazer isso para a sessão atual - mas esteja ciente de que iniciará um novo subshell.