Linux e o misterioso processo de diretórios desaparecidos (e de reaparelhamento)

0

Configurei meu primeiro servidor Ubuntu e imediatamente efetuei login (como myuser ) para começar a personalizá-lo. Eu vou para /opt e corro mkdir sandbox .

mkdir: Cannot create directory 'sandbox' : Permission denied

Permissão negada?!? OK. Então corro sudo -i e insiro a senha de myuser . Execute novamente o comando mkdir e voila! O diretório é criado. Eu saio.

Eu faço login novamente como myuser e navego para /opt e executo ls : nothing! Nenhum diretório visível dentro de /opt ! O que!?!?

Então eu sudo novamente com sudo -i e re-execute ls . Agora , ele vê sandbox/ .

Acho que estou perdendo algum conhecimento fundamental sobre Linux em relação a usuários e raízes. Durante a configuração / instalação do servidor, ele me pediu para criar um usuário, o que eu fiz ( myuser ). Eu assumi que este também seria o usuário root (com privilégios administrativos completos) já que não foi apenas o usuário que eu criei durante a instalação, é o primeiro usuário no sistema!

Então, por que é que myuser não pode:

  • Crie diretórios fora de /home/myuser sem sudo-ing?
  • Veja diretórios criados quando em "modo sudo"

Também sou vago quanto à diferença entre sudo , su e o root user.

Por fim, além de compreender totalmente esses conceitos básicos, gostaria de ter um monte de software de servidor instalado em /opt/sandbox/ , que pode ser executado 24 horas por dia e interagir com o sistema de arquivos local. Agora eu não tenho certeza se devo instalar esses aplicativos enquanto estiver logado como myuser , sudoed como myuser ou outra coisa.

Esses servidores estão dentro de uma LAN doméstica segura e privada, por isso não preciso de controles de segurança mal-intencionados e de "administrador real". Estou apenas criando um ambiente de desenvolvimento simples para uma pequena ferramenta de software que estou escrevendo. Agradecemos antecipadamente por qualquer ajuda com as perguntas acima.

    
por pnongrata 21.08.2012 / 18:57

2 respostas

1

/ opt por padrão é de propriedade do usuário root e group root .

Teste l / e você verá que a pasta / opt é de propriedade de " root root ", que são o usuário e o grupo, respectivamente.

Se você realmente deseja criar e modificar arquivos dentro de / opt com um usuário não-root, você precisará criar uma pasta lá e modificar suas permissões para que ele possa ser livremente acessado por um usuário não-root.

Exemplo:

sudo mkdir /opt/sandbox
sudo chown myuser:users /opt/sandbox

O primeiro comando cria a pasta, mas é de propriedade de root e group root
O segundo comando altera a propriedade ( chown ) para o usuário chamado myuser e o torna parte do grupo users (do qual o myuser faz parte).

    
por 21.08.2012 / 21:45
1

So why is it that myuser can't: ...

Tente

ls -l sandbox
getfacl sandbox

Se a saída não estiver clara ou não explicar o que você está vendo, corte & cole a saída em uma edição da sua pergunta.

I'm also vague on the difference between sudo, su and the root user.

sudo oferece privilégios de raiz elevada (ou seja, administrador) apenas para um comando. Existe um arquivo de configuração para o sudo, no qual você pode controlar quais usuários podem fazer o quê.

su oferece privilégios elevados para vários comandos, fornecendo a você uma nova sessão de shell com um id de usuário root efetivo.

O usuário root é um usuário especial chamado root que você pode ver em / etc / passwd. Há uma dúzia de outros usuários que você sempre encontra em um sistema Unix ou Linux. As pessoas geralmente têm uma conta comum e usam isso para todo o trabalho, exceto as ações que exigem absolutamente privilégios de root (por exemplo, instalar software para uso de todos os usuários no sistema). Isso dificulta que o malware faça coisas ruins e dificulta que você cometa erros irrecuperáveis.

I'd like to have a bunch of server software installed

Acho melhor usar o gerenciador de pacotes do sistema para instalar pacotes. Eu preferiria não criar pastas em / opt manualmente, essa seria minha última escolha.

    
por 21.08.2012 / 19:16