
Esta respostaexplica .msi
e setup.exe
arquivos para instalação de um aplicativo no Windows.
Existem equivalentes para .msi
arquivos setup.exe
no Debian ou Ubuntu? .deb
Os arquivos do pacote correspondem a ou .msi
alguma setup.exe
outra coisa?
Responder1
Provavelmente mais próximo de um instalador MSI do que de um setup.exe
, um .deb
pacote inclui uma árvore de arquivos para copiar no sistema de arquivos, bem como uma coleção de ganchos pré e pós-instalação para executar (entre outras coisas). Os ganchos podem efetivamente fazer qualquer coisa no sistema, incluindo algo que acho que nunca vi no Windows: adicionar usuários para um serviço do sistema. Uma coisa que eles não podem fazer é instalar outro .deb
pacote — o banco de dados é bloqueado durante a instalação, então isso só pode ser feito através de dependências. A instalação de um .deb
pacote produz então entradas em um banco de dados central de pacotes instalados para facilitar a manutenção.
O ttf-mscorefonts
pacote é interessante porque contém apenas um script para baixar e instalar as fontes. Este script é executado em um desses ganchos.
Mais próximo de setup.exe
baixar o código-fonte de um programa da página inicial do projeto e, em seguida, executar o ./configure && make && sudo make install
, ou qualquer outro método que os autores decidam usar. Como esse método não adiciona o pacote ao banco de dados de programas instalados, removê-lo posteriormente pode ser muito mais difícil.
Outra diferença é que a .deb
especifica suas dependências, para que a instalação adequada possa ser garantida. Pelo que eu sei, no mundo Windows um MSI não pode causar a instalação de outro MSI, por isso setup.exe
é normalmente usado para esse tipo de rastreamento de dependência. Vários comentários observam que os MSIs podem nomear dependências, mas como não existe um banco de dados central de MSIs como existe para .deb
pacotes, a falta de uma dependência causará apenas uma falha na instalação.
Portanto, a .deb
está entre um instalador MSI e um setup.exe
. O pacote pode fazer o que quiser durante seus ganchos pré e pós-instalação, pode nomear e geralmente encontrar suas próprias dependências e deixar um registro de sua instalação em um local central para facilitar a manutenção.
Responder2
Os instaladores binários de arquivo único que vi no Linux eram .sh
arquivos que continham um script de shell concatenado com um blob binário, como este:
#!/bin/bash
tmpdir=$(mktemp -d /tmp/installer.XXX)
tail -n +6 "$0" | tar -xJf - -C "$tmpdir" || exit 1
sudo "$tmpdir/setup.sh"
rm -rf "$tmpdir"
exit
[binary content follows]
Isso é essencialmente equivalente a um setup.exe
que também se autoextrai para uma pasta temporária e executa o instalador real a partir daí.
Responder3
Tirado de:https://askubuntu.com/questions/13415/what-are-run-files/13416#13416
Um arquivo .run normalmente é um programa personalizado que precisa ser executado para instalar um programa. geralmente não são suportados porque não rastreiam para onde vão os arquivos e normalmente não fornecem um método de desinstalação. não há como ter certeza do que o script fará no seu sistema, portanto eles são considerados inseguros.
Eles estão próximos do arquivo exe do Windows e, como tal, apresentam os mesmos problemas.