Linux, Notas de estudo de Informática
gustavo-dias-11
gustavo-dias-11

Linux, Notas de estudo de Informática

24 páginas
50Números de download
1000+Número de visitas
100%de 0 votosNúmero de votos
Descrição
Linux basicao
60 pontos
Pontos de download necessários para baixar
este documento
Baixar o documento
Pré-visualização3 páginas / 24
Esta é apenas uma pré-visualização
3 mostrados em 24 páginas
Esta é apenas uma pré-visualização
3 mostrados em 24 páginas
Esta é apenas uma pré-visualização
3 mostrados em 24 páginas
Esta é apenas uma pré-visualização
3 mostrados em 24 páginas

Colégio Técnico de Campinas Departamento de Informática - 2003

Curso Básico de Linux

Lucas Fernando Rosada – 2º Informática 2003

1

Índice

Sobre o Linux 3 Caracteristicas do Linux 3 - Diferenças entre Linux e Windows 3 - Código-fonte aberto 4 - Funcionamento do sistema 5 - Multi-usuário 5 - Multi-tarefa 5 - Vários terminais 6 - Ambientes gráficos 6 - Diversas distribuições 6

- Instalação 7 - Antes de começar 7 - O processo de instalação 7

- Básico do Sistema 11 - Log-In 11 - Arquivos executáveis e execução de programas 11 - Comandos de navegação no sistema de arquivo 12 - Comando de rede 15 - Editores de texto 16 - Browsers modo texto 17 - Utilização de unidades de disco 17 - Compilação em C 18 - Descompactação 20 - Instalação e desinstalação de programas 20 - Desligando o sistema 21

- Modo gráfico 21 - Vários ambientes gráficos 21 - Inicialização 22 - Daqui em diante 22

- Documentação 22 - Introdução 22 - Páginas de manual 22 - How-To's 23 - Outras fontes 23

2

Sobre o Linux

Apesar da natureza do projeto, o Linux atualmente tem uma grande parcela do mercado de sistema operacionais, permitindo uma competição acirrada entre outros sistemas operacionais tais como os diversos tipos de Unix, Windows (versões para servidor e estações de trabalho), entre outros sistemas operacionais.

O Linux foi inicialmente idealizado por Linuz Torvalds, um finlandês que certo dia teve uma brilhante idéia: começar a produzir um sistema operacional, porém não seria um sistema qualquer, como os outros na época (começo da década de 90), o Linux tinha uma pitada a mais, algo que o diferenciaria dos demais sistemas no mercado.

Inicialmente trabalhando por conta própria no código fonte do Minix (versão reduzida do UNIX), certo dia lançou uma mensagem que chamava por pessoas que gostariam de trabalhar em um sistema operacional que fosse livre: você não precisaria compra-lo, poderia personalizar o sistema, escrever seus próprios drivers para hardware, olhar, modificar, ou seja, poderia fazer tudo que um sistema comercial não lhe possibilitava ou dificultava na época.

Muitas pessoas responderam a Linuz sua mensagem e depois de algum tempo o projeto já tinha tomado grandes proporções. A primeira versão do Linux foi lançada dia 5 de outubrode 1991, não era uma versão estável, porém era um enorme passo no mundo da computação. A partir daí, o Linux não para mais de crescer e tomar lugar de outros sistemas no mercado.

Características do Linux

Deixando um pouco sua história de lado e focalizando as características do sistema atualmente disponível a nós, podemos logo de cara perceber que o Linux é um sistema operacional multi-tarefa (assim como o Windows, por exemplo), ou seja, roda vários processos (a grosso modo programas) "simultaneamente", usando a técnica de divisão do tempo da CPU. Outra característica muito notável é que este sistema é multi-usuário, com seu sistema de arquivos trabalhando com permissões (liberando ou não a leitura ou escrita para um usuário ou um grupo de usuário, veja posteriormente) e tendo também o conceito de administrador do sistema. Essas características serão mais exploradas em um momento futuro.

Diferenças entre Windows e Linux

A maior diferença, na minha opinião, a mais interessante e inteligente é o fato do ambiente gráfico ser totalmente separado do modo texto. Bem, para que seja entendido de uma melhor forma, veja o Windows: até o Windows 3.11 ele era uma espécie de casca (muito incrementada) para o DOS; já a partir do Windows 95, o kernel (o núcleo do sistema, onde a parte interna do sistema operacional acontece, i.e., gerenciamento de discos, memória e dispositivos de entrada) tinha o modo gráfico embutido. No Windows 95 o modo texto sob o ambiente gráfico tinha que ser emulado pois o Windows executava instruções de 32 bits e, para

3

manter compatibilidade entre programas antigos e o "novo" sistema, o Windows fazia de conta que você estava em um ambiente do DOS para esses antigos programas não apresentar problemas. Já no Linux, o kernel não apresenta o modo gráfico em seu código; o kernel sob Linux é um arquivo, notavelmente pequeno (algumas centenas de kbytes) e o modo gráfico é um programa que você instala que ele dá suporte aos ambientes gráficos que, aí outra idéia muito inteligente, pode ser vários: temos desde gerenciadores de janelas simples que apresentam uma interface muito horrível (porém configurável) até gerenciadores completos e bem aparentes (temos inclusive um ambiente que é uma cópia do Windows 95).

Tudo no Linux é um arquivo, por exemplo, no Windows você tem os drivers, que são um arquivo codificado de um jeito que poucos sabem e que diz ao sistema operacional como trabalhar com a entrada/saida de um hardware. Por exemplo, o driver de uma impressora ligada na porta paralela do seu micro não funcionará sem o respectivo driver que ditará as regras de como o Windows deve trabalhar com a impressora que está conectada em seu micro, porém somente será o Windows que enviará e receberá dados da porta paralela. Sob Linux você tem um diretório que contém centenas, se não milhares, de arquivos (são muitos mesmos). Estes arquivos são como um ponteiro para a respectiva porta de seu micro, se você escrever um texto e redirecioná-lo para este arquivo, o dispositivo que está ligado na porta receberá (pode não funcionar, mas ele vai receber, pode ter certeza!).

No Linux o suporte a hardware pode ser embutido no kernel ou pode ser habilitado por meio de módulos. Módulo é um software, codificado diferentemente dos arquivos executáveis (binários) do Linux que através de programas especiais pode ser carregado. No windows o suporte a hardware é bem parecido, com os chamados drivers, que também são softwares que são carregados pelo sistema operacional para fazer interface com o hardware.

Uma das grandes e pouco prática diferença entre Windows e Linux é o fato de você não poder simplesmente usar um cd ao colocá-lo em um drive. No Windows isso é automático, você coloca o cd, acessa a unidade e pronto. Sob Linux você deve por o CD na unidade, executar um programa dizendo que você vai usar esta unidade (o termo usado é montar uma unidade) e quando você terminar de usar os arquívos na mídia em questão, você primeiro deve desmontá- la (dizer ao sistema que você já liberou o CD, por exemplo) para depois removê-la do drive.

Código-Fonte aberto

O diferencial desse sistema operacional é sua filosofia em relação à códigos-fonte: leia, aprenda, modifique. No Linux o código (diferentemente de um Windows, por exemplo) é liberado; junto com todos os outros arquivos de instalação do Linux (pacotes, ou seja, cada conjunto de programa ou bibliotecas) existe um que são os códigos-fontes do kernel (o núcleo do sistema) e seus cabeçalhos (o kernel foi programado em C, então tem os arquivos .C e os .H, respectivamente fontes e cabeçalhos de funções).

Assim como o sistema em si, todos os programas, com pouquíssimas

4

exceções, também tem seu código-fonte liberado.

Funcionamento do Sistema

O Linux tem um funcionamento bem diferente do Windows e do DOS. Durante o processo de inicialização o Linux executa (e mostra para você o que ele está fazendo) vários programas, serviços, inicializa dispositivos, detecta hardware, entre muitas outras operações que são visíveis e, principalmente, configuráveis.

Existe um diretório no sistema de arquivos onde se localizam todos os arquivos de configuração dos programas (desde os arquivos de configuração de rede até os de inicialização e desligamento).

Você pode escolher o gerenciador de boot, ou seja, o programa que vai selecoinar o sistema operacional que será inicializado. Existem dois gerenciadores mais usados:o GRUB e o LILO.

O LILO (Linux Loader) é o mais clássico e, na minha opinião, o mais configurável. Ele tem três modos de seleção de sistema operacional, que pode ser escolhido no arquivo de configuração, são eles: modo texto simples, onde você tem que digitar o nome do sistema a ser inicializado; modo texto com menus rotativos, onde todos os sistemas que podem ser inicializados estão disponíveis para seleção; e o modo gráfico com menus rotativos. Este último nunca vi nenhum computador que estava usando o LILO e este modo.

O GRUB, gerenciador usado por padrão no Conectiva Linux (veja sobre distribuições de Linux a seguir), tem numa interface mais bonitinha por padrão. No GRUB você pode colocar um plano de fundo para embelezar a inicialização.

Aqui além do embelezamento do computador, você também deve escolher entre facilidade de configuração e aparência (GRUB) ou configuração detalhada, mais “na mão” (LILO).

Multi-Usuário

O Linux ele é um sistema multi-usuário, ou seja, você deve se logar para poder usar o computador. Existe, assim como no Windows 2000 por exemplo, permissões de arquivos e diretórios, onde você libera ou bloqueia determinado usuário, grupo de usuário ou todos para ler, escrever ou executar. Sendo administrador do sistema, você pode criar, excluir e alterar dados de usuários de seu computador.

Um fato interessante no Linux é que algumas tarefas tais como usar CD- ROM ou disquetes, utilizar determinados programas, ou até mesmo reproduzir sons em casos mais extremos, vem por padrão desabilitadas para usuários normais do computador, tornando o sistema mais seguro.

Multi-Tarefa

Vários processos (a grosso modo pode-se entender como programas) podem ser executados ao mesmo tempo e, cada processo pode ser de um usuário diferente.

No Linux existe o conceito de Daemons, programas que ficam sendo 5

executados mesmo quando não há ninguém utilizando o computador. Esses programas são geralmente serviços de rede (um servidor de internet, de arquivos, etc.) ou programas para segurança do computador, por exemplo. São geralmente inicializados junto com o computador, antes mesmo de se logar na máquina.

Um fato muito interessante do Linux é que, diferentemente do Windows, você praticamente não precisa reinicar o computador. Se você, por exemplo, faz uma alteração em alguma configuração essencial de rede, somente é necessário reiniciar o serviço específico que você alterou. Para facilitar mais um pouco, existem em alguns diretórios especiais, alguns arquivos que servem justamente para estes fins.

Vários terminais

Quando se esta usando um computador rodando um sistema operacional multi-tarefa e multi-usuário, geralmente você se autentica (se loga) uma só vez e fica usando. Caso haja necessidade de você fazer alguma tarefa com outro usuário, geralmente desloga-se e loga-se com o novo usuário, fechando a sessão do usuário anterior.

Isso é diferente em Linux, por padrão você tem mais de um terminal, veja. Quando o sistema termina de iniciar, você chega em uma tela de log-in, onde você digita seu usuário e sua senha para poder usar o sistema, o que você está atualmente usando se chama terminal. Se você apertar uma determinada seqüência de teclas junto (geralmente Alt+F*) você muda para outros terminais, que podem tanto estar fechados, estar abertos com um ambiente gráfico ou com o modo texto.

Vários ambientes gráficos

A liberdade de escolha é um fato em nossa vida, nos vestimos da forma que bem entendemos, escolhemos nossas companias, etc., porém no mundo dos sistemas pagos e fechados isso é diferente. Lhe obrigam a divulgar o nome da empresa, muitos computadores já vem com o sistema como padrão e até mesmo ficamos presos a uma determinada aparência, sendo as vezes difícil de modifica-la drasticamente. Mas ainda existem os sistemas livres onde, além de se ter total controle da aparência e de toda a funcionalidade, também se tem escolha de vários tipos de padrões.

No Linux existem muitos ambientes gráficos, desde um que é uma cópia do Windows ou do Mac-OS, até gerenciadores de janelas extremamente simples e configuráveis.

Diversas distribuições

A liberdade de escolha não se propaga somente no quesito ambiente gráfico na filosofia de software livre, muitas empresas juntam todos os programas que acham necessários ao funcionamento do sistema Linux que estão desenvolvendo (uma palavra melhor seria pesonalizando), encontram o núcleo do sistema mais estável e adaptável ao foco dessa empresa, geralmente colocam um 6

ou outro ambiente gráfico padrão com as cores do logotipo da empresa (muitas vezes até mesmo o logotipo vem já como papel de parede, por exemplo) e dão um nome à personalização do GNU/Linux deles e distribuem gratuitamente na internet ou encaixotado na prateleira. Nasce aí uma distribuição GNU/Linux.

Atualmente existem muitas distribuições de Linux, algumas mais famosas mundialmente, outras usadas e conhecidas por determinados grupos de usuários, algumas asiáticas, outras brasileiras, emfim, temos várias empresas que personalizam uma distribuição do Linux.

As distribuições mais famosas atualmente são Conectiva (Distro. Brasileira), Red Hat, Slackware, Mandrake, Debian.

Instalação

Antes de começar...

Devemos tomar nota de certas coisas antes de começarmos o processo de instalação do sistema.

Primeiro de tudo saiba o quanto de espaço você irá reservar para o Linux, o qual possui opções de instalação que ocupam desde 50 Megabytes até modos que ocupam mais de 1 Gigabyte. Para usuários iniciantes recomendaria o uso da instalação padrão, que ocupa cerca de 900 Megabytes. Quando chegarmos no processo de particionamento, pensaremos mais detalhadamente no quanto de espaço deveremos reservar.

Saiba também o a marca, modelo e o chipset de sua placa de vídeo. Caso possua uma placa de rede, anote também o modelo, o endereço e a interrupção.

Para a instalação será necessário um drive cd CD-ROM e, talvez um drive de disquete. Anote também o quanto você possui de memória RAM.

Caso não consiga nenhuma das informações anteriores, algumas partes do sistema ficará desconfigurada (ambiente gráfico ou rede por exemplo), porém o sistema operacional ainda funcionará.

O processo de instalação

Vamos por a mão na massa! Temos, de início, duas alternativas para começar a instalação do sistema: a primeira delas é você bootar (inicializar o computador) pelo CD-ROM. Para isso tente configurar na BIOS de seu computador a inicialização pelo CD-ROM; caso seja um computador muito antigo você não terá a opção de inicialização pelo CD.

Se você conseguir configurar a incialização pelo CD, coloque o disco de instalação no drive e veja se aparece uma interface bonitinha. Caso apareça selecione a primeira opção (Desktop Edition), que te levará a um ambiente muito fácil.

Bem, se você não conseguiu a bootar pelo CD, inicie o Windowso ou o DOS, qualquer ambiente Windows que tenha suporte a CD-ROM. Iniciado o sistema entre na unidade de CD e vá para o diretório dosutils, onde você encontrará um arquivo executável chamado rawrite (rawrite.exe). Execute-o. 7

Consiga um disquete formatado e quando o programa executado lhe perguntar:

"Enter disk image source file name: " digite "..\images\boot.img" E quando lhe perguntar pelo drive de destino digite "A:". Insira o disquete

formatado e pressione <ENTER>. Espere pelo programa terminar (demora um bom tempo) e reinicie seu

computador, efetuando boot pelo disquete criado com o programa rawrite. Aparecida a interface selecione a primeira opção (Desktop Edition) e

aguarde a janela principal da instalação aparecer e siga os passos a seguir, sempre atentando para o que o instalador lhe pergunta:

1. Seleção de idioma

Selecione o idioma que você quer ter o sistema e siga em frente apertando o botão "Próximo".

2. Seleção do Mouse

A maioria das vezes o mouse é detectado automaticamente. Verifique se isto ocorreu movimentando o mouse; se ele estiver funcionando corretamente clique em Próximo. Caso a detecção do mouse não tenha ocorrido, você mesmo terá que escolher o tipo do mouse. Clique na opção Seleciona mouse manualmente e em seguida escolha um mouse que corresponda ao seu modelo na caixa de texto Mouses disponíveis.

Caso o seu mouse seja um dispositivo serial você deve também selecionar a porta na qual ele está conectado, na janela Porta serial. Se desconhece o tipo ou a porta serial do mouse, você pode escolher uma configuração e clicar no botão Tentar configuração. Se o mouse funcionar, siga em frente com a instalação, caso contrário clique em outro modelo e tente novamente.

Você também pode tentar configurar o seu mouse como um genérico e testar a configuração; existem dois tipos de mouses genéricos: Generic Mouse (serial) e o Generic Mouse (PS/2). A diferença é que os primeiros são conectados em portas seriais (quadradas) e os segundos são conectados em portas PS/2 (redondas). Se você não conseguiu nenhuma outra configuração, teste os mouses genéricos.

3. Seleção do Teclado

O próximo passo no programa de instalação é a seleção do teclado. Os modelos de teclado mais utilizados são:

- Teclado ABNT modelo 2 (Brazilian ABNT2): Contém o ç no teclado. Este teclado é um dos mais utilizados no Brasil. Verifique se este modelo não corresponde ao seu teclado.

- Teclado US com suporte à acentuação (Generic 105-key (Intl) PC): Modelo que possui o sinal de til ("~") localizado na parte esquerda superior do teclado.

8

Você deve escolher o Layout do teclado, e depois seu Modelo correspondente. Se a configuração não estiver correta, retorne e escolha um novo modelo. Você pode também selecionar um modelo e clicar no botão Área de teste do teclado para testar sua configuração.

Para ter certeza que escolheu o modelo certo, existe uma caixa de texto para teste, escreva lá tentando digitar acentos, números, letras, verificando se tudo está correto.

4. Instalação ou Atualização

Se você já possui um Conectiva Linux instalado (Conectiva Linux 4.0, 5.0, 5.1 ou 6.0) e deseja apenas atualizar a sua máquina, selecione o botão Atualizar uma versão anterior. Ao escolher esta opção, o programa pergunta se você deseja escolher os pacotes para atualizar individualmente. Se desejar, basta seguir em frente que surgirá a tela para a seleção individual de pacotes. Após a escolha dos pacotes, a atualização continua do mesmo modo que a instalação.

Caso seu computador ainda não tem Linux selecione "Fazer uma nova instalação" e siga em frente.

5. Seleção de um Perfil

Neste passo você irá escolhes qual o tipo de instalação que deseja. Vamos escolher a instalação padrão

Das três opções seguintes, selecione "Forçar particionamento manual" para que nós particionemos o disco de acordo com nossa necessidade.

6. Particionamento

Chegamos a uma parte muito importante do programa de instalação, talvez a mais importante. Para instalar o Linux é necessário haver espaço disponível no disco rígido, o qual deve estar separado em áreas, tanto para o próprio sistema como para outros sistemas operacionais. Estas áreas são as partições do disco. Existem diversos tipos de partições, dos quais o instalador somente nos dá algumas opções.

As partições disponíveis são: Ext2- Tipo de partição usada para o sistema operacional mesmo,

contendo toda a estrutura de diretórios necessária para o funcionamento do Linux. Ext3 - Uma terceira versão da partição acima, sendo a grande

diferença em relação a versão anterior (ext2) o acesso mais rapido a arquivos. LinuxSwap - Este tipo de partição serve como memória virtual.

Quando sua memória RAM ficar cheia, o Linux começará a usar esta partição como memória virtual, logicamente tornando o sistema mais lento. Geralmente essa partição é de 2 a 2,5 vezes o tamanho de sua memória RAM total.

Para esta instalação que iremos realizar, criar as seguintes partições (para criar uma partição selecione um espaço livre e dê um clique duplo ou pressione <ENTER>):

Ponto de montagem: /boot; Tamanho: 10mb; Sistema de arquivos: Ext2 9

Ponto de montagem: N/D; Tamanho: 2 x Memória RAM; Sistema de arquivos: LinuxSwap

Ponto de montagem: /; Tamanho: mais de 1Gb; Sistema de arquivos: Ext2

Está feito o esquema de partições. O ponto de montagem é o diretório no sistema de arquivos onde essa partição será usada.

7. Seleção de grupos e pacotes individuais Caso tenha escolhido pela opção de selecionar pacotes neste local

você selecionará cada grupo de softwares ou cada software separado para a instalação.

8. Seleção de placa vídeo Nesta seção você selecionará a placa de vídeo que usará no

ambiente gráfico. Aqui o instalador já adianta uma bela parte de configuração da parte gráfica do sistema. Geralmente o instalador já detecta automaticamente a sua placa de vídeo, porém confira. Evite de efetuar o teste, pois a instalação pode travar e será necessário começar tudo de novo. O modo gráfico no Linux pode ser algo um pouco perigoso em relação a travamento.

9. Configuração de Contas e Senhas Aqui você deve atribuir uma senha ao administrador (root), também

lhe dando a opção de criação de contas de usuário normais, por enquanto sem senha. A senha de cada usuário criado será configurada depois da instalação, no sistema.

10. Escolha do gerenciador de inicialização Para inicializarmos o Linux e para que possamos escolher entre os

vários sistemas operacionais disponíveis que podem coexistir em nossos computadores usaremos um gerenciador de inicialização, que nada mais é um programa que executa logo após a BIOS ter saido de cena, quando se liga o computador.

Para um maior conforte, selecione o GRUB, que já vem com uma interface mais amigável. Selecione para o gerenciador de boot ser instalado no registro mestre de inicialização (o MBR).

11. Finalizando a instalação Estamos agora finalizando o processo de instalação do Conectiva

Linux. A penúltima janela pergunta se você deseja criar um disco de inicialização. Isto pode ser útil quando surgir algum problema após o processo de instalação, principalmente em relação a escrita do programa gerenciador de boot em seu disco. Se você possui um disquete à mão, formatado (a instalação não aceita um disquete com dados) e pronto para ser utilizado, coloque o disquete no dispositivo e crie um disquete de inicialização, caso contrário não se preocupe.

10

Após esta tela, sua instalação está concluída! Basta agora clicar em finalizar, retirar o CD (ou o disquete, dependendo da instalação) e inicializar o Linux

Básico do sistema

Log-In

Instalado o sistema, vamos liga-lo e esperar algum tempo até o final da inicialização que, dependendo de seu computador, pode durar cerca de dois minutos.

Então, concluída a inicialização, você chegará a uma tela onde estará o nome atribuido ao seu computador na instalação seguido da palavra "log-in:". Como esta é provavelmente a primeira vez que você está entrando no sistema, digite a palavra root e pressione <ENTER>.

root no Linux é o administrador de sistemas, este usuário tem permissão de fazer tudo o que bem entender. Muito cuidado com suas ações usando este usuário pois se você apagar ou modificar algum arquivo importante, será razoalvemente difícil recuperar.

Durante a instalação, em um determinado passo você configurou uma senha de root. Ao ter apertado a tecla enter na tela anterior provavelmente aparecerá escrito a palavra "Password: " esperando que você digite a senha deste usuário; digite a senha configurada na instalação.

Agora você chegou no bash, o interpretador de comando que vem como padrão na maioria das distribuições.

Arquivos executáveis e execução de programas

Neste sistema, diferentemente da grande maioria de sistemas que se encontra, arquivos não precisam ter extensão necessariamente. Sendo assim, arquivos executáveis não tem uma extensão como exe ou com. Então você deve estar se perguntando: "Mas como eu diferenciarei um arquivo executável de um arquivo comum?". Bem, eu te respondo, existem duas maneiras: a primeira, após executar o comando ls (veja a seguir) você obterá uma lista, bem colorida, de arquivos e diretórios. Os arquivos executáveis geralmente são verdes.

Porém o sistema onde você está pode não estar configurado para aparecer cores no comando ls, aí a coisa fica um pouco mais chata. Existe um parâmetro, que quando passado ao ls, te dá uma lista detalhada dos atributos do arquivos, sendo um deles as permissões. Nesta string de permissões, caso o arquivo seja executável, a primeira letra dela será um "x".

Para a execução de programas que estejam em diretórios padrões, configurados na variável de ambiente PATH (esta variável indica onde o interpretador de comandos deve procurar por programas ao ser digitado um comando), basta digitar o nome do arquivo e teclar <enter>, porém, caso o executável esteja no diretório atual, deve acrescentar um "./" antes do nome do arquivo a ser executado. Ex: ./teste executaria o arquivo teste.

11

O Linux diferencia arquivos que se pode executar através das permissões já comentadas, porém o que acontece se eu configurar um arquivo que não seja realmente um executável para poder ser executado e executá-lo? Simplesmente acontecerá um erro e nada mais; assim como em qualquer sistema, arquivos executáveis tem toda uma estrutura diferente de outros arquivos.

Comandos de navegação no sistema de arquivos

Tarefa árdua para uns, prazerosa para outros, a verdade sobre o modo texto é que ele é mais rápido, em algumas tarefas é mais prático e ocupa bem menos memória que o modo gráfico. Porém se paga o preço de não ter uma interface bonita e de muitas vezes não se ter a praticidade que o modo gráfico oferece.

Chegamos, após ter logado, em um prompt que espera que digitemos algum comando e apertamos <enter>. Vejamos alguns comandos e o que qual seu efeito no sistema.

Nota: Ao ler estes comandos, sempre que ver escrita a palavra arquivo como parâmetro, subentende-se que se pode usar um wildcard (explicado no comando ls)

cd - O mais básico dos comandos, o cd (change directory) nos muda de diretório atual, levando para o diretório passado como parâmetro. No sistema de arquivos usado pelo Linux, os diretórios são separados por barras comuns (/, a mesma da representação de datas) e não temos o conceito de drives (como c:, d:, etc), o diretório raíz do sistema de arquivos é o diretório "/". Para irmos para o diretório /home/bolha digitaríamos o seguinte:

cd /home/bolha

Uso geral deste comando: cd [diretorio]

ls - Este comando lista todos os arquivos que estão presentes no diretório atual. Usado sem nenhum parâmetro ele não mostra arquivos ocultos. Como parâmetro, este comando pode receber o nome de um arquivo ou um wildcard, que na verdade é um caractere especial que tem efeitos um pouco diferentes do normal. Veja:

Supondo que no diretório atual existam os arquivos arq1, arq2, arq3, Arq3, teste. Se você digitar um ls, ele te retornará o seguinte:

arq1 teste arq2 arq3 Arq3

Agora, experimente digitar ls a* e ele te mostrará o seguinte em nosso caso:

arq1 arq3 12

arq2

Como se pode reparar, o Linux diferencia maiúsculas de minúsculas em seu sistema de arquivos e em praticamente todo o sistema. O caractere * digitado por nós no comando anterior é o wildcard que citei que você poderia usar. Para localizar obter uma lista mais completa dos arquivos existentes no diretório atual adicione como parâmetro para o comando um "-l", assim, além do nome dos arquivos, serão também listados a data de criação, as permissões, o dono, o tamanho em bytes entre outros dados. Caso seja adicionado também o parâmetro "-a", teremos em nossa lista todos os arquivos, inclusive os ocultos.

Um fato interessante em Linux é que para transformar um arquivo em oculto, não precisamos editar suas propriedades com algum outro comando muito misterioso, mas sim somente adicionar um "." (ponto) antes do nome do arquivo. Por exemplo, o arquivo ".estou_escondido" seria um arquivo oculto.

Uso geral:

ls [arquivo] [parâmetros]

cp - Efetua cópia de um arquivo de origem para um local de destino. Por padrão, na maioria das distribuiçõe de Linux, os comandos assumem que você tem certeza do que está fazendo, portanto se estiver copiando um arquivo para um diretório onde existe outro do mesmo nome, provavelmente este será sobrescrito sem você ser avisado antes. Uso geral desse comando:

cp <arquivo de origem> <[diretorio de destino] ou [arquivo de destino]>

rm - Apaga um arquivo ou um diretório com este comando. Preste atenção, pois este comando, assim como o cp, também não lhe pergunta se deseja realmente apagar o arquivo escolhido. Para apagar um diretório, deve ser usado o parâmetro -r (recursivo), ou seja, apaga todos os arquivos dentro de cada subdiretório do diretório selecionado, inclusivo os subdiretórios.

Uso geral:

rm [-r] <arquivo ou diretório>

mv - O mv, além de mover arquivos, também serve para renomeá-los, aceitando tanto nome de arquivos quanto diretórios. O procedimento para renomear um arquivo é o mesmo que mover.

Por exemplo: para voce mover um arquivo do diretório atual para o diretório /home/bolha por exemplo, você digitaria o seguinte:

mv arquivo /home/bolha Caso queira executar a mesma operação, porém mudando o nome do

arquivo para arquivo.teste, seria feito o seguinte: mv arquivo /home/bolha/arquivo.teste

O uso geral deste comando é:

mv <arquivo ou diretório origem> <diretorio destino> [-R]

13

mkdir - Este comando permite que você crie diretórios, contanto que não exista outro no mesmo local com o mesmo nome e você tenha permissão para escrever no local determinado. Você pode passar como parâmetro todo um caminho onde deseja criar um diretório ou simplesmente o nome do diretório que deseja criar, assim criando no local atual.

O uso geral deste comando é:

mkdir <diretorio a ser criado>

Darei um exemplo dos dois tipos de uso a seguir: mkdir /home/bolha/novo_diretorio mkdir novo_diretorio

pwd - O pwd, mesmo sendo simples do jeito que é, pode ser realmente útil para as tarefas cotianas do sistemal. Ele simplesmente exibe todo o caminho do diretório atual.

Uso geral:

pwd

Supondo que estejamos em /home/bolha/novo_diretorio, ao executar este comando obteremos exatamente o mesmo na tela: /home/bolha/novo_diretorio

cat - Não, não é um gato. Este comando serve para você visualizar qualquer tipo de arquivo na tela. É uma exibição simples e sem pausas, sendo prático somente para arquivos pequenos. Atenção: este comando não se encaixa da definição da palavra arquivo dita acima; aqui você somente poderá usar um arquivo mesmo como parâmetro.

Uso geral:

cat <nome do arquivo>

more - O more é outro comando para visualização de arquivos, um pouco mais arrojado que o cat; caso o arquivo a ser visualizado tem mais linhas do que possa ser exibido na tela, este programa cuida de fazer paginação, esperando que apertemos <ENTER> para exibir a linha seguinte ou <q> para que a visualização seja cancelada.

O uso geral deste comando é:

more <nome do arquivo>

less - Mais um visualizador de arquivos, dessa vez que permite uma navegação total pelas linhas do arquivo através das setas do teclado (cima, baixo, direita e esquerda).

O uso geral deste comando é o seguinte:

less <nome do arquivo>

14

Comandos de rede

Um dos vários potenciais do Linux é o seu uso em redes; o Linux suporta os mais diversos tipos de protocolos, tem todos os tipos de servidores de rede (um dos mais usados servidores de internet roda no Linux, o Apache), possuí vários comandos para a administração de redes e inclusive possui suporte a firewall no núcleo do sistema. Notavelmente os serviços de rede do Linux, assim como dos sistemas operacionais comerciais, possuem diversos bugs, porém a diferença é a rapidez com que são solucionado e a dificuldade da exploração desses problemas.

Bem, apesar da grande quantidade de serviços e comandos de rede, veremos somente alguns comandos básicos para redes.

ping - Este grande conhecido de todos que mechem em ambientes de rede nos ajuda a ver se uma máquina está disponível na rede. Basta executar o comando ping seguido do nome da máquina ou, de preferência seu IP. Existem vários parâmetros que podem ser passados para este comando, como o tamanho do pacote ICMP que será enviado, o número de tentativas, entre outros, porém, como visamos dar uma explicação básica, não entrarei em maiores detalhes quanto a esses parâmetros. Grande parte dos comandos em linux, caso você passe o parâmetro "-h" ou "--help", lhe mostrará uma lista completa de cada parâmetros que poderá ser usado e sua descrição.

Uso geral:

ping <nome/IP computador destino>

traceroute - Este comando traça a rota de um pacote até seu destino, mostrando todos os roeadores por onde passou.

Uso geral:

traceroute <IP computador destino>

netstat - Comando que exibe para você todas as conexões TCP/IP ativas com outros computadores e seus estados.

Uso geral:

netstat [parâmetros]

who - Quando executado, o comando who mostra quem está logado na máquina, em que termnal virtual está logado e a data do log-in.

Uso geral:

who

hostname - Mostra o nome do computador local e o domínio. 15

Uso Geral:

hostname

telnet - Este programa permite que você se conecte a computadores na rede e tenha um terminal remoto. Você trabalha no computador que conectou como se você estivesse fisicamente nele. Obviamente para se conectar a um computador através deste programa, o servidor de telnet deve estar sendo executado, você ter permissão para se conectar ao computador e, dependendo de como a máquina remota estiver configurada, será necessário ter um login e uma senha válidos.

O parâmetro porta passado ao cliente telnet é opcional; caso omita este parâmetro, a porta padrão de telnet será utilizada (porta de número 21).

Uso geral:

telnet <nome ou ip da máquina> [porta]

ftp - O FTP (File Transfer Protocol) é um programa utilizado para transferência de arquivos entre computadores em uma rede. Assim como com o telnet, para se conectar a um computador remoto você deve ter permissão, o computador estar executando o servidor de ftp e você ter um login e senha válidos.

Uso geral:

ftp <nome ou ip do computador>

Editores de texto

Apesar de serem feios, os editores de texto em modo texto em Linux são funcionais e existem vários diferentes. Os mais famosos são o vi (pronuncia-se "vi ai") e o emacs, que, quando vistos somente da aparência externa parecem simples, porém quando explorados a fundo você percebe que são softwares realmente complexos e completos. Abordarei aqui, de forma básica, somente o vi.

O editor vi é excelente para programadores, pois apresenta as palavras chaves, tipos de dados e comandos da linguagem cada um em uma cor diferente, sendo estas cores personalizadas através de arquivos de configuração. Neste editor não existem menus, não se trabalha com mouse (sim, existe mouse no modo texto no linux e ele serve para algo!) nem diretamente com teclas de atalho.

Para inicar o vi, a sintaxe geral é:

vi [nome do arquivo a editar]

Ao entrar no vi para editar um arquivo você começa no modo de navegação, no qual você somente pode visualizar o arquivo, apagar linhas, apagar caracteres, entre outras operações; para entrar no modo de edição (para digitar 16

realmente algo no programa) é necessário pressionar a tecla ESC e depois a tecla "i", desta forma você já poderá digitar. Para sair do modo atual, seja ele qual for, somente se pressiona a tecla ESC; resumindo: antes de qualquer comando deve se pressionar a tecla ESC para cancelar o comando anterior.

Existem comandos que são montados na linha de comando, como os comandos para salvar e sair. Para salvar as alterações em um arquivo, deve pressionar ESC, seguido de ":" e por último "w", pressionando-se a tecla ENTER logo em seguida.

Para sair deste editor deve pressionar ESC, seguido de "q" e, caso queira cancelar as alterações feitas no arquivo, deve colocar um "!" em seguida e pressionar ENTER.

Existem infinitos outros comando do vi, porém o essencial são os comandos explicados anteriormente.

Não existe somente editores pobres de interface como o VI e o Emacs no modo texto do Linux, existem alguns editores alternativos que, pessoalmente não me dou bem com eles. O jed, rhide (este último deve ser baixado da internet. Ótimo IDE que lembra muito o Turbo Pascal e o Turbo C), joe, entre outros editores similares.

Brownsers modo texto

Parece piada, mas existem navegadores de internet em modo texto que, obviamente, não exibem imagens. O bom grande ponto positivo destes navegadores é o fato deles serem práticos para a visualização de um arquivo HTML ou uma página na internet. São essencialmente rápidos pelo fato de não carregar nenhum tipo de imagem.

Existem dois navegadores em modo texto mais conhecidos: o lynx e o links. O lynx vem como padrão na maioria das distribuições, não apresenta

menus e basicamente tem o mesmo funcionamento do links (este último tem menus que auxiliam um pouco).

O uso geral destes navegadores é:

lynx <site ou arquivo html> links <site ou arquivo html>

Para utilizá-los é simples, usando as setas para cima e para baixo para passar ou voltar, respectivamente, cerca de 25 linhas de texto; a tecla ENTER para abrir links e as teclas INSERT e DELETE para passar e voltar linhas da página; e TAB (ou as setas para a direita e esquerda) para levar o foco até os links.

Utilização de Unidades de Disco

Para se utilizar um disquete ou um CD-ROM no Linux, é muito diferente do que estamos acostumados no Windows, onde somente colocamos o CD e acessamos o a letra da unidade de CD, e depois quando não queremos mais

17

utilizar, retiramos o CD e está tudo certo. O modo de se utilizar qualquer unidade de disco (seja disquete, cd ou até

mesmo uma partição de um disco rígido) sob Linux se baseia no conceito de montar a unidade a ser usada. Montar uma unidade é a mesma coisa que você dizer ao sistema operacional que os arquivos da unidade de disco a ser utilizada estarão listados em determinado diretório, o qual é definido por você, sendo que você pode trabalhar com estes arquivos (apagar, ler, renomear, exclui, etc.) da mesma forma que faria em um diretório comum de seu sistema de arquivos.

Antes de vermos qual é o comando, devemos aprender como o Linux trabalha com dispositivos de hardware.

Algum dia provavelmente você ouvirá alguém falar, assim como eu ouvi, que tudo no Linux é arquivo, porém como assim? Pense no Windows, nele temos por exemplo um driver para a porta COM 1 que, no fundo, a forma como trabalhar com esta porta está dita em um arquivo, porém você não pode diretamente escrever nesta porta, muito menos ficar esperando que esta porta lhe envie algo e quando lhe enviar você capturar de uma maneira fácil como esperar que alguém pressione uma tecla. Sob Linux existe um diretório chamado dev (devices ou dispositivos em português), o qual contém milhares de arquivos que fazem referência cada um a um dispositivo diferente; estes arquivos funcionam como um ponteiro para o dispositivo em questão.

Bem, indo ao que interessa, a montagem de unidades de disco em Linux é feita da seguinte forma através do comando mount:

mount [/dev/dispositivo] [-t tipo do sistema de arquivos] [diretório destino]

Caso sejam omitidos todos os parâmetros, o mount exibirá as unidades atualmente montadas.

O dispositivo geralmente se encontra no diretório /dev, como explicado acima; os tipos de sistemas de arquivos mais comuns são:

iso9660 - usado por CD-Roms • vfat - Tipo de partição usado pelo Windows (chamada fat32) • ntfs -Tipo de partição utilizado pelo Windows 2000 • msdos - Partição geralmente usada em disquetes; reconhecida pelo

Windows

O diretório de destino, também como já comentado, é onde você usará os arquivos contidos no dispositivo ou partição.

Os arquivo de dispositivos mais comuns são: • /dev/fd0 - Disquete (A: sob Windows) • /dev/hdaX - Primeiro HD (Primary Master), onde X seria o número da

partição começando do 1 indo até quantas partições existirem em seu disco.

/dev/hdbX - Dispositivo Primary Slave (configurado na BIOS do computador como Primary Slave).Assim segue-se até o /dev/hddX (seguindo a ordem de secundary master e depois secundary slave).

Atenção: por exemplo, caso o /dev/hdc seja seu CD-Rom, na horá de montar a unidade, você omitirá o “X”, e.g.:

18

mount /dev/hdc -t iso9660 /mnt/cdrom

O diretório mais utilizado para montagem é o /mnt, onde cada sub-diretório é relativo a um dispositivo.

Quando você terminar de utilizar a unidade, você deve desmontá-la. Ao gravar em disquetes, por exemplo, o Linux guarda grande parte num buffer que, somente na desmontagem da unidade, é efetivamente escrito no disquete.

Para montar ou desmontar uma unidade de disco, você deve ser o root, ao menos que o administrador tenha dado permissões para seu usuário (através de algum outro mecanismo) para efetuar estas operações.

Compilação em C

Como o Linux foi um sistema operacional totalmente desenvolvido em C e Assembly e, conseqüentemente, a maioria dos softwares feitos para ele também são feitos em C, tendo geralmente seu código-fonte livre, o Linux apresenta um compilador da linguagem C praticamente de padrão.

Obviamente programas podem ser feitos e compilados (ou interpretados) em outras linguagens tais como Perl, Python, Bash Scripting, Java, PHP, entre outras, porém os programas em C são mais comuns.

O compilador de C mais usado é o gcc (GNU C Compiler) que possui uma infinidade de bibliotecas de desenvolvimento que acompanham ele e o sistema operacional. Este compilador gera executáveis para Linux que, por motivos óbvios não são compatíveis com o Windows ou MAC-OS; porém entre diferentes distribuições de Linux, um executável gerado em uma roda normalmente em outra, pelo fato do kernel usado ser o mesmo, apesar de versões diferentes.

A sintaxe geral para compilar um programa no modo-texto é:

gcc [-o nome_arquivo_saida_executável] <arquivo fonte>

19

Descompactação

Vários tipos de arquivos compactados existem no Linux, os mais famosos e respectivamente os comandos para descompactação são:

.tgz: tar -xvzf <nome do arquivo.tgz>

.tar.gz: tar -xvzf <nome do arquivo.tar.gz>

.bz2: bzip2 -d <nome do arquivo.bz2>

.tar: tar -xvf <nome do arquivo.tar>

Instalação e desinstação de programas

Em alguns casos quando você pega um programa que vem somente o código-fonte, realidade extremamente comum devido ao fator compatibilidade, a instalação de um programa se faz uma tarefa um pouco trabalhosa e muitas vezes desanimadora. Com esses softwares somente com o fonte, antes de conseguir usá-los, devemos executar certos programas (na verdade são arquivos chamados scripts que contém comandos que são interpretados pelo próprio interpretador de comandos) para testar o sistema e ver se possui todas os requisitos para a compilação, posteriormente compilar, executar o script de instalação (copia os executáveis e os arquivos dependentes do programa para os diretórios corretos) e somente depois podemos usar.

O processo geral, após a descompactação do código fonte do programa (explicado no item anterior) é o seguinte (você deve estar no diretório do fonte):

./configure make make install

Na ordem em que foram escritas, as linhas a seguir verificam se o sistema está OK para a compilação, compila e instala o programa. Sempre leia o arquivo chamado geralmete README que vem junto aos programas.

Ainda bem que existem pessoas que pensam um pouco mais na facilidade de uso e distribuem programas já compilados onde é só instalar e usar. Nesse tipo de distribuição de programas, temos vários formatos e padrões, porém, no Conectiva Linux, usamos o rpm.

Para instalar pacotes rpm devemos executar o seguinte comando:

rpm -ivh <nome do pacote.rpm>

Para a desintalação usamos o seguinte:

rpm -u <nome do pacote>

No caso da desintalação, o nome do pacote deve ser o mesmo que o nome de quando foi instalado retirando-se a extensão “.rpm” do final do nome do arquivo.

Para a instalação e desintalação de programas, podemos usar o utilitário de 20

configuração chamado linuxconf, que, devido ao grande número de opções e sua complexidade, não será abordade neste material.

Desligando o sistema

No Windows caso desliguemos o sistema sem ir no menu Iniciar e depois em Desligar, quando ligarmos novamente o sistema teremos (não obrigatóriamente, mas recomendável) que esperar o scandisk terminar seu trabalho. O scandisk é um programa de sistema que procura por erros no sistema de arquivos do Windows, encontrando e corrigindo-os.

Não diferentemente do Windows, no Linux também acontece isso, porém de uma forma mais grave: no Windows você desliga incorretamente quantas vezes você quiser e nunca você causará sérios danos ao sistema de arquivos, porém no Linux corremos o um sério risco de danificarmos o sistema de arquivos, talvez por fragmentos de arquivos corrompidos ou algo assim, e não conseguirmos mais iniciar o sistema.

Para que não corramos esse risco, devemos desligar de forma correta através do comando:

shutdown [-h] [now]

Este comando diz ao sistema para se desligar, ou seja, finalizar todos os programas, desmontar todas as unidades e finalmente deixar que desligue com segurança o sistema.

Os parâmetros -h e now, dizem ao sistema, respectivamente, que você quer desligar o sistema e que isso deve ser feito agora (já que você poderia ser passado um tempo em minutos), respectivamente.

Para este comando você deve ser o root, ao menos que por outro método você tenha permissão para desligar o sistema.

Para reinicar o sistema sem ser root, somente se estiver habilitado (habilitado por padrão), você pode pressionar a famosa seqüencia de teclas Ctrl- Alt-Del; ou digitar no interpretador de comandos o comando reboot (necessita ser root)

Modo Gráfico

Vários ambientes gráficos

Liberdade de escolha. Essa seria a expressão que eu usaría para resumir este capítulo de nosso guia.

No Windows se você não gostar da aparência dele, tem muito poucas alternativas para o embelezar, porém aqui no Linux, podemos simplesmente mudar de ambiente gráfico, trabalhando de um jeito diferente com o mouse, tendo cores diferentes, modos de gerenciar as janelas diferentes! Caso gostamos de um determinado ambiente gráfico, porém alguns detalhes nos incomoda, podemos tranqüilamente configurá-lo e personalizar-lo de acordo com nosso gosto (ou até 21

mesmo nossa frescura). Os mais famosos gerenciadores de janelas (nome diferente para ambiente

gráfico) são o KDE, Gnome, XWindow (por favor, não é XWindows! Este é o mais básico de todos). Cada um deles trabalha de forma diferente com foco das janelas, têm aparências muito diferentes umas das outras e são totalmente personalizáveis (principalmente o XWindow).

Não existe o melhor ou o pior, a escolha vai ao gosto do usuário, de acordo com suas necessidades.

Inicialização

Para iniciar o ambiente gráfico quando estamos no modo texto, devemos simplesmente digitar startx no interpretador de comandos e o ambiente gráfico configurado como padrão será carregado.

Caso queira iniciar algum ambiente que não o padrão, você pode digitar:

xinit <-e> <arquivo do ambiente gráfico>

O arquivo do ambiente gráfico pode ser startkde (para o KDE), fvwm95 ou qvwm (para o ambiente similar ao Windows 95), entre outros.

Daqui em diante...

O modo gráfico, por suas próprias características, tem uma interface de muito fácil aprendizado, variando de cada ambiente; nele vocë provavelmente você encontrará um menu que vai te levar aos softwares julgados mais importantes por aquele ambiente gráfico, algum programa para configuração básica da aparência do ambiente e outros atalhos úteis.

Documentação

Introdução

Eu diria que é o que menos falta neste sistema operacional. Você tem desde programas que você usa para uma consulta rápida de um programa ou comando até extensas documentações explicando como se faz algo no sistema ou como se usa um determinado programa (os famosos "how-to").

Páginas de manual

Os guias rápidos de consultas (que as vezes são tão completos quanto podem) são também chamados de páginas de manual, acessados pelo comando (em modo texto) man. As páginas de manual de algum software, comando ou até mesmo uma função da linguagem C pode ser acessadas dessa forma:

man <nome do que procura> 22

Tente ser exato ao procurar por algo. Por exemplo, caso esteja querendo saber como funciona o parâmetro -f do comando rm digite o seguinte:

man rm

Pois o parãmetro procurado diz respeito a este comando. Caso esteja programando C (olha que a documentação chega a ser melhor que a do Turbo C, na minha opinião) e queira saber sobre a função printf, você pode digitar:

man printf

A navegação pela documentação funciona como no programa less. Inclusive, caso esteja procurando por alguma palavra aperte a tecla </> (barra de data), logo em seguida digitando o que procura seguido do pressionamento da tecla <ENTER>. Assim todas as ocorrências da palavra procurada ficarão destacadas na tela. Para que o visualizador vá automaticamente para a próxima ocorrência da palavra aperte a tecla barra novamente seguida de <ENTER>.

How-To's

Este tipo de documentação explica desde como você montar um firewall até como funciona algum simples comando do sistema.

Ao contrário das páginas de manual, estas extensas documentações não são acessadas com um comando, mas sim são arquivos em um determinado diretório disponíveis para a visualização da forma que você melhor dispor. Os arquivos estão todos dispostos no diretório /usr/doc ou, em outros casos em /usr/ local/doc, e você pode visualiza-los utilizando algum editor de texto (vi, emacs, algum editor do modo gráfico, etc.) ou algum programa específico para a visualização de arquivos (de preferência, em modo texto, o less).

Especificamente os How-To's relativos ao sistema operacional mesmo (e não aos programas que o acompanham) encontram-se em /usr/doc/Linux-HOW- TOs e também em /usr/doc/Linux-Mini-HOW-TO.

Outras fontes

Apesar da documentação que acompanha o sistema e seus softwares ser bastante completa, ainda podem surgir dúvidas não sanadas por estes infinitos megabytes de texto.

Sendo assim, as vezes precisamos pesquisar em outras fontes (que também são muitas!) como:

- Livros Existem três livros que acompanham o Conectiva Linux: o Guia de

Instalação, o Guia do Administrador de Sistemas e o Guia do Administrador de Redes. São três livros excelentes que abordam tópicos específicos, além de serem grátis e estarem disponíveis para download ou visualização no site da

23

Conectiva (www.conectiva.com.br). Estes livros também vêm junto com o CD de instalação do Conectiva Linux (pode ser que algum deles tenha sido retirado ou de dois livros ter sido feito somente um).

Ainda relativos ao Conectiva Linux temos os livros que dizem respeito à distribuição Red Hat, pois o Conectiva é meio que uma derivação do Red Hat.

- Sites O Google possui uma ferramenta de pesquisa somente em sites que

tem a ver com Linux, funcionando no endereço www.google.com.br/linux. Nestes dois sites que citarei você encontrará documentos escritos

por usuários independentes de qualquer equipe de desenvolvimento de distribuições do Linux, são eles o LinuxAll (www.linuxall.org) e o OLinux (www.olinux.com.br). Neles você poderá encontrar além de documentos explicando coisas úteis que as vezes precisamos fazer mas não sabemos como e também muitos links! Inclusive no OLinux existe um curso de C muito bom para download, escrito pelos responsáveis pelo site, que aborda inclusive comunicação em rede.

24

Até o momento nenhum comentário
Esta é apenas uma pré-visualização
3 mostrados em 24 páginas