Ubuntu, RHEL, distribuições similares, ofuscadas e inchadas? [fechadas]

1

Eu tenho uma quantidade decente de experiência com as várias distribuições Linux, tendo usado a maioria das principais, Red Hat, Debian, Slack, SUSE, Gentoo, etc, desde 1998. Pessoalmente, eu prefiro folga ou arco, ou em alguns casos Debian por causa da base mínima, e ter uma melhor compreensão das coisas em seu sistema sem precisar depender de programas auxiliares.

Agora, em toda a comunidade experiente, com pessoas que preferem coisas como Gentoo, Slackware, Arch ou mesmo BSD ou LFS, algumas outras distribuições, como Ubuntu, Fedora, RHEL, SUSE e, até certo ponto, o Debian têm uma reputação de contando com ferramentas ou métodos de configuração específicos da distribuição, dificultando o entendimento do sistema abaixo.

Pessoalmente, tenho certeza de que lembro de várias ocorrências de avisos para não editar manualmente os arquivos de configuração ou que foi muito difícil fazê-lo.

De fato, há um ditado que diz que se você aprender o Ubuntu, então você aprenderá o Ubuntu, pois onde você aprender o Slackware, você aprenderá Linux. Isso poderia, para os propósitos do argumento, também ser aplicado ao RHEL, SUSE etc.

Eu estava conversando com um fã do Ubuntu recentemente, que contestou isso. Ele disse que os arquivos de configuração estavam todos lá e podiam ser entendidos e editados à mão, assim como no Slack ou Arch, exceto que você também tinha o material extra de ajuda se você quisesse.

Então, eu me pergunto, quão justificada é a visão de que se você aprender o Ubuntu ou o RHEL ou qualquer um, você aprenderá esse sistema específico ao invés do Linux, e que é difícil administrar tudo manualmente se você tiver um entendimento ? Existe alguma verdade nisso?

    
por Bill Gray 24.09.2009 / 05:12

4 respostas

3

Sua pergunta não parece uma pergunta. Eu vou morder, porque eu sou descarada assim.

Eu não posso falar sobre o Debian e distribuições derivadas porque eu nunca as usei em nenhuma outra capacidade além de brincar. Nunca teve nenhum interesse neles.

As distribuições derivadas de RedHat e RedHat têm sido o meu principal "Linux de escolha" por um longo tempo. Eu não gosto de ter software desnecessário em computadores em papéis de produção. Isso significa que eu "despojo" CentOS (e todas as distribuições RedHat e derivadas) para um mínimo de RPMs. Isso também significa editar arquivos de configuração "manualmente" e remover ferramentas para gerenciar os arquivos de configuração para mim.

Eu gosto dos "artifícios" da RedHat para especificar parâmetros em interfaces de rede, rotas estáticas e configuração do iptables, então geralmente deixo tudo isso no lugar. Para uma máquina que funcionará como um firewall, servidor web, servidor DHCP ou outra atividade "sem cabeça", eu removo todos os RPMs relacionados ao X (usando --nodeps, se necessário, para forçar a remoção), e quaisquer RPMs que não são necessárias ou relacionadas ao papel da máquina. Eu sempre posso adicioná-los novamente se eu precisar deles.

Eu vejo aqui uma das minhas VMs do CentOS 5.2 que mostra 113 RPMs em um "rpm -qa | wc -l". O sistema operacional está ocupando cerca de 600MB. Certamente não é "slim and trim" comparado a distros antigas, mas é leve para o CentOS.

(A árvore de dependência de RPM tem ficado mais louca e louca nas distros derivadas de RedHat ao longo dos anos. Eu estou realmente em uma perda agora para lembrar de uma das dependências mais burras, mas elas estão me deixando cada vez mais louco os números de versão das distros derivadas do RedHat.)

    
por 24.09.2009 / 09:46
2

Bem, existem duas camadas de entendimento aqui. Entender o Linux e entender uma maneira de distribuir algo é duas coisas. Para ser um bom administrador do Linux, você precisa ter uma boa noção de como o Linux funciona, mas também precisa ter uma boa compreensão de como a distribuição que você está executando faz as coisas.

Isso não é diferente do modo como um administrador de rede precisaria entender como configurar e gerenciar seus equipamentos, além de entender as camadas da rede, sua finalidade e os protocolos.

No final do dia, o Linux é uma ferramenta como a matemática. Depois de entender um conceito e aplicá-lo, não há nada de errado em usar uma calculadora.

    
por 24.09.2009 / 06:36
1

A maneira que eu vejo é simples - um administrador de sistema configurando um servidor, ou um usuário trazendo uma estação de trabalho, requer coisas que funcionem prontamente, com o mínimo de esforço. É por isso que o Windows é tão popular, apesar das inúmeras questões que tem.

Então, basicamente, qualquer coisa necessária na computação de produção está facilmente disponível no RHEL simplesmente instalando a partir de fontes. e você pode ter certeza de que cada pacote que você está instalando passou pelo controle de qualidade e está pronto para produção. Tudo isso depois de uma instalação simples, isso não envolve a satisfação de bilhões de dependências e a compilação de tudo, desde a origem.

Sim, tal sistema pode parecer inchado para pessoas acostumadas com a abordagem LFS, mas com o poder de computação moderno, um módulo extra no kernel recebendo uma porcentagem de 0,001% não é um problema.

Minhas primeiras experiências com Linux envolveram muita compilação e ainda mais instalações de CPAN, até o ponto em que me deparei com o Debian - todo pacote perl estava disponível via apt, e eles automaticamente eram atualizados sempre que eu precisava de uma atualização. Então, como alguém que tem algumas centenas de servidores para atender, estou definitivamente contra a compilação de tudo, desde a origem e construção, até a personalização de todos os pacotes possíveis. Eu prefiro confiar nas equipes de QA das principais distros.

    
por 24.09.2009 / 15:13
0

Se você chegar até ele, tudo além do kernel é uma conveniência.

Pegue interfaces de rede, por exemplo. Redhat fornece o system-config-network-gui e o system-config-network-tui que são scripts que escrevem os arquivos de configuração em / etc / sysconfig / network e / etc / sysconfig / network-scripts.

Mas estes são realmente arquivos de configuração que alimentam scripts como 'ifup' e 'ifdown', que são chamados por scripts no momento da inicialização. Os comandos 'ifup' são wrappers para o comando 'ifconfig'.

Que em si é um programa conveniente que permite manipular valores no kernel.

Alguém poderia argumentar que, se você não está escrevendo seu próprio programa em C para usar as APIs fornecidas pelo kernel diretamente, você não está aprendendo o 'linux'.

Nenhuma dessas conveniências acima do kernel é obrigatória - o RedHat também fornece o comando 'ip' que faz a mesma coisa que o comando 'ifconfig'. E provavelmente há scripts e wrappers GUI, que constroem essa conveniência em vez disso.

Então tudo depende de onde você quer desenhar a linha. Não importa o que você aprenda, você estará aprendendo algo que não é universalmente aplicável em todos os lugares, mesmo no Linux.

Mas a conveniência não é uma coisa ruim. Padronização não é uma coisa ruim. É a razão pela qual muitos fornecedores de ferramentas preferem (ou suportam apenas, dependendo do fornecedor) tipos específicos de distribuições da família RedHat: porque dessa forma eles sabem que quando o cliente tem um problema, eles podem reproduzir o ambiente que o cliente está usando seus laboratórios para que eles possam ver o que está acontecendo. Eles não precisam se preocupar com qualquer um dos seis milhões de "otimizações" sutilmente conflitantes que tornarão qualquer máquina Gentoo mais ou menos exclusiva.

    
por 24.09.2009 / 14:59