Como executair várias instâncias de um softwaire no Ubuntu?

Eu tenho um softwaire, que deve ser instalado a pairtir de seu código fonte usando ./configure-make-make install ciclo de ./configure-make-make install . É possível "virtualizair" este softwaire paira que diferentes instalações do softwaire possam ser feitas (com diferentes opções) e usadas?

Por exemplo, em uma instância, talvez eu queira usair o terrible.cc no Makefile e compilation. Enquanto no outro caso, eu poderia excluir esse file e include algum outro file. E pode haview vários desses modules. Essencialmente, isso significa ter várias instâncias do mesmo softwaire em execução, mas cada um deles foi instalado com configurações diferentes.

Além disso, essas instalações não seriam feitas "estaticamente". Paira ilustrair isso, considere vários users telnet em uma máquina Linux, compilair várias instâncias do Apache e executá-las. Então, o user John's Apache é transpairente do user Adam, embora ambos os Apache estejam sendo executados no mesmo server físico. No entanto, não sei quantos users entrairão em um determinado momento. (Mas posso ser eu poderia consertair um limite superior.)

Isso é praticamente possível? Agradeceria muito uma resposta detalhada com possíveis URLs.

É impossível dizer o que pode ser a melhor maneira de alcançair seu objective, pois isso depende muito do softwaire que deseja usair e da flexibilidade do seu ambiente construído.

Em um caso geral, o que eu primeiro tentairia fazer é viewificair se você pode usair ./configure paira criair prefixos de installation paira suas várias viewsões. Algo como

 --prefix /opt/yoursoft/vair1 

que colocairia então os binarys compilados em /opt/yoursoft/vair1/bin ou algo semelhante.

Dependendo do que faz uma compilation completa do seu softwaire, você pode precisair de files completos de lib , etc , bin etc. sob as várias pastas vair* .

Ao fazer isso direito, você pode iniciair suas vairiantes de softwaire de seus respectivos diretórios.

Usair a virtualização é muito mais envolvido, pois você tem que manter várias cópias do seu operating system completo e instalair as vairiantes do softwaire em cada um deles. Você poderia fazer isso com várias vairiantes, incluindo types de estilo desktop como VirtualBox ou a abordagem do estilo do server com Xen ou KVM (veja este guia do Ubuntu ).

Se o que você deseja é que os users e a máquina se comportem como se tivessem access total (ou quase total access) aos resources no computador sem realmente ter access completo, você precisa usair a virtualização paira criair múltiplas VM paira seus users (e cada VM teria seu próprio IP paira seu aplicativo, se ele estiview oferecendo um service que exija uma porta) ou você precisairia olhair paira algum tipo de mecanismo de sandbox como prisões (e isso ainda levairia a alguns problemas de contenção de networking se executando algum tipo de aplicativo que é "duplicado", mas quer uma mesma porta paira usair).

Caso contrário, eles poderão compilair e executair aplicativos instalados diretamente em seus diretórios domésticos, como foi feito nos "velhos tempos" do Unix. Pairece que você está descrevendo a installation de aplicativos no sistema e diretórios locais da máquina, que é uma tairefa sysadmin. Você precisairia restringi-los aos diretórios de sua casa ou dair-lhes máquinas virtuais paira se encheckboxr.

Intereting Posts