Mostrando postagens com marcador distribuição. Mostrar todas as postagens
Mostrando postagens com marcador distribuição. Mostrar todas as postagens

domingo, 8 de julho de 2012

Atualizando as principais distros Linux

Existem dezenas de distribuições Linux, entretanto a grande maioria são baseadas nas quatro principais, Slackware, Debian, Suse e Red Hat, herdando as principais características e funcionalidades. Demonstrar o modo de operação destas quatro distros já é suficiente para abranger quase todas.

Uma das grandes características das distribuições Linux está na funcionalidade de atualização de todo o sistema. Independente do formato do pacote adotado, seja .rpm, .deb ou .txz, as distros dispõem de ferramentas que gerenciam a base de pacotes instalada. Cada distribuição, dentre as quatro base, terão ferramentas distintas para esta operação.

Apenas pela linha de comando, é possível executar esta atualização geral do sistema, substituindo os pacotes antigos por versões novas. A seguir veremos as particularidades de cada uma delas e os respectivos comandos básicos:

Red Hat, Fedora, CentOS:

Estas distribuições utilizam a ferramenta YUM no processo e usam o formato RPM nos pacotes. As configurações ficam no arquivo "/etc/yum.conf" e no diretório "/etc/yum.repos.d/". Para atualizar os pacotes instalados, execute o comando a seguir:

# yum update


Debian, Ubuntu:

Estas duas distros e suas descendentes, utilizam as ferramentas apt-get ou aptitude, em comandos semelhantes, e usam o formato DEB nos pacotes. As configurações de repositórios ficam no arquivo "/etc/apt/sources.list". Para atualizar os pacotes instalados, execute os comandos:

# apt-get update
# apt-get upgrade


openSUSE:

O openSUSE utiliza na linha de comando a ferramenta Zypper e usa o formato RPM nos pacotes. As configurações ficam no arquivo "/etc/zypp/zypper.conf". Para atualizar os pacotes instalados, execute os comandos:

# zypper list-updates
# zypper update


Slackware:

O Slackware utiliza na linha de comando a ferramenta slackpkg e usa o formato TXZ nos pacotes. As configurações de repositórios ficam no arquivo "/etc/slackpkg/mirrors". Para atualizar os pacotes instalados, execute os comandos:

# slackpkg update
# slackpkg check-updates
# slackpkg install-new
# slackpkg upgrade-all


O procedimento de atualização envolve primeiro atualizar a lista dos pacotes fornecidos pelos repositórios, para o sistema saber o que há de novo, e então atualizar os pacotes instalados por novos pacotes. Os comandos foram apresentados em ordem. A ferramenta YUM faz isto em apenas um comando, nas outras são necessários dois ou mais comandos.

Os comandos apresentados neste artigo são para uma atualização dos pacotes dentro da mesma versão da distribuição. É possível também atualizar os pacotes de modo que atualize a versão da distribuição, por exemplo de Debian 5 para Debian 6. Os comandos para este procedimento não estão demonstrados neste artigo.

Apenas o superusuário (root) tem a permissão para executar estes comandos, um usuário comum não é capaz de atualizar o sistema.

sexta-feira, 2 de outubro de 2009

O estado obsoleto das distros Linux

Existe um interessante estudo estatístico sobre o estado de atualização das distribuições Linux. Útil para nos mostrar o quanto uma determinada distribuição está desatualizada nas versões de seus pacotes.

Vale lembrar que isto não quer dizer que a distribuição está ruim ou cheia de falhas pois nem sempre a versão mais nova é a mais estável, apenas nos mostra o quão atual está a distribuição.

O OpenSourceWatershed é um projeto com o objetivo de entender o relacionamento entre as distribuições e os componentes individuais de software. É a base para um estudo maior sobre as distribuições e suas evoluções, a distrologia.

Atualmente a análise estatística está sendo feita com a observação de vinte pacotes, que podemos considerar como os principais em uma distro. Dentre eles estão o Kernel, o GCC, a GlibC, o Gnome, o KDE, o Firefox, o Xorg, o Httpd e o PostgreSQL. E também por enquanto observando apenas dez distros, dentre elas as principais.

As três formas de análise são a porcentagem de pacotes obsoletos, a média do número de versões mais novas dos pacotes do que a fornecida na distro e a média de tempo que a distro demora para atualizar os pacotes.

A tabela com as versões atuais das distros é apresentada abaixo:

                                             Média        Média
Rank Distro Codinome % Obsoleto Nov. Vers. de atraso
1 arch 40,0% 1,35 2 sem
2 fedora 11 55,0% 1,65 8 sem
3 freebsd 8 66,66% 3,73 31 sem
4 slackware 13.0 82,35% 4,29 15 sem
5 gentoo 85,0% 6,10 19 sem
6 opensuse 11.1 85,0% 7,35 35 sem
7 funtoo 85,0% 6,05 18 sem
8 ubuntu jaunty 90,0% 6,05 22 sem
9 sabayon 4 94,73% 6,58 29 sem
10 debian lenny 100,0% 17,15 53 sem


Observando apenas as 4 distros bases (Fedora, Slackware, Suse e Debian), podemos perceber que a Fedora está na frente com apenas 55% dos pacotes sendo obsoletos, demorando em média 8 semanas para atualizar um pacote. E como era de se imaginar, pois sabemos que prevalece a estabilidade, a distro Debian está com 100% dos pacotes obsoletos, em uma média de 17,15 versões atrás, das versões atuais dos pacotes.

Quer saber mais? Acompanhe este estudo acessando o endereço: http://oswatershed.org/

sexta-feira, 15 de maio de 2009

Distribuições Linux

O Linux é o núcleo de um sistema operacional compatível com UNIX, desenvolvido pelo finlandês Linus Torvalds, inspirado no sistema Minix. Sua primeira versão oficial foi lançada no dia 5 de outubro de 1991. Possui o código fonte disponível livremente de acordo com os termos da Licença Pública Geral GNU, ou GPL. É um sistema operacional bastante estável e seguro para computadores da arquitetura Intel x86 e compatíveis.

Uma característica importante do Linux é ser multiusuário. Um sistema multiusuário é capaz de executar, concorrente e independentemente, várias aplicações pertencentes a dois ou mais usuários. O Linux possibilita que vários usuários usem um mesmo computador simultaneamente, geralmente por meio de terminais. O sistema Linux possui dois tipos de usuários: o usuário root, também conhecido como superusuário, que possui a missão de administrar o sistema, podendo manipular todos os recursos do sistema operacional; e os usuários comuns, que possuem direitos limitados.

Para compor um conjunto de programas cuja função é servir de interface entre um computador e o usuário, o sistema operacional precisa utilizar além do núcleo uma série de aplicativos para formar todo o ambiente. Neste propósito que se definem as distribuições Linux. Uma distribuição Linux é composta de um conjunto de softwares de aplicação mais um núcleo para formar um sistema operacional completo.

Uma distribuição Linux, ou simplesmente distro, geralmente é composta em sua totalidade por aplicativos sob a licença GPL, neste caso é comum chamar o sistema operacional de GNU/Linux. Entretanto uma distro pode conter parte de seu conjunto aplicativos sob outra licença que às vezes até não-livre, contudo praticamente todas são gratuitas para o uso.

As distribuições são criadas e mantidas por indivíduos, grupos, comunidades ou organizações privadas de todo o mundo. A equipe de desenvolvimento compila os softwares e fornece aos usuários um sistema completo, pronto para instalação e uso.

Existem centenas de distribuições Linux. As principais diferenças entre as distribuições estão no sistema de empacotamento, nas estruturas dos diretórios, na sua biblioteca básica, na organização e na pré-configuração dos softwares. As distribuições podem possuir propósitos genéricos ou específicos, como para uso em estação de trabalho ou servidor, ser pequena ou grande no número de aplicativos etc. Todas elas tem o seu público e sua finalidade.

Importante ressaltar que qualquer aplicativo desenvolvido para Linux pode ser compilado em qualquer distribuição e vai funcionar da mesma maneira, claro que respeitando o pré-requisito do aplicativo, como por exemplo versões dos softwares etc.

Dentre as principais diferenças destacam-se:

1) O gerenciamento de pacotes, que é a forma na qual os aplicativos são organizados para facilitar sua instalação, atualização ou remoção no sistema, exemplo os empacotamentos rpm e deb acompanhados de seus gerenciadores yum e apt respectivamente;

2) Pela estrutura dos diretórios, pois umas seguem o modelo Unix System V, criado pela AT&T/Bell Labs e considerado por muitos o formato "verdadeiro" e outras seguem o modelo BSD, criado pela Universidade de Berkeley para o Unix que foi desenvolvido lá, e segundo seus defensores é menos "cheio de frescuras" e por isso amado no ambiente acadêmico;

3) Pela escolha dos aplicativos definidos a priori, versões e pré-configurações. Exemplo o ambiente gráfico KDE ou GNOME, softwares em versões estáveis ou em desenvolvimento e configurações voltadas para a segurança ou para a flexibilidade do sistema.

Historicamente as primeiras grandes distribuições foram a Slackware, a Debian, a Suse e a Red Hat, que iniciaram suas atividades entre 1993-94 e que estão ativas até hoje. A maioria das outras que existem atualmente são baseadas em uma destas quatro, por exemplo a Ubuntu é baseada na Debian e a Fedora é baseada na Red Hat. Estas quatro distribuições possuem a mais ampla finalidade possível, servem tanto para servidores como para estações de trabalho, são distribuições completas pois possuem praticamente todos os aplicativos existentes já pré-empacotados. A Ubuntu e a Fedora também se equiparam nesta categoria. Aliás a Red Hat e a Fedora são basicamente a mesma distribuição, diferenciando-se no quesito corporativo/público pois a Fedora é desenvolvida pela comunidade livre. E quanto a Ubuntu, que é bastante semelhante à Debian, tem um propósito voltado mais para o usuário doméstico.

Ponderando a facilidade de uso, instalação e administração, apenas a Slackware fica um pouco atrás das outras pelo motivo de seu sistema de empacotamento e dos aplicativos com interface para as configurações. Enquanto que as outras ostentam-se pelos eficientes sistemas de gerenciamento de pacotes, por exemplo a Debian com seu "apt/dpkg" para seus pacotes ".deb" e a Fedora com seu "yum/rpm" para seus pacotes ".rpm", e ainda a Fedora pelos seus excelentes aplicativos que fazem a interface para toda a configuração do sistema assim como a Suse, a Slackware tem como glória ser uma distribuição pura e limpa, no mais fiel estilo UNIX-like.

Um ponto interessante neste universo do Linux é que todas estas grandes distribuições trazem não somente um sistema operacional completo, com todos os aplicativos para o ambiente e de operação em arquivos etc., mas também uma completa gama de aplicativos para uso em servidores de qualquer rede e inclusive para uso em estações de trabalho como suítes de escritório, clientes para serviços da Internet, recursos multimídia, jogos, tudo que se possa imaginar. Ou seja, uma distribuição Linux contém tudo o que se precisa em um computador.

Apesar das distribuições não serem totalmente compatíveis entre si, existem esforços como o projeto Linux Standard Base (LSB), traduzido para Base Padrão de Linux, para padronizar a estrutura interna de sistemas operacionais baseados em Linux e aumentar a compatibilidade entre as distribuições, permitindo que aplicações de software funcionem em todos os sistemas comuns. O LSB é baseado na especificação POSIX, na especificação UNIX, e em diversos outros padrões abertos e veio para reduzir as grandes distâncias que as distribuições Linux estavam tomando.

Muito se pergunta qual é a melhor distribuição, e de modo genérico esta resposta realmente não existe. Cada uma tem o seu propósito, a sua finalidade, e a escolha de uma ou outra vai depender do seu uso ou dos aplicativos que serão necessários instalar e executar. Uma coisa é certa, todas vão servir muito bem pois um sistema operacional Linux é extremamente estável e confiável.