Descobrir tipo do sistema

1. Descobrir tipo do sistema

Alexandre Tavares
aleotavares

(usa Ubuntu)

Enviado em 31/08/2011 - 19:30h

Boa noite pessoal.

Estou fazendo um script para instalar virtualbox e fazer importação de uma vm específica.

Para tal eu preciso descobrir como instalar o virtualbox se por rpm ou por dpkg, pois não tenho como garantir que os computadores em que será instalado, terá todas as dependências para a compilação da versão genérica (.run) do virtualbox.

Estou tendo problema ao testar os comandos, pois se testo do dpkg em sistema baseado no red hat, é enviada para a tela mensagem dizendo que o comando não foi encontrado. Segue o comando:

so = $(which rpm)
so2 = $(which dpkg) #aqui ocorre o erro, pois o sistema onde o script está sendo testado é baseado em red hat.

Preciso detectar o tipo de sistema para poder executar a instalação com o comando e pacote adequado.

Alguém pode me ajudar?

Desde já agradeço.


  


2. Re: Descobrir tipo do sistema

Alexandre Gonçalves Monteiro da Silva
alexandregms

(usa Ubuntu)

Enviado em 31/08/2011 - 19:36h

uname -a

Vc também pode extrair campos específicos desta saída usando o cut ou awk


3. Re: Descobrir tipo do sistema

Alexandre Tavares
aleotavares

(usa Ubuntu)

Enviado em 31/08/2011 - 19:38h

O uname -a só me da o kernel, com as informações que ele me retorna não consigo decidir entre usar o rpm ou dpkg para a instalação.

Valeu pela ajuda.


4. Re: Descobrir tipo do sistema

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 31/08/2011 - 20:13h

Eu testei no meu caso para saber qual era a distro com o comando:

$ cat /etc/[A-Za-z]*[_-][rv]e[lr]* ;
=======================================
retorno:

squeeze/sid
DISTRIB_ID=LinuxMint
DISTRIB_RELEASE=11
DISTRIB_CODENAME=katya
DISTRIB_DESCRIPTION="Linux Mint 11 Katya"
=========================================
oops: copiei esta linha de comando de um script que baixei aqui do VOL. ;)

Acho que deve usar também o uname -a pra confirmar.


Linux ga-tux 2.6.38-11-generic #48-Ubuntu SMP Fri Jul 29 19:02:55 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

Acho que o são importantes neste teste:
---------------------------
#48-Ubuntu
x86_64 x86_64 x86_64 GNU/Linux
DISTRIB_ID=LinuxMint
DISTRIB_RELEASE=11
DISTRIB_CODENAME=katya
---------------
http://www.linuxsocial.com/dashboard/tab:group/g:scriptshell


5. Re: Descobrir tipo do sistema

Perfil removido
removido

(usa Nenhuma)

Enviado em 31/08/2011 - 20:18h

Tem isso aqui tbm sai daqui do VOL tbm

more /etc/issue


6. Re: Descobrir tipo do sistema

Perfil removido
removido

(usa Nenhuma)

Enviado em 31/08/2011 - 20:28h

@AprendiNoLinux Muito show! Quem foi que bolou isso? Genial!


7. Re: Descobrir tipo do sistema

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 31/08/2011 - 20:43h

@mrk3004 achei em um script que baixei [riscado]no VOL[/riscado]. Só sei que separei este comando e inclui em uma biblioteca de utilidades que estou montando rsrs. Desculpe não lembrar quem foi pra dar os créditos. Vou pesquisar e logo mais aviso.



8. Re: Descobrir tipo do sistema

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 31/08/2011 - 20:53h

@mrk3004 encontrei no forum pesquisando agora: http://www.vivaolinux.com.br/topico/UbuntuBR/Confirmar-a-distribucao

O local onde peguei o comando foi neste Script: http://pastebin.com/BDQiS801


9. Re: Descobrir tipo do sistema

Alexandre Tavares
aleotavares

(usa Ubuntu)

Enviado em 31/08/2011 - 21:18h

Até agora as dicas não deram certo nessa distro, será que é possivel suprimir erro no shellscript, para eu poder fazer com os comandos abaixo como citado na pergunta? será que resolveria?

so = $(which rpm)
so2 = $(which dpkg)

Obrigado.


10. Re: Descobrir tipo do sistema

Raimundo Alves Portela
rai3mb

(usa Outra)

Enviado em 31/08/2011 - 21:54h

Essa sua tentativa com:
so = $(which rpm)
so2 = $(which dpkg)

Não daria certo, no meu Debian os dois comandos retornam verdadeiro (fiquei até curioso, tenho rpm instalado e nem me lembro :-) )

Acho que o caminho está no simples e velho /etc/issue (só não tenho certeza se tem ele no Red Hat like, não testei no meu Fedora aqui ainda)
$ cat /etc/issue
Debian GNU/Linux 6.0 \n \l

Abraços



11. Re: Descobrir tipo do sistema

Alexandre Tavares
aleotavares

(usa Ubuntu)

Enviado em 31/08/2011 - 21:57h

O problema é que o /etc/issue não existe aqui no note em que to testando, eu preciso de uma solução mais genérica possível, senão vou ter que apelar por fazer dois scripts uma pra .deb e outro pra .rpm

vlw.


12. Re: Descobrir tipo do sistema

Alexandre Gonçalves Monteiro da Silva
alexandregms

(usa Ubuntu)

Enviado em 31/08/2011 - 22:06h

Pelo que pesquisei o /etc/issue nao é padrão para todas as distros.
O padrão da RedHat é /etc/*release e para as demais distros vc pude usar /etc/*version.
Boa sorte!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts