De onde os aplicativos linux são instalados?

0

Pedimos desculpas antecipadamente se isso não for o caso.

Quando eu quero instalar um aplicativo no Ubuntu, digamos, eu vou para o terminal e digito algo que indica que eu quero que o aplicativo seja instalado.

O que eu não faço é digitar o local exato do qual eu quero que ele seja instalado.

Isso é bem diferente de, digamos, Windows ou OS X baseados em GUI, em que um usa um navegador para navegar em alguma página da WWW, faz o download de um pacote grande e clica duas vezes nele para instalá-lo.

Minhas perguntas:

  1. De onde vêm os aplicativos linux?
  2. Quem garante que esses repositórios não foram corrompidos com malware?
  3. Estou presumindo que há vários repositórios. E, em caso afirmativo, como meu PC Linux decide em qual repositório baixar um pacote?
  4. Todas as diferentes distros têm o mesmo repositório ou são diferentes?
  5. Se eu estiver usando uma versão mais recente do Ubuntu, se eu tiver uma versão leve como Puppy Linux, e digitar o mesmo comando no terminal para instalar algum aplicativo, eu irei instalar o mesmo aplicativo em ambos os casos, ou diferente? Como tudo isso é tratado para que a versão errada não seja instalada no lugar errado?
por thanks_in_advance 20.12.2013 / 03:16

2 respostas

2

Muitas perguntas. Muitas dessas questões são profundas. E só consegui resumir.

Sua pergunta inicial:

What I don’t do is type the exact location I want it to be installed from.

O gerenciador de pacotes sabe onde e como instalar os programas. Isso é necessário para que o gerente saiba o que está instalado e mantenha o sistema limpo. O Linux usa a filosofia de um programa para executar uma tarefa e executá-la bem. Quando você instala um programa no Linux, o gerente procura o que é necessário e instala os pacotes para você.

  1. Where do the linux apps come from?

    A maioria dos binários vem dos repositórios. Algumas você se constrói a partir do código-fonte.

  2. Who ensures that those repositories have not been corrupted with malware?

    Os pacotes são assinados por chaves privadas do GPG. Isso impede que qualquer pessoa que não seja o desenvolvedor publique código com o mesmo nome. Então, o defensor dos repositórios é a criptografia através da matemática. Mas na realidade você precisa confiar nos repositórios. Não adicione repositórios aleatórios. Usar repositórios do Ubuntu é seguro porque você sabe quem os gerencia.

  3. I’m presuming that there are multiple repositories. And if so, how does my linux PC decide which repository to download a package from?

    O mantenedor da distro Linux decide qual respitory usar. Com o Ubuntu, cada versão recebe um repositório.

  4. Do different distros all have the same repository, or different?

    Diferente. Existem muitas distribuições diferentes, o Ubuntu usa os repositórios Ubuntu / Debian, a Red Hat usa as suas próprias. Só depende da Distro.

  5. If I’m using some full-featured latest release of Ubuntu, versus if I’m a light-weight version such as Puppy Linux, and I type the same exact command into terminal to install some app, will I be installing the same app in both cases, or different?

    Cada Distro usa uma maneira diferente de acessar os repositórios. Para o Ubuntu, isso é apt-get , mas na Red Hat isso é yum . Algumas Distros têm uma estrutura de arquivos e uma maneira de fazer coisas um pouco diferentes. Por exemplo, Debian mãe do Ubuntu, usa um agente de email completamente diferente do Ubuntu. Um gerenciador de pacotes não funcionará em todas as distribuições do Linux. Nem queremos isso. Um monopólio é ruim para a segurança e as liberdades que o Linux traz.

  6. How is all of this handled so that the wrong version doesn’t get installed in the wrong place?

    O gerenciador de pacotes registra todos os softwares instalados (que o gerenciador de pacotes instalou). Mas às vezes isso não dá certo (você pode instalar a partir do código-fonte), portanto, é realmente o usuário que lida com qualquer problema.

por 20.12.2013 / 03:49
0
  1. Depende exatamente do que você está perguntando. Você os obtém dos repositórios. Os repositórios obtêm pacotes binários (não estamos contando com o Gentoo aqui) compilados por alguém que é o mantenedor do pacote, ou um bot que faz isso automaticamente. Isso se aplica somente ao software de código aberto (software com código disponível publicamente e legalmente distribuível). E o código-fonte vem dos desenvolvedores, que enviam um tarball para o site ou para um site de hospedagem, como SourceForge ou Github . Vendo que você é um iniciante, NÃO baixe e compile os pacotes você mesmo.

  2. Como Linus disse "se houver olhos suficientes, todos os bugs são superficiais" ( Lei de Linus ). Isso também se aplica ao software mal-intencionado. QUALQUER PESSOAL (sim, até você) pode rever o código dos pacotes, verificar md5sums, chaves GPG, etc. para garantir que o software não contenha códigos que possam prejudicá-lo. Os mantenedores de pacotes (os caras que colocam o código fonte da internet e empacotam nos repositórios) são responsáveis pelo pacote. No entanto, o malware é MUITO menos detectável em softwares de código fechado tosse Skype tosse . Se você é do tipo paranóico, evite software de código fechado.

  3. Se você usa uma distribuição do Linux, é bem provável que ele tenha seu próprio repositório já configurado (como o Ubuntu). Vários repositórios podem ser armazenados em um único host, como multiverso, universo, restrições, etc. Os diferentes repositórios no mesmo host possuem pacotes diferentes, portanto, não há conflitos. É por isso que os repositórios de terceiros podem ser um problema.

  4. Algumas distribuições baseadas em outras distros (comuns no mundo Linux) podem usar seus próprios repositórios para pacotes básicos que somente eles usam, mas obtêm os pacotes que o usuário deseja da distribuição em que estão baseados. Um ótimo exemplo é o Linux Mint. O Linux Mint tem uma carga muito pequena em seus servidores e só tem pacotes principais pela equipe Mint. No entanto, se você quiser instalar um pacote aleatório (como o SuperTuxKart), o Mint o buscará nos repositórios do Ubuntu. O cache de pacotes é sincronizado de vez em quando para que seu computador saiba quais pacotes estão onde.

  5. Você pode ou não estar usando o mesmo comando. O comando varia dependendo do gerenciador de pacotes que uma distro usa. Debian, Ubuntu etc. usam APT e Red Hat, Fedora etc. usam o YUM. Se o pacote tiver o mesmo nome, você provavelmente (em raras situações não) obterá o mesmo pacote. No entanto, você provavelmente obterá uma versão diferente. Isso novamente depende de qual repositório sua distro usa. Repositórios desatualizados e / ou estáveis obtêm software antigo, reexpansão / novos repositórios obtêm a versão mais recente.

O gerenciador de pacotes lida com todos os pacotes e garante que tudo esteja no lugar certo.

Sugiro que você leia algumas páginas Man ;)

Bem-vindo ao mundo do Linux!

    
por 20.12.2013 / 04:06