Separe totalmente duas contas sem instalar sistemas operacionais separados?

4

Nossa classe está finalmente instalando o Mint Linux em nossas máquinas. O problema é que nosso professor está com medo de jogarmos jogos de guerra contra as duas classes que usam os computadores. Sua solução é instalar dois sistemas operacionais separados; devido a esse fato, nós precisaremos de habilidade de sudo, mas ele não quer que nós consigamos quebrar o sistema operacional para a outra pessoa (jogando jogos de guerra ou cometendo erros). Sua solução é instalar dois sistemas operacionais separados, mas não gosto dessa ideia por alguns motivos. Primeiro, temos o MBR, o que limita o número de partições; e segundo, é simplesmente irritante, porque ambos são o Mint Linux, então escolheremos o errado uma boa parte do tempo. Alguém sabe de uma maneira de separar os dois sistemas operacionais para que uma pessoa não possa estragar tudo para o outro? Estou menos preocupado em jogar jogos de guerra porque poderíamos fazer isso com as partições separadas e porque é menos importante. Alguém tem alguma ideia?

Eu estava pensando em limitar o poder que um usuário tem enquanto ainda permite que ele use root; no entanto, isso pode causar problemas mais tarde. O professor quer controlar a conta raiz, é claro.

    
por Griffin 09.04.2013 / 18:45

2 respostas

6

Existem duas respostas óbvias:

  1. Dê a cada usuário sua própria imagem de máquina virtual. Dentro da máquina virtual, o usuário tem acesso root; fora da máquina virtual, nenhuma. Se o seu hardware suportar, kvm funcionará muito bem para isso. E as imagens das máquinas virtuais são apenas arquivos, por isso são fáceis de copiar, etc. Você pode usar o armazenamento copy-on-write, o que economizará espaço em disco, se isso for uma preocupação.
  2. Use o suporte a namespaces newfangled no Linux 3.8, que na verdade permite que todos na máquina tenham raiz em sua própria área. Depende especialmente do que você precisa de root. (Porém, você pode realmente rodar uma distro separada dentro de um espaço de nomes, ele apenas tem que compartilhar o mesmo kernel).

Ao contrário das partições separadas (que são muito fáceis para o root mexer - basta montá-las), as duas acima são realmente seguras (bem, você tem acesso físico à máquina, então essas vulnerabilidades se aplicam independentemente).

Também há coisas mais dolorosas, como recursos e SELinux, dependendo do motivo pelo qual você precisa de acesso root (sudo). Ou, claro, se você precisar apenas de um comando ou dois, o sudo tem suporte embutido para limitar quais comandos podem ser executados.

edit: Para mais informações sobre namespaces, consulte espaços de nomes em operação, parte 1: visão geral dos namespaces , que tem seis partes no total. Os namespaces estão entrando no Linux lentamente, começando há vários anos. As partes 5 e 6 cobrem a parte final, adicionada em 3.8, que permite que qualquer usuário aleatório tenha raiz em seu próprio namespace.

    
por 09.04.2013 / 19:15
0

Em vez de instalar duas versões do mesmo sistema operacional, o professor pode apenas configurá-lo uma vez com o sistema de arquivos raiz em um volume lógico e configurar o grub para inicializar a partir de dois snapshots diferentes daquele LV. Ele pode colocar seus nomes na entrada de inicialização, por isso é fácil escolher, definir uma senha no grub e desativar o tempo limite do grub (para que você não se sinta apressado em escolher algo). Ele só precisa se certificar de que o instantâneo tenha espaço suficiente para cobrir o que vocês vão fazer com ele.

Se ele precisar atualizar o LV referenciado, ele pode editar a linha de comando em uma das outras entradas (depois de inserir sua senha) e apenas alterar root = nos argumentos do kernel para ser o LV real em vez de um instantâneo.

Isso faria o que ele está querendo de uma forma um pouco mais consciente dos recursos, mas no final das contas é uma má idéia.

Em última análise, eu tentaria explicar a ele que, com o LiveCD, ele provavelmente está fazendo xixi, se vocês estão querendo fazer isso, instalar em duas partições diferentes ou inicializar a partir de um instantâneo não o impede, apenas muda as etapas exatas pelas quais você passará para fazê-lo.

    
por 09.04.2013 / 19:20