Linux
Nota: Este artigo é sobre o sistema operacional. Para o núcleo propriamente dito, veja Linux (núcleo).
Linux | |
---|---|
Versão do sistema operativo baseado em Unix | |
Tux, a mascote do Linux | |
Produção | Linus Torvalds, Comunidade |
Linguagem | Principalmente C e Assembly |
Modelo | Principalmente código aberto, software proprietário também está disponível. |
Lançamento | 1991 (28 anos) |
Versão estável | 4.19.1 (4 de novembro de 2018 )[1][2] |
Versão em teste | 4.20-rc1 (4 de novembro de 2018 )[3] |
Mercado-alvo | Computadores pessoais, dispositivos móveis, dispositivos embarcados, servidores, mainframes, supercomputadores |
Arquitetura(s) | Alpha, ARC, ARM, C6x, H8/300, Hexagon, Itanium, m68k, Microblaze, MIPS, NDS32, Nios II, OpenRISC, PA-RISC, PowerPC, RISC-V, s390, SuperH, SPARC, Unicore32, x86, Xtensa |
Núcleo | Monolítico (Linux) |
Licença | GNU GPLv2 / Outras (o nome "Linux" é uma marca comercial[4]) |
Página oficial |
|
Estado de desenvolvimento | |
Ativo |
Linux é um termo popularmente empregado para se referir a sistemas operativos (português europeu) ou sistemas operacionais (português brasileiro) que utilizam o Kernel Linux.[5] O núcleo (ou kernel, em Inglês) foi desenvolvido pelo programador finlandês Linus Torvalds, inspirado no sistema Minix. O seu código fonte está disponível sob a licença GPL (versão 2) para que qualquer pessoa o possa utilizar, estudar, modificar e distribuir livremente de acordo com os termos da licença. A Free Software Foundation e seus colaboradores recomenda[6] o nome GNU/Linux para descrever o sistema operacional, como resultado de uma disputa controversa entre membros da comunidade de software livre e código aberto. [7][8]
Inicialmente desenvolvido e utilizado por grupos de entusiastas em computadores pessoais, os sistemas operativos (português europeu) ou sistemas operacionais (português brasileiro) com núcleo Linux passaram a ter a colaboração de grandes empresas como IBM, Sun Microsystems, Hewlett-Packard (HP), Red Hat, Novell, Oracle, Google, Mandriva, Microsoft e Canonical.[9]
O desenvolvimento do Linux é um dos exemplos mais proeminentes de colaboração de software livre e de código aberto. O código fonte pode ser usado, modificado e distribuído - com fins comercias ou não - por qualquer um, respeitando as licenças, como a GNU General Public License versão 2, devolvendo o código desenvolvido de volta para o desenvolvimento do núcleo.
Normalmente, o Linux é encontrado em uma distribuição Linux, seja para um computador ou para um servidor. Algumas distribuições Linux populares[10] incluem Arch Linux, CentOS, Debian, Fedora Linux, Linux Mint, openSUSE, Ubuntu, além de distribuições focadas para usuários corporativos, como o Red Hat Enterprise Linux ou o SUSE Linux Enterprise Server. Uma distribuição Linux inclui o núcleo Linux, bibliotecas e utilidades, além de aplicações, como a suíte de escritório LibreOffice, um navegador de internet (normalmente Mozilla Firefox), entre outras aplicações.[10]
Índice
1 História
1.1 Antecedentes
1.2 Vários fatores ajudaram a rápida expansão do Linux depois de seu lançamento
1.3 Criação
2 Núcleo
2.1 Arquitetura
2.2 Portabilidade
2.3 Termos de licenciamento
2.4 Sistemas de arquivos suportados
3 Sistema operacional
4 Diretórios
5 Distribuições
5.1 Interface com o Usuário
6 Código aberto e programas livres
7 Controvérsias quanto ao nome
7.1 Sobre o símbolo
8 Escândalo dos programas de vigilância da NSA
9 Ver também
9.1 Eventos
10 Referências
10.1 Bibliografia
11 Ligações externas
11.1 Principais distribuições LINUX/GNU
11.2 Principais remasterizações LINUX/GNU
História |
Antecedentes |
"O que queríamos preservar era não só um bom ambiente para fazer programação, mas sim um sistema em torno do qual um companheirismo poderia se formar. Por experiência, sabíamos que a essência da computação em comunidade da maneira proporcionada pelo acesso remoto e o compartilhamento de tempo de máquinas não é apenas para digitar programas em um terminal em vez de um fundador de papel, mas para encorajar a comunicação de perto".
O sistema operacional Unix foi concebido e implementado em 1969 pela AT&T Bell Laboratories nos Estados Unidos por Ken Thompson, Dennis Ritchie, Douglas McIlroy, e Joe Ossanna. Lançado pela primeira vez em 1971, o Unix foi escrito inteiramente em linguagem assembly uma prática comum para a época. Mais tarde, em 1973, o sistema foi reescrito na linguagem de programação C por Dennis Ritchie.[11] A disponibilidade de uma implementação do Unix feita em linguagem de alto nível fez a sua portabilidade para diferentes plataformas de computador se tornarem mais fácil. Na época, a maioria dos programas era escrita em cartões perfurados que tinham de ser inseridos em lotes em computadores mainframe.[12]
Devido a uma lei antitruste que a proibia de entrar no negócio de computadores, a AT&T foi obrigada a licenciar o código fonte do sistema operacional para quem quisesse.[13] Com o resultado, o Unix cresceu rapidamente e se tornou amplamente adotado por instituições acadêmicas e diversas empresas. Em 1984, a AT&T se desfez da Bell Labs; livres da obrigação legal exigindo o licenciamento do royalty, a Bell Labs começou a vender o Unix como um Software proprietário.[12]
O Projeto GNU, iniciado em 1983 por Richard Stallman, teve o objetivo de criar um "sistema de software completamente compatível com o Unix", composto inteiramente de software livre. O trabalho começou em 1984.[14] Mais tarde, em 1985, Stallman começou a Free Software Foundation e escreveu a Licença Pública Geral GNU (GNU GPL) em 1989. No início da década de 1990, muitos dos programas necessários em um sistema operacional (como bibliotecas, compiladores, editores de texto, uma Unix shell, e um sistema de janelas) foram concluídos, embora os elementos de baixo nível, como drivers de dispositivo, daemons e as do kernel foram paralisadas e não completadas.[15]
Apesar de não ter sido lançado até 1992 devido a complicações legais, o desenvolvimento do 386BSD, que veio a partir do NetBSD, OpenBSD e FreeBSD, antecedeu ao do Linux. Linus Torvalds disse que se o 386BSD estivesse disponível naquele momento, ele provavelmente não teria criado o Linux.[16]
Vários fatores ajudaram a rápida expansão do Linux depois de seu lançamento |
- Popularização dos computadores pessoais: o Unix era o S.O. padrão para estudos em universidades, porém, utilizavam plataformas proprietárias relativamente caras. O Linux se tornou uma opção para resolver esse problema, porque com ele foi possível a utilização de computadores pessoais mais baratos.
- Projeto GNU: o projeto GNU, criado por Richard Stallman em 1984, surgiu com o intuito de apoiar a liberdade de software (veja seção mais adiante sobre Software Livre). Na época do surgimento do Linux, Stallman apoiava e pretendia adotar o kernel Hurd, porém este não estava utilizável, com isso, o Linux acabou sendo o kernel (componente central do sistema operacional ligando aplicativos e o processamento real de dados feito pelo hardware) preferido para rodar as centenas de programas livres disponibilizados pelo projeto, porém o Hurd continua sendo o kernel oficial do sistema operacional GNU.
- Distribuições Linux: no sentido de tornar o Linux o mais utilizável possível, surgiram instituições comerciais e não-comerciais que se dedicaram a criar uma combinação ideal de aplicativos (livres ou não) que rodassem no kernel Linux. As instituições com objetivos comerciais mantiveram o licenciamento livre, através de serviços agregados, tais como: suporte, treinamento e desenvolvimento customizado. Veja seção mais adiante sobre distribuições Linux.
Criação |
O núcleo Linux foi, originalmente, escrito por Linus Torvalds do Departamento de Ciência da Computação da Universidade de Helsinki, Finlândia, com a ajuda de vários programadores voluntários através da Usenet (uma espécie de sistema de listas de discussão existente desde os primórdios da Internet).
Linus Torvalds começou o desenvolvimento do núcleo como um projeto particular, inspirado pelo seu interesse no Minix, um pequeno sistema UNIX desenvolvido por Andrew S. Tanenbaum.[17] Ele limitou-se a criar, nas suas próprias palavras, "um Minix melhor que o Minix" ("a better Minix than Minix"). E depois de algum tempo de trabalho no projecto, sozinho, enviou a seguinte mensagem para comp.os.minix:
“ | Você suspira pelos bons tempos do Minix-1.1, quando os homens eram homens e escreviam seus próprios "device drivers"?[18] Você está sem um bom projecto em mãos e deseja trabalhar num S.O. que possa modificar de acordo com as suas necessidades? Acha frustrante quando tudo funciona no Minix? Chega de noite ao computador para conseguir que os programas funcionem? Então esta mensagem pode ser exactamente para você. Como eu mencionei há um mês atrás, estou trabalhando numa versão independente de um S.O. similar ao Minix para computadores AT-386. Ele está, finalmente, próximo do estado em que poderá ser utilizado (embora possa não ser o que você espera), e eu estou disposto a disponibilizar o código-fonte para ampla distribuição. Ele está na versão 0.02... contudo eu tive sucesso ao executar bash, gcc, gnu-make, gnu-sed, compress etc. nele. | ” |
Curiosamente, o nome Linux foi criado por Ari Lemmke, administrador do site ftp.funet.fi que deu esse nome ao diretório FTP onde o núcleo Linux estava inicialmente disponível.[19] Linus inicialmente tinha-o batizado como "Freax".[20]
No dia 5 de outubro de 1991 Linus Torvalds anunciou a primeira versão "oficial" do núcleo Linux, versão 0.02. No ano de 1992, Linus Torvalds mudou a licença do núcleo Linux, de uma licença própria para uma licença livre compatível com a GPL do projeto GNU.[21] Desde então, muitos programadores têm contribuído com o desenvolvimento, ajudando a fazer do Linux o núcleo de enorme sucesso colaborativo que é hoje. No início era utilizado por programadores ou só por quem tinha conhecimentos e usava linhas de comando. Hoje isso mudou e existem diversos grupos que criam ambientes gráficos para as diversas distribuições GNU/Linux, que são cada vez mais amigáveis, de forma que, uma pessoa com poucos conhecimentos consegue usar o Linux, através de uma distribuição GNU/Linux, por exemplo. Hoje o Linux é um núcleo estável e consegue reconhecer muitos periféricos sem a necessidade de que o usuário precise instalar drivers de som, vídeo, modem, rede, entre outros.
Núcleo |
Ver artigo principal: Linux (núcleo)
O termo Linux refere-se ao núcleo (em inglês: "kernel") do sistema operativo que inicia e gerencia outros programas que fornecem o acesso aos recursos do sistema como os vários software livres de shells, compiladores, bibliotecas-padrão e os comandos que fazem parte do Projeto GNU. O Projeto GNU, por sua vez, foi criado pela Free Software Foudation com o intuito de criar um sistema operacional completo, totalmente livre e compatível com o Unix. O principal compilador do Linux C, gcc, é um pedaço do projeto GNU.[22]
Arquitetura |
O Linux é um núcleo monolítico: as funções do núcleo (escalonamento de processos, gerenciamento de memória, operações de entrada/saída, acesso ao sistema de arquivos) são executadas no espaço de núcleo. Uma característica do núcleo Linux é que algumas das funções (drivers de dispositivos, suporte à rede, sistema de arquivos, por exemplo) podem ser compiladas e executadas como módulos (em inglês: LKM - loadable kernel modules), que são bibliotecas compiladas separadamente da parte principal do núcleo e podem ser carregadas e descarregadas após o núcleo estar em execução.
Portabilidade |
Embora Linus Torvalds não tivesse como objetivo inicial tornar o Linux um sistema portátil, ele evoluiu nessa direção. Linux é hoje um dos núcleos de sistemas operativos mais portáteis, correndo em sistemas desde o iPaq (um computador portátil) até o IBM S/390 (um denso e altamente custoso mainframe).
Os esforços de Linus foram também dirigidos a um diferente tipo de portabilidade. Portabilidade, de acordo com Linus, era a habilidade de facilmente compilar aplicações de uma variedade de código fonte no seu sistema; consequentemente, o Linux originalmente tornou-se popular em parte devido ao esforço para que os códigos-fonte GPL ou outros favoritos de todos corressem em Linux.
O Linux hoje funciona em dezenas de plataformas, desde mainframes até um relógio de pulso, passando por várias arquitecturas: x86 (Intel, AMD), x86-64 (Intel EM64T, AMD64), ARM, PowerPC, Alpha, SPARC e etc, com grande penetração também em sistemas embarcados, como handhelds, PVR, console de videogames, celulares, TVs e centros multimídia, entre outros.
Termos de licenciamento |
Inicialmente, Torvalds lançou o Linux sob uma licença de software própria que proibia qualquer uso comercial. Isso foi mudado, um ano depois, para a GNU General Public License. Essa licença permite a distribuição e até a venda de versões até mesmo modificadas do Linux, mas requer que todas as cópias sejam lançadas dentro da mesma licença e acompanhadas de acesso ao código fonte.
Apesar de alguns dos programadores que contribuem para o núcleo permitirem que o seu código seja licenciado com GPL versão 2 ou posterior, grande parte do código (incluído as contribuições de Torvalds) menciona apenas a GPL versão 2. Isto faz com que o núcleo como um todo esteja sob a versão 2 exclusivamente.
Sistemas de arquivos suportados |
O Linux possui suporte de leitura e escrita a vários sistema de arquivos, de diversos sistemas operacionais, além de alguns sistemas nativos. Por isso, quando o Linux é instalado em dual boot com outros sistemas (Windows, por exemplo) ou mesmo funcionando como Live CD, ele poderá ler e escrever nas partições formatadas em FAT e NTFS. É por isso que os Live CDs Linux são muito utilizados na manutenção e recuperação de outros sistemas operacionais.[23]
Entre os sistemas de ficheiros suportados pelo Linux, podemos citar UFS (Unix), FAT, NTFS, JFS, XFS, HPFS, Minix e ISO 9660 (sistema de ficheiros usado em CD-ROMs), este último também com as extensões RRIP (IEEE P1282) e ZISOFS.[24] Alguns sistemas de ficheiros nativos são, entre outros, Ext2, Ext3, Ext4, ReiserFS e Reiser4.[25] Alguns sistemas de ficheiros com características especiais são SWAP, UnionFS, SquashFS, Tmpfs, Aufs e NFS, dentre outros.
Sistema operacional |
Logo que Linus Torvalds passou a disponibilizar o Linux, ou seja na sua versão 0.01, já havia suporte ao disco rígido, tela, teclado e portas seriais, o sistema de arquivos adotava o mesmo layout do Minix (embora não houvesse código do Minix no Linux), havia extensos trechos em assembly, e ela já era capaz de rodar o bash e o gcc.
“ | A linha guia quando implementei o Linux foi: fazê-lo funcionar rápido. Eu queria o núcleo simples, mas poderoso o suficiente para rodar a maioria dos aplicativos Unix.[26] | ” |
O próprio usuário deveria procurar os programas que dessem funcionalidade ao seu sistema, compilá-los e configurá-los. Talvez por isso, o Linux tenha carregado consigo a etiqueta de sistema operativo apenas para técnicos. Foi neste ambiente que surgiu a MCC Interim Linux, do Manchester Computer Centre, a primeira distribuição Linux, desenvolvida por Owen Le Blanc da Universidade de Manchester, capaz de ser instalada independentemente em um computador. Foi uma primeira tentativa de facilitar a instalação do Linux.
Desde o começo, o núcleo Linux incluía um sistema básico para chamadas do sistema e acesso aos dispositivos do computador. O núcleo de um sistema operativo define entre várias operações, o gerenciamento da memória, de processos, dos dispositivos físicos no computador e é uma parte essencial de qualquer sistema operacional utilizável, contudo para um sistema operacional adquirir funcionalidade são necessários também vários outros aplicativos que determinam funções específicas que aquele sistema será capaz de desenvolver, os aplicativos existentes num sistema operacional com a única exceção do núcleo são determinados pelo usuário do computador, como por exemplo: interpretadores de comandos, gerenciadores de janelas, que oferecem respectivamente uma interface para o usuário do computador, CLI ou GUI, e outros aplicativos como editores de texto, editores de imagem, tocadores de som, e, mas não necessariamente, compiladores.
O sistema foi continuado dentro da Bell Labs, chegando a poucas dezenas de instalações, porém só obteve grande crescimento após ter sido totalmente reescrito na linguagem C, o que permitiu uma portabilidade melhor para outras plataformas. A linguagem C foi derivada da linguagem B e criada por Dennis Ritchie e Brian Kernighan. Nesta época, o sistema já contava com mais de 60 comandos, muitos deles ainda utilizados até hoje, tais como: cd - trocar de diretórios, chmod - trocar permissões, wc - contar palavras em arquivos, roff - processar texto, etc. O seu crescimento e reconhecimento culminou com a publicação na renomada revista “ Communications of the ACM” , em julho de 1974.
Com sua filosofia de simplicidade, padrões abertos e seu licenciamento facilitado pela AT&T, o Unix se espalhou e se desenvolveu rapidamente pelas universidades. Várias versões de Unix foram surgindo, sendo que a principal delas foi desenvolvida na Universidade de Berkeley, denominada BSD (Berkeley Software Distribution), um software liberado publicamente em 1977, predecessor dos atuais e bem-sucedidos BSD's (FreeBSD, OpenBSD e NetBSD). Outras versões comerciais também foram surgindo, tais como: Irix pela SGI em 1982, XENIX pela SCO em 1983, HP-UX pela HP em 1986, SunOS pela Sun em 1987 e AIX pela IBM em 1990 .
A maioria dos sistemas inclui ferramentas e utilitários baseados no BSD e tipicamente usam XFree86 ou X.Org para oferecer a funcionalidade do sistemas de janelas X — interface gráfica. Assim como também oferecem ferramentas desenvolvidas pelo projeto GNU.
No momento do desenvolvimento do Linux, vários aplicativos já vinham sendo reunidos pelo Projeto GNU da Free Software Foundation (‘Fundação Software Livre’), que embarcara num subprojeto que ainda continua para obter um núcleo, o GNU Hurd. Porém devido a várias complicações o projeto GNU e demora em desenvolver o Hurd, Stallman acabou adotando o núcleo Linux como base para distribuir os programas do projeto GNU ; no entanto diversas pessoas e instituições tiveram a mesma ideia e assim começaram a surgir várias distribuições baseadas no núcleo desenvolvido inicialmente por Linus.
Diretórios |
Os scripts de shell, que são:os arquivos de textos, os comandos executáveis, entre outros arquivos comuns são nomeados como arquivos regulares. Estes tipos de arquivos possuem dados que podem ser lidos ou executados por instruções. Também há arquivos que não são regulares, como diretórios ou redirecionamentos com nomes. Eles contêm dados singulares ou possuem comportamentos especiais quando acessados.[27]
Os arquivos são organizados em diretórios ou listagens de arquivos. Todos os demais arquivos no Linux, um diretório é lidado também como um tipo de de arquivo. Cada diretório poderá conter um subdiretório, originando assim uma lista hierárquica. Os diretórios são organizados somente em uma árvore monolítica. O mais alto dos diretórios é chamado de diretório-raiz. Ele se difere em relação aos outros sistemas operacionais, que tem discos marcados separadamente. O Linux lida qualquer parte do disco como um subdiretório dentro dessa estrutura do principal diretório. Partindo do ponto de vista do usuário, é praticamente impossível afirmar em qual parte do disco é pertencido um respectivo diretório, pois aparentemente tudo pertence ao único disco.[27]
O nome de caminho é uma string que mostra uma localização de um arquivo, de acordo com sua ordem de diretórios que for encontrado ao passar. O diretório-raiz, é determinado com o símbolo da barra (/
). O uso de mais nomes de barras e diretórios especifica os diretórios adicionais. Quando os usuários se conectam, são trazidos no diretório pessoal chamado de seu diretório de entrada. Esse diretório é tipificado com um til (~
) em Bash.[27]
O diretório de trabalho, ou chamado também diretório corrente é representado por um ponto final (.
). Quando ele não começa com uma barra, o Bash julga que é um caminho relativo ao diretório de trabalho. O diretório-pai, é simbolizado por dois pontos (..
). Esses dois pontos podem ser usados em qualquer diretório a fim de mover em direção ao diretório-raiz da árvore de diretórios, anulando assim o diretório dito anteriormente em um caminho.[27]
Os nomes de caminhos sem uma barra inicial são nomeados de caminhos relativos, pois eles especificam a localização de um arquivo em comparação ao diretório corrente. Esses caminhos relativos são de utilidade para representar arquivos em seu diretório corrente ou em subdiretórios deste.[28]
Os caminhos com uma barra no início são nomeados de caminhos absolutos. Esses tipos de caminhos denotam a localização do arquivo em comparação ao diretório-raiz. Não importando onde que esse diretório-raiz estiver. Os caminhos absolutos sempre identificam o arquivo com precisão. Esses caminhos absolutos servem de localização de arquivos comuns que são guardados sempre no mesmo lugar.[28]
A maioria das distribuições Linux incluem os respectivos diretórios:[28]
- /dev - Contém arquivos especiais ou arquivos de dispositivos.
- /bin e /usr/bin - Contém comandos-padrão de Linux.
- /lib e /usr/lib - Possui as bibliotecas-padrão de Linux.
- /var - Possui arquivos de configuração e de log.
- /etc - Possui arquivos padrão de configuração.
- /usr/local/bin - Possui comandos que não são parte da distribuição, acrescentando pelo seu administrador.
- /opt - Possui software comercial
- /tmp - Armazena arquivos temporários.
- /sbin e /usr/sbin - Possui comandos de administração de sistema.
Distribuições |
Ver artigo principal: Distribuições de Linux
Atualmente, um Sistema Operacional (em Portugal Sistema Operativo) Linux ou GNU/Linux completo (uma "Lista de distribuições de Linux ou GNU/Linux") é uma coleção de software livre (e por vezes não-livre) criado por indivíduos, grupos e organizações de todo o mundo, incluindo o núcleo Linux. Companhias como a Red Hat, a SuSE, a Mandriva (união da Mandrake com a Conectiva) e a Canonical (desenvolvedora do Ubuntu Linux), bem como projetos de comunidades como o Debian ou o Gentoo, compilam o software e fornecem um sistema completo, pronto para instalação e uso. Patrick Volkerding também fornece uma distribuição Linux, o Slackware.
As distribuições do Linux ou GNU/Linux começaram a receber uma popularidade limitada desde a segunda metade dos anos 90, como uma alternativa livre para os sistemas operacionais Microsoft Windows e Mac OS, principalmente por parte de pessoas acostumadas ao Unix na escola e no trabalho. O sistema tornou-se popular no mercado de Desktops e servidores, principalmente para a Web e servidores de bancos de dados.
No decorrer do tempo, várias distribuições surgiram e desapareceram, cada qual com sua característica. Algumas distribuições são maiores outras menores, dependendo do número de aplicações e sua finalidade. Algumas distribuições de tamanhos menores cabem num disquete com 1,44 MB, outras precisam de vários CDs, existindo até algumas versões em DVD.
Todas elas tem o seu público e sua finalidade, as pequenas (que ocupam poucas disquetes) são usadas para recuperação de sistemas danificados ou em monitoramento de redes de computadores.
Dentre as maiores, distribuídas em CDs, podem-se citar: Slackware, Debian, Suse, e Conectiva. Cada distribuição é, em síntese, um sistema operacional independente, de modo que os programas compilados para uma distribuição podem não rodar em outra, embora usem o mesmo núcleo (o Linux propriamente dito). A distribuição Conectiva Linux, por exemplo, tinha as suas aplicações traduzidas em português, o que fez com que os usuários que falam a Língua Portuguesa tenham aderido melhor a esta distribuição. Hoje esta distribuição foi incorporada à Mandrake, o que resultou na Mandriva. Para o português, existe também as distribuições brasileiras, como As mais recentes Duzero, Metamorphorse, GoboLinux, Linuxfx ctOS Big Linux, Dizinha Linux, DreamLinux, Dual O/S, Ekaaty, Famelix, FeniX, GoblinX, Kalango e Kurumin (essa distribuição foi descontinuada pelo seu mantenedor), construída sobre Knoppix e Debian, e a Caixa Mágica, existente nas versões 32 bits, 64 bits, Live CD 32 bits e Live CD 64 bits, e com vários programas open source: LibreOffice, Mozilla Firefox, entre outros.
Existem distribuições com ferramentas para configuração que facilitam a administração do sistema.
As principais diferenças entre as distribuições estão nos seus sistemas de pacotes, nas estruturas dos diretórios e na sua biblioteca básica. Por mais que a estrutura dos diretórios siga o mesmo padrão, o FSSTND é um padrão muito relaxado, principalmente em arquivos onde as configurações são diferentes entre as distribuições. Então normalmente todos seguem o padrão FHS (File Hierarchy System), que é o padrão mais novo. Vale lembrar, entretanto, que qualquer aplicativo ou driver desenvolvido para Linux pode ser compilado em qualquer distribuição que vai funcionar da mesma maneira.
Quanto à biblioteca, é usada a biblioteca libc, contendo funções básicas para o sistema Operacional Linux. O problema é que, quando do lançamento de uma nova versão da Biblioteca libc, algumas distribuições colocam logo a nova versão, enquanto outras aguardam um pouco. Por isso, alguns programas funcionam numa distribuição e noutras não.
Existe um movimento LSB (Linux Standard Base) que proporciona uma maior padronização. Auxilia principalmente vendedores de software que não liberam para distribuição do código fonte, sem tirar características das distribuições. O sistemas de pacotes não é padronizado.
Arch Linux, Debian, Fedora, Manjaro Linux, SolusOS, Sabayon, Mandriva, Mint, openSuse, PCLinuxOS, Puppy, Slackware e Ubuntu são algumas das distribuições mais utilizadas actualmente, listadas aqui por ordem alfabética.
Existem também distribuições Linux para sistemas móveis, como tablets e smartphones, sendo o Android, desenvolvido pelo Google, a mais difundida de todas. Outras distribuições Linux para sistemas móveis são o Maemo e o MeeGo.
Vários fatores ajudaram a rápida expansão do Linux depois de seu lançamento:
- Popularização dos computadores pessoais: o Unix era o S.O. padrão para estudos em universidades, porém, utilizavam plataformas proprietárias relativamente caras. O Linux se tornou uma opção para resolver esse problema, porque com ele foi possível a utilização de computadores pessoais mais baratos.
- Projeto GNU: o projeto GNU, criado por Richard Stallman em 1984, surgiu com o intuito de apoiar a liberdade de software (veja seção mais adiante sobre Software Livre). Na época do surgimento do Linux, Stallman apoiava e pretendia adotar o kernel Hurd, porém este não estava utilizável, com isso, o Linux acabou sendo o kernel (componente central do sistema operacional ligando aplicativos e o processamento real de dados feito pelo hardware) preferido para rodar as centenas de programas livres disponibilizados pelo projeto, porém o Hurd continua sendo o kernel oficial do sistema operacional GNU.
- Distribuições Linux: no sentido de tornar o Linux o mais utilizável possível, surgiram instituições comerciais e não-comerciais que se dedicaram a criar uma combinação ideal de aplicativos (livres ou não) que rodassem no kernel Linux. As instituições com objetivos comerciais mantiveram o licenciamento livre, através de serviços agregados, tais como: suporte, treinamento e desenvolvimento customizado. Veja seção mais adiante sobre distribuições Linux.
Interface com o Usuário |
Uma característica que acaba resultando na diferenciação de uma Distribuição Linux é a Interface Gráfica. Algumas distribuições utilizam a interface KDE, outras utilizam interface GNOME, outras utilizam a interface XFCE, e ainda existem várias outras interfaces que podem ser utilizadas.
Cinnamon
Enlightenment
Fluxbox
GNOME
KDE Plasma
LXDE
MATE
Sugar
Trinity
Unity
Xfce
Código aberto e programas livres |
Um programa, assim como toda obra produzida atualmente, seja ela literária, artística ou tecnológica, possui um autor. Os Direitos sobre a ideia ou originalidade da obra do autor, que incluem essencialmente distribuição, reprodução e uso é feito no caso de um programa através de sua licença.
Existem dois movimentos que regem o licenciamento de programas no mundo livre, os programas de código aberto e os programas livres. Os dois representados respectivamente pela OSI e pela FSF oferecem licenças para produção de software, sendo seus maiores representantes a licença BSD e a GPL.
O Linux oferece muitos aplicativos de open source, contudo nem todos podem ser considerados programas livres, dependendo exclusivamente sob qual licença estes programas são distribuídos. Os programas distribuídos sob tais licenças possuem as mais diversas funcionalidades, como desktops, escritório, edição de imagem e inclusive de outros sistemas operacionais.
Também existem organizações inclusive no mundo livre como a organização Linux Simples para o Usuário Final (SEUL) que tem como objetivo adotar a maior gama possível de aplicativos de alta qualidade produzidos sobre a GPL. É um projeto voluntário que atualmente se foca no aprendizado de Linux, seu uso na ciência e em documentos de advocacia, bem como gerenciar e coordenar projetos de desenvolvimento de aplicativos.
Controvérsias quanto ao nome |
Ver artigo principal: Controvérsia quanto à nomenclatura GNU/Linux
Linux foi o nome dado ao núcleo de sistema operacional criado por Linus Torvalds. Por extensão, sistemas operacionais que usam o núcleo Linux são chamados genericamente de Linux. Entretanto, a Free Software Foundation afirma que tais sistemas operacionais são, na verdade, sistemas GNU, e o nome mais adequado para tais sistemas é GNU/Linux, uma vez que grande parte do código-fonte dos sistemas operacionais baseados em Linux são ferramentas do projeto GNU.[30]
Há muita controvérsia quanto ao nome. Eric Raymond afirma, no Jargon File, que a proposta da FSF só conseguiu a "aceitação de uma minoria" e é resultado de uma "disputa territorial".[31] Linus Torvalds afirma que consideraria "justo" que tal nome fosse atribuído a uma distribuição do projeto GNU, mas que chamar os sistemas operacionais Linux como um todo de GNU/Linux seria "ridículo".[32] Linus disse não se importar sobre qual o nome usado; considera a proposta da GNU como "válida" ("ok"), mas prefere usar o termo "Linux".[33]
Sobre o símbolo |
O símbolo do software foi escolhido pelo seu criador (Linus Torvalds), que um dia estava em um zoológico na Austrália e foi surpreendido pela mordida de um pinguim. Fato curioso e discutido até hoje.[34]
Em 1996, muitos integrantes da lista de discussão "Linux-Kernel" estavam discutindo sobre a criação de um logotipo ou de um mascote que representasse o Linux.[35] Muitas das sugestões eram paródias ao logotipo de um sistema operacional concorrente e muito conhecido (Windows). Outros eram monstros ou animais agressivos. Linus Torvalds acabou entrando nesse debate ao afirmar em uma mensagem que gostava muito de pinguins. Isso foi o suficiente para dar fim à discussão.
Depois disso, várias tentativas foram feitas numa espécie de concurso para que a imagem de um pinguim servisse aos propósitos do Linux, até que alguém sugeriu a figura de um "pinguim sustentando o mundo". Em resposta, Linus Torvalds declarou que achava interessante que esse pinguim tivesse uma imagem simples: um pinguim "gordinho" e com expressão de satisfeito, como se tivesse acabado de comer uma porção de peixes. Torvalds também não achava atraente a ideia de algo agressivo, mas sim a ideia de um pinguim simpático, do tipo em que as crianças perguntam "mamãe, posso ter um desses também?". Ainda, Torvalds também frisou que trabalhando dessa forma, as pessoas poderiam criar várias modificações desse pinguim. Isso realmente acontece.
Quando questionado sobre o porquê de pinguins, Linus Torvalds respondeu que não havia uma razão em especial, mas os achava engraçados e até citou que foi bicado por um "pinguim assassino" na Austrália e ficou impressionado como a bicada de um animal aparentemente tão inofensivo podia ser tão dolorosa.
Escândalo dos programas de vigilância da NSA |
As revelações da vigilância global exercida pela Agência de Segurança Nacional trouxeram à tona alegações de que Google, Yahoo!, Facebook e Microsoft estão entre as muitas empresas intencionalmente cooperando com a NSA, oferecendo acesso aos seus sistemas via uma backdoor criada especialmente para atender aos interesses da Agência.
No caso de sistemas operacionais Linux, a agência americana NSA pediu ao criador do Linux, Linus Torvalds, para criar backdoors em GNU / Linux, através do qual eles poderiam acessar o sistema. A inclusão dos backdoors acabou não ocorrendo, devido ao modelo de desenvolvimento aberto do núcleo Linux. [36]
O fato dos sistemas GNU/Linux serem software livre permite que qualquer um realize auditoria sobre os códigos, dessa forma dificultando a inserção de backdoors.
Ver também |
- LINUX Guia de Comandos
- Lista de distribuições GNU/Linux
- Comparação entre distribuições Linux
- Comandos Linux
- Lei de Linus
Eventos |
FISL (Fórum Internacional de Software Livre)- Installfest
Referências
↑ «The Linux Kernel Archives». Consultado em 5 de novembro de 2018
↑ Greg Kroah-Hartman (4 de novembro de 2018). «Linux 4.19.1». LKML (Lista de grupo de correio). Consultado em 5 de novembro de 2018
↑ Torvalds, Linus (4 de novembro de 2018). «Linux 4.20-rc1». LKML (Lista de grupo de correio). Consultado em 5 de novembro de 2018
↑ «The Linux Mark». The Linux Mark Institute. Consultado em 5 de outubro de 2018
↑ «What is Linux?» (em inglês). The Linux Foundation
↑ «Why do you call the system we use GNU/Linux and not Linux?». Gnu.org. Consultado em 23 de agosto de 2017
↑ «GNU/Linux FAQ». Gnu.org. Consultado em 1 de setembro de 2013
↑ Stallman, Richard. «Linux e o Sistema GNU». Gnu.org. Consultado em 7 de Outubro de 2017
↑ «Members». linuxfoundation.org (em inglês). Consultado em 28 de janeiro de 2015
↑ ab «What is Linux?» (em inglês). Linux.com. Consultado em 23 de julho de 2017
↑ «Unix Fundamentals — System Administration for Cyborgs» (em inglês). Consultado em 23 de julho de 2017. Cópia arquivada em 5 de Outubro de 2016
↑ ab Negus, Christopher; Christine Bresnahan. Starlin Alta Editora e Consultoria, ed. Linux - A Bíblia. 2014 8 ed. Rio de Janeiro: [s.n.] 9788576087991 A referência emprega parâmetros obsoletos|coautores=
(ajuda)
↑ «Origins and History of Unix, 1969-1995». faqs.org (em inglês). Consultado em 5 de julho de 2015. Cópia arquivada em 2015
↑ «Initial Announcement». gnu.org (em inglês). Consultado em 5 de julho de 2015. Cópia arquivada em 2015
↑ «Overview of the GNU System». gnu.org (em inglês). Consultado em 5 de julho de 2015. Cópia arquivada em 2015
↑ «The Choice of a GNU Generation An Interview With Linus Torvalds». gondwanaland.com (em inglês). Consultado em 14 de julho de 2015. Cópia arquivada em 2015
↑ «What would you like to see most in minix?». groups.google.com. Consultado em 14 de julho de 2015
↑ Primeiro período do original, em inglês: Do you pine for the nice days of minix-1.1, when men were men and wrote their own device drivers?
↑ Lars Wirzenius (27 de abril de 1998). «Linux Anecdotes». Consultado em 15 de junho de 2007
↑ Carlos E. Morimoto (2006). Linux, Ferramentas Técnicas 2ed 2 ed. [S.l.]: GDH Press e Sul Editores. 312 páginas. ISBN 85-205-0401-9
↑ «Release notes for the version 0.12 of the Kernel Linux». Linus. 23 de junho de 1993. Consultado em 14 de abril de 2015
↑ Burtch 2005, pp. 10
↑ «SystemRescueCd Homepage». sysresccd.org (em inglês). Consultado em 28 de janeiro de 2015
↑ «zisofs-tools». freshmeat.net (em inglês). Consultado em 28 de janeiro de 2015
↑ Reiser4 ainda está em desenvolvimento.
↑ No original, em inglês: the guiding line when implementing linux was: get it working fast. I wanted the kernel simple, yet powerful enough to run most unix software.
↑ abcd Burtch 2005, pp. 12
↑ abc Burtch 2005, pp. 13
↑ «5 anos do Ubuntu». digitalside.com.br (em inglês). Consultado em 28 de janeiro de 2015
↑ Richard Stallman. «Linux and the GNU Project» (em inglês). Consultado em 7 de março de 2008
↑ Eric Raymond. «Linux» (em inglês). Consultado em 7 de março de 2008
↑ Revolution OS, documentário de 2001 sobre o Linux. Produzido, dirigido e escrito por J.T.S. Moore
↑ Linus Torvalds (3 de junho de 1996). «Lignux, what's the matter with you people?» (em inglês). Consultado em 7 de março de 2008
↑ «Why Is The Penguin Tux Official Mascot of Linux?». FOSSBYTES (em inglês). 27 de outubro de 2016. Consultado em 18 de fevereiro de 2017
↑ «Linux Logo prototype.». Linux Kernel Mailing List (em inglês). 9 de maio de 1996. Consultado em 18 de fevereiro de 2017
↑ «NSA Wanted Backdoor Access In Linux, Says Linus Torvalds' Father». omgubuntu.co.uk (em inglês). Consultado em 28 de janeiro de 2015
Bibliografia |
Burtch, Ken O (2005). Scripts de Shell Linux com Bash. Um guia de referência abrangente para usuários e administradores Linux. &ap 1 ed. Rio de Janeiro: Ciência Moderna. ISBN 8573934050
Ligações externas |
A Wikipédia tem o portal:
|
- Página oficial do kernel Linux
- Página oficial do Projeto GNU
- O Sistema Operacional GNU
Página comunitária linux.org (em inglês)- Distrowatch: classificação e listagem com detalhes das principais distribuições Linux/GNU
Principais distribuições LINUX/GNU |
- Página do projeto Linux/GNU "OpenSuSE"
- Página do projeto Linux/GNU "Ubuntu"
- Página do projeto Linux/GNU "Debian"
- Página do projeto Linux/GNU "Fedora"
Principais remasterizações LINUX/GNU |
Página do projeto Linux/GNU "LinuxMint" - Remasterização do Ubuntu