Podem dois sistemas operacionais diferentes compartilhar uma partição raiz?

3

Tenho o Ubuntu instalado em um disco rígido externo e gostaria de instalar o SteamOS e gostaria de saber se, ao particionar / instalar, eles podem compartilhar a partição raiz, para que haja mais espaço para eles, caso precisem.

Se não for possível, alguém poderia explicar por quê?

Obrigado!

    
por Amolith 08.09.2017 / 03:49

1 resposta

7

Resposta simples

Não.

Explicação

Um sistema operacional do tipo Unix (incluindo o Ubuntu ou qualquer outro SO baseado em Linux) é definido em grande parte por arquivos que estão em locais fixos em relação ao diretório raiz ( / ), como /etc/fstab (que descreve o partições) e principais binários em /bin e /sbin . Cada distribuição tem seu próprio conjunto exclusivo de arquivos nesses locais. (No caso de alguns arquivos, como /etc/fstab , eles são personalizados para uma instalação específica; mas isso significa que dois sistemas operacionais que compartilhavam os arquivos exigiriam configurações idênticas, o que significa que eles seriam idênticos e, portanto, não muito dois SOs.) Esses arquivos de chaves estão localizados principalmente em diretórios fora da raiz ( / ), mas estão em diretórios que podem não ser montados a partir de sistemas de arquivos separados (como /etc , /bin e /sbin ), então o fato de eles estarem em diretórios não importa. Em um sentido muito real, o sistema de arquivos raiz ( / ) é o SO; não pode ser compartilhado. (Você pode montar o diretório raiz de uma distribuição em outro lugar em outra distribuição, mas isso não está compartilhando no sentido em que acredito que você quis dizer.)

A maneira técnica de eliminar a resposta acima

Sua pergunta é sobre uma partição "root compartilhada. " (ênfase adicionada) Minha resposta está relacionada a diretórios (ou, por implicação, sistemas de arquivos ). Estes não precisam ser exatamente equivalentes. Mais notavelmente, se você usar o Gerenciador de Volume Lógico (LVM), vários sistemas de arquivos podem compartilhar uma única partição; eles seriam apenas em volumes lógicos distintos (LVs). Assim, você pode instalar múltiplas distribuições Linux em um único volume físico LVM (PV, ou seja, partição). Eu não acho que é isso que você quis dizer; Eu acho que você estava perguntando sobre uma raiz compartilhada ( / ) sistema de arquivos / diretório apesar do fato de você ter usado a palavra partição.

EDIT: Uma maneira ainda mais estranha de fazê-lo funcionar

Outra maneira de obter duas distribuições para compartilhar uma partição raiz ( / ) ocorreu para mim: O kernel Linux executa um programa chamado init para lidar com tarefas de inicialização. É possível dizer ao kernel para usar outro programa passando a opção init= kernel, como em init=/foo/bar para executar /foo/bar . Em princípio, você poderia usar essa opção para passar o kernel de uma distribuição a um programa init não padrão que, por sua vez, procura programas de suporte em locais não padrão. Essa abordagem exigiria a criação de uma distribuição totalmente nova ou, pelo menos, a modificação de alguns componentes principais - talvez para instalar tudo o que precisa em algum diretório, como /myweirddistrib , /myweirddistrib/etc , /myweirddistrib/sbin e assim por diante.

Embora isso deva funcionar em princípio, na prática isso exigiria muito trabalho. Muitos programas incluem caminhos padrão codificados ou dependem dos caminhos padrão definidos nos arquivos de configuração, e você precisa modificar todos eles para que funcione, o que significa que você não conseguirá obter -prateleira "distribuição para o trabalho; você teria que criar a distribuição você mesmo. Você pode usar uma distribuição padrão como base, mas precisa reconstruir muitos pacotes (talvez a maioria ou todos). Qualquer coisa que não fosse modificada acabaria usando os arquivos "native" / -resident distribution, o que poderia resultar em alguns problemas estranhos. Assim, esta abordagem é mais uma ideia teórica do que uma sugestão prática.

    
por Rod Smith 08.09.2017 / 16:32