Sistemas Operacionais ESCOLA Sistemas Operacionais 1 Escola Alcides Maya - Primeiro Módulo Sumário Sistemas Operacionais1 1 INTRODUÇÃO AOS SISTEMAS OPERACIONAIS................................................................. 4 O que é o Sistema Operacional ?.......................................................................................................................................... 4 2 TIPOS DE SISTEMAS OPERACIONAIS.................................................................................... 5 Sistemas Multitarefas e Multiusuários :............................................................................................................................. 5 Multiprogramação:.............................................................................................................................................................. 5 Multiprocessamento:............................................................................................................................................................ 5 2.1 História do MS-DOS .................................................................................................................................................... 6 2.2 Nomenclatura de Arquivos MS-DOS............................................................................................................................. 6 Extensões de Arquivos.......................................................................................................................................................... 7 3 COMANDOS DO MS-DOS........................................................................................................... 8 3.1 ARQUIVOS EM LOTE................................................................................................................................................ 17 4 INTRODUÇÃO AO SISTEMA OPERACIONAL LINUX....................................................... 19 História................................................................................................................................................................................ 19 Licença GPL....................................................................................................................................................................... 20 GNU.................................................................................................................................................................................... 20 Distribuições....................................................................................................................................................................... 20 Strutura de Diretórios.......................................................................................................................................................... 22 Usuário Administrador........................................................................................................................................................ 22 4.1 NÍVEIS DE INICIALIZAÇÃO.................................................................................................................................... 22 Carregando Informações Para a Inicialização..................................................................................................................... 22 Gerenciadores de Inicialização do Linux............................................................................................................................ 23 LILO................................................................................................................................................................................... 23 Grub.................................................................................................................................................................................... 23 O Processo init.................................................................................................................................................................... 23 Prompt de Comando........................................................................................................................................................... 24 Identificação de discos e partições em sistemas Linux....................................................................................................... 24 Relação de comandos MS-DOS ---LINUX........................................................................................................................ 25 5 COMANDOS LINUX (UTILIZANDO)...................................................................................... 27 6 BIBLIOGRAFIA............................................................................................................................ 35 2 Sistemas Operacionais 3 Escola Alcides Maya - Primeiro Módulo 1 INTRODUÇÃO AOS SISTEMAS OPERACIONAIS Programas computacionais ou softwares constituem o elo entre o aparato eletrônico ou hardware e o ser humano. Tal elo se faz necessário dada a discrepância entre o tipo de informação manipulada pelo homem e pela máquina. A máquina opera com cadeias de códigos binários, enquanto o homem opera com estruturas mais abstratas como conjuntos arquivos, algoritmos, etc. Programas computacionais podem ser grosseiramente divididos em dois tipos: -> programas do sistema que manipulam a operação do computador; -> programas aplicativos que resolvem problemas para o usuário; O mais importante dos programas do sistema é o sistema operacional, que controla todos os recursos do computador e proporciona a base de sustentação para a execução de programas aplicativos. O que é o Sistema Operacional ? A maioria de usuários de computador têm alguma experiência com sistemas operacionais, mas é difícil definir precisamente o que é um sistema operacional. Parte do problema decorre do fato do sistema operacional realizar duas funções básicas e dependendo do ponto de vista abordado, uma das funções é mais destacada que a outra. 4 Sistemas Operacionais 2 TIPOS DE SISTEMAS OPERACIONAIS Sistemas Multitarefas e Multiusuários : Um sistema operacional multitarefa se distingue pela sua habilidade de suportar a execução concorrente de processos sobre um processador único sem necessariamente prover forma elaborada de gerenciamento de recursos CPU, memória, etc. Sistemas operacionais multiusuários permitem acessos simultâneos ao computador através de dois ou mais terminais de entrada. Embora freqüentemente associada com multiprogramação, multitarefa não implica necessariamente em uma operação multiusuário. Operação multiprocessos sem suporte de multiusuários podeser encontrado em sistemas operacionais de alguns computadores pessoais avançados e em sistemas de tempo real. Multiprogramação: Multiprogramação é um conceito mais geral que multitarefa e denota um sistema operacional que prove gerenciamento da totalidade de recursos tais como CPU, memória, sistema de arquivos, em adição ao suporte da execução concorrente dos processos. Quando um sistema operacional permite apenas a monoprogramação, a execução de programas passa por diversas fases, alternando momentos em que o processo se encontra executando ou bloqueado. Através do uso da multiprogramação é possível reduzir os períodos de inatividade da CPU e consequentemente aumentar a eficiência do uso do sistema como um todo. O termo multiprogramação denota um sistema operacional o qual em adição ao suporte de múltiplos processos concorrentes, permite que instruções e dados de dois ou mais processos disjuntos estejam residentes na memória principal simultaneamente. Multiprocessamento: Embora a maioria dos computadores disponha de uma única CPU que executa instruções uma a uma, certos projetos mais avançados incrementaram a velocidade efetiva de computação permitindo que varias instruções fossem executadas ao mesmo tempo. Um computador com múltiplos processadores que compartilhem uma memória principal comum é chamado um multiprocessador. O sistema que suporta tal configuração é um sistema que suporta o multiprocessamento. 5 Escola Alcides Maya - Primeiro Módulo 2.1 História do MS-DOS MS-DOS (MicroSoft Disk Operating System), provavelmente o sistema operacional com maior número de usuários, foi desenvolvido de forma não tão profissional. Quando a IBM decidiu lançar seu computador pessoal no início da década de 1980, a empresa não estava interessada no desenvolvimento de hardware ou software para este sistema. Desta forma, ela selecionou como plataforma de hardware o processador 8088 da Intel, com arquitetura interna de 16 bits mas trabalhando em um barramento externo de dados de 8 bits. Apesar de que já existia na época o processador 8086, com barramento externo de 16 bits, os periféricos para o 8088 eram muito mais baratos, o que determinou a escolha final. Afinal de contas, este era apenas um computador pessoal, que seria utilizado apenas para jogos. Pelo mesmo raciocínio, a IBM procurou uma pequena empresa de Seattle, a Microsoft, para licenciar uma versão de um interpretador BASIC para o seu computador pessoal. O proprietário da empresa, Bill Gates, havia desenvolvido um interpretador BASIC para o primeiro computador pessoal, o Altair. Aproveitando a ocasião, a IBM manifestou interesse em um sistema operacional. Na época, a Microsoft vendia o sistema Unix sob licença da AT&T, mas este sistema seria muito grande para os recursos oferecidos pela máquina ( 64KBytes de memória, sem disco rígido). A recomendação foi adotar o sistema CP/M-86 da Digital Research, a empresa que havia produzido o então popular sistema operacional CP/M para processadores de 8 bits. No entanto, o cronograma para o CP/M86 estava atrasado, e a IBM não queria esperar. Voltando a Gates, pediu-lhe que produzisse um sistema operacional para 16 bits. Gates então comprou o software 86DOS da empresa Seattle Computer Products (que o utilizava para testar as placas de memória que produzia) e contratou o autor do programa, Tim Patterson, para fazer uma adaptação rápida. Desta forma, nasceu MS-DOS, embarcado em IBM-PCs a partir de 1981. Provavelmente, se a IBM ou a Microsoft pudessem imaginar o nível de sucesso que esta combinação iria obter, mais cuidado teria sido dado ao desenvolvimento do sistema. O motivo do sucesso deste sistema foi o fato de ter sido adotada uma arquitetura aberta, onde os componentes estavam disponíveis em qualquer loja de eletrônica e os diagramas esquemáticos e código básico podiam ser encontrados no livro que descrevia o sistema. Desta forma, diversos fabricantes passaram a desenvolver modelos compatíveis com o IBM-PC e MSDOS era o sistema operacional de todos eles. Entre as características do IBM-PC que tiveram reflexo no software desenvolvido para ele estão o modelo de memória e a falta de proteção de hardware. Apesar do processador 8088 ter um espaço de endereçamento de 1Mbyte, apenas os primeiros 640KBytes (dez vezes maior que a memória física) estavam disponíveis como RAM, sendo o restante do espaço de endereçamento alocado a outras memórias, como ROM e memória de vídeo. Esta característica trouxe reflexos posteriores, quando nenhum programa rodando em MS-DOS podia ser maior que 640 Kbytes. 2.2 Nomenclatura de Arquivos MS-DOS Bem, no MS-DOS a forma que os usuários tratam o nomes dos arquivos e diretórios, é bem diferente do que estamos acostumados nos dias atuais com o Windows. Isso dá-se ao fato de que no Windows podemos utilizar os nomes longos, e os mesmos não são suportados no bom e velho MS-DOS. Para podermos trabalhar com nomes do DOS temos que cuidar e respeitar a regra 8.3, ou seja, 8 caracteres para nome do arquivo e/ou diretório e mais 3 caracteres para a extensão (tipo). Segue alguns exemplos: • carta.doc • casa.txt Bem o problema é a conversão de nomes longos (Windows) para o formato DOS. Segue abaixo exemplos da conversão de nomes: • Arquivos de Programas -> arquiv~1 • Meus Documentos -> meusdo~1 • minharedação.doc -> minhar~1.doc Para executar a conversão, basta repetir os 6 primeiros caracteres do nome mais o operador “~” e colocar o número 1, ou seja, trabalhamos com o radical dos nomes com 6 dígitos. 6 Sistemas Operacionais Extensões de Arquivos Extensões são os itens que definem qual o tipo dos nossos arquivos, ou a qual programa eles pertencem. Segue abaixo uma tabela de referência: .BAK - arquivos de backup .BAS - programa fonte em basic .DAT - arquivo de dados .DOC - arquivo documento, arquivo texto .TXT - arquivo texto .$$$ - arquivo temporario, inútil, lixo .BAT - arquivo de comandos em lote ( batch) .EXE - programa executável .XLS – Arquivos do Excel .PAS – Arquivos do Pascal .C – Arquivos do C .BIN – Arquivos Binários .HTML – Arquivos de Páginas da Internet .PHP – Linguagem PHP Prompt de Comandos do MS-DOS O interpretador de comando do MS-DOS é o command.com. No MS-DOS existem dois tipos básicos de comandos: comandos internos e os comandos externos. Comandos Internos: são os comando que estão incorporados no comammand.com, como cls, dir, type, md. Comandos Externos: são comandos que não estão incorporados ao command.com, ou seja, programas adicionais ao ms-dos. 7 Escola Alcides Maya - Primeiro Módulo 3 COMANDOS DO MS-DOS Comando Interno CLS O comando CLS limpa a tela de vídeo e mostra novamente o sinal de pronto de DOS no canto superior esquerdo da tela. FORMATO DO COMANDO CLS: C:\>CLS Comando Interno DIR Mostrar o diretório de arquivos quer dizer, mostrar a lista de arquivos e diretórios que estão no disco. O comando DIR, faz com que o DOS apresente o nome dos arquivos disponíveis no DRIVE atual. FORMATO DO COMANDO DIR: C:\>DIR[unidade do drive: ][caminho][nome-do-arquivo] Exemplos: C:\>dir Mostra a lista de um diretório do disco corrente. C:\>dir a: Mostra a lista do diretório do DRIVE A: C:\>dir texto.doc Mostra o arquivo TEXTO.DOC, caso ele esteja no disco utilizado USANDO CARACTERES CURINGAS: Podemos mostrar apenas parte de um diretório utilizando caracteres globais. Caracteres globais são caracteres que substituam um conjunto, ou apenas outro caracter qualquer, são dois os caracteres globais: a) * (asterisco)-substitui um conjunto qualquer de caracteres. C:\>dir *.txt Mostra todos os arquivos com qualquer nome principal e com extensão igual a TXT. C:\>dir arq.* Mostra todos os arquivos do diretório que tenham o nome principal igual a ARQ com qualquer extensão. b) ? (interrogação)-substitui um único caracter qualquer. C:\>dir ???.txt Mostra todos os arquivos que tenham nome principal com três letras e extensão igual .TXT. C:\>dir arq.?? Mostra todos os arquivos que tenham nome principal igual a ARQ e extensão com quaisquer duas letras. USANDO PARÂMETROS: Podemos utilizar alguns parâmetros para o comando DIR, para auxiliar na pesquisa de arquivos. Parâmetros são especificações que um comando pode receber, normalmente os parâmetros estão após uma barra (/). a) /P-causa uma pausa quando a relação de nomes de arquivos atingir uma tela cheia, fica aguardando que se tecle algo para continuar. C:\>dir a:/p b) /W- Mostra apenas os nomes do arquivo, de forma horizontal, 5 nomes de arquivos em cada linha mostrada. 8 Sistemas Operacionais C:\>dir b:/w c) /A- Exibe arquivos com atributos especificados. atributos: D- diretórios R- arquivos apenas de leitura S- arquivos de sistema H- arquivos ocultos - - prefixo não A- arquivos C:\>dir a:/h d) /O- Mostra os arquivos na ordem alfabética de classificação: N- por nome S- por tamanho D- data e hora E- por extensão G- primeiro diretórios - - prefixo de negação C:\>dir/o:n e) /S- Mostra os arquivos do diretório corrente e dos subdiretórios do diretório corrente. C:\>dir/s f) /B- Mostra apenas o nome dos arquivos do diretório atual. C:\>dir/b g) /L- Mostra letras minúsculas no lugar de maiúsculas. C:\>dir/l Comando Interno MD (MAKE DIR) Cria um novo subdiretório abaixo do diretório atual ou no caminho especificado. FORMATO DO COMANDO MD: MD [unidade:\caminho] nome do diretório novo Exemplo: C:\>md TESTE Cria um subdiretório chamado TESTE um nível abaixo do subdiretório atual. C:\>md \TESTE Cria um subdiretório chamado TESTE um nível abaixo da raiz. C:\>md B: \TELAS\PCX Cria um subdiretório chamado PCX um nível abaixo do subdiretório TELAS na unidade B: Comando Interno RD (REMAKE DIR) Podemos remover um determinado diretório usando o comando RD. Para remover um diretório o mesmo deve estar vazio, ou seja, não pode conter nem arquivos nem subdiretórios. FORMATO DO COMANDO RD: RD [unidade:\caminho] \nome do subdiretório Exemplo: C:\>rd DBASE O comando irá remover o diretório chamado DBASE Comando Interno CD (CHANGE DIR) Altera o diretório atual. FORMATO DO COMANDO CD: A:\>CD:[drive:\caminho][..] 9 Escola Alcides Maya - Primeiro Módulo Exemplos A:\>CD C:\WORD\DOC Transforma o subdiretório \WORD\DOC como padrão da unidade C. A:\>CD.. Passa para um subdiretório de um nível acima. A:\>CD DOC Vai ao subdiretório DOC do atual diretório. A:\>CD\ Passa para a raiz de diretórios. CRIAÇÃO DE ÁRVORE DE DIRETÓRIO Exemplo: A:\>MD DOS A:\ A:\>CD DOS A:\DOS>MD SUBDOS DOS A:\DOS>CD\ SUBDOS A:\>MD UTIL UTIL Comando Externo TREE O comando TREE é um comando que mostra graficamente a árvore de diretórios e subdiretórios de um determinado disco. FORMATO DO COMANDO TREE: TREE [unidade:][caminho][/opções] USANDO PARÂMETROS: /F - Exibe os nomes dos arquivos em cada diretório. /A - Utiliza o código ASCII ao invés de caracteres estendidos Exemplo: C:\>tree O comando irá mostrar todos os diretórios e subdiretórios do disco corrente. FORMATO DO COMANDO DELTREE: DELTREE unidade: caminho [/Y] Sempre que solicitamos ao DELTREE que renova um diretório, ele nos emitirá a seguinte pergunta: Excluir diretório “NOME” e todos seus subdiretórios? [S/N]_ Exemplo: A:\> DELTREE UTIL O comando eliminará o diretório UTIL e todo quanto estiver dentro deste. A:\>DELTREE/Y DOS O comando eliminará o diretório DOS e todo quanto estiver dentro deste, sem solicitar pela confirmação. Comando Externo Help Este comando executa o help do DOS, mostrando todos os comandos do DOS, a sua utilização, exemplos e também observações sobre o comando, traz também as novidades do MS-DOS 6.22. Para se utilizar do help digita help e pressione ENTER, surgirá uma tela com destaques verdes; com as teclas de cursor, se posiciona o cursor da tela em baixo de uma palavra destacadas por sinais de menor e maior em verde, ao se pressionar ENTER o help ira a uma tela com explicações da palavra selecionada. Esta tela tem algumas palavras destacadas também, que com o mesmo procedimento se vai a outras telas. Para voltar a uma tela anterior basta pressionar ALT+V. Existe uma opção de imprimir a tela corrente no menu Arquivo, se obtém um documento com explicações dos comandos desejados. No help no DOS existe uma forma de se obter um help rápido de um comando, digitando-se “/?” após o nome do comando. Há também o comando FASTHELP, que mostra todos os comandos do DOS com uma breve explicação de cada um. 10 Sistemas Operacionais Comando Interno COPY O comando interno COPY é utilizado para copiar um ou mais arquivos de um disquete para outro ou de um disquete para o disco rígido ou vice-versa. O comando COPY permite que todo o conteúdo de um disquete seja copiado para outro de formato diferente, pois a cópia é feita arquivo por arquivo e não trilha a trilha. FORMATO DO COMANDO COPY: C:\>COPY [ORIGEM - ARQUIVO ] [DESTINO-ARQUIVO] Exemplo: C:\> copy A:\*.* B: <ENTER> copia todos os arquivos do drive A para o drive B UTILIZANDO CARACTERES CURINGA: Existem dois caracteres curingas, assim como no comando DIR: * - Copia todos os arquivos que atendam as especificações de nome e extensão do arquivo. Exemplo: A:\> copy *.TXT B: Copia todos os arquivos que tenham qualquer nome principal, e que possuam a extensão .TXT para o drive B: ? - Copia todos os arquivos que atendam a quantidade de caracteres globais “?” colocados no nome para a cópia. Exemplo: A:\>copy ?????.TXT B: Copia todos os arquivos que tenham qualquer nome principal com até 5 caracteres e que tenham extensão igual a .TXT para o drive B: USANDO PARÂMETROS: Alguns parâmetros que podemos usar são: /A: Indica um arquivo de texto ASCII. /B: Indica um arquivo binário. /V: Verifica se os arquivos foram gravados corretamente. OUTROS EXEMPLOS: 1)Copiando o arquivo para outro disco com o mesmo nome. digite COPY TRAB1.TXT C: 2)Copiando o arquivo para outro disco, alterando o nome. digite COPY TRAB1 C:\COPIA1 3)Copiando o arquivo para o mesmo disco com o nome diferente. digite COPY TRAB1.TXT COPIA1.DOC 4)Copiando arquivos para outro disco com o mesmo nome. digite COPY TRAB?.* C: 5)Copiando arquivos para outro disco com o mesmo nome, mas com extensão diferente. digite COPY TRAB?.* C:\*.BAK 6)Copiando todos os arquivos para outro disco com o mesmo nome. digite COPY *.* C: Na versão 6.22, o comando COPY pede confirmação para regravar um arquivo que já existe no diretório ou drive de destino. Para cada arquivo existente, o comando pergunta se você quer confirmar a regravação do arquivo individual com “S”, não autoriza com “N”, ou autoriza a regravação de todos os arquivos com “T”. Comando Externo XCOPY Copia arquivos seletivamente. O XCOPY tem algumas vantagens em relação ao DISKCOPY: arquivos de origem que estão fragmentados serão reunidos no disco de destino e o XCOPY pode copiar arquivos entre discos de diferentes capacidades de dados. Entretanto, o XCOPY não pode formatar discos e o DISKCOPY pode. Em relação ao COPY o XCOPY pode ser mais rápido, pois ele carrega todos os arquivos possíveis na memória e transfere para o destino de uma vez, enquanto o COPY copia um arquivo de cada vez. FORMATO DO COMANDO: C:\>XCOPY [DRIVE:\CAMINHO] [ARQUIVOS] [DRIVE DESTINO] [ARQUIVO][/OPÇÕES] Exemplo: 11 Escola Alcides Maya - Primeiro Módulo A:\>xcopy *.* C: Este comando copiará todos os arquivos do disco do drive A: para o disco do drive C: USANDO OS PARÂMETROS: /A - Copia os arquivos que possuem o atributo de arquivo definido, não altera o atributo. /M - Copia os arquivos que possuem o atributo de arquivo definido, desativa o atributo de arquivo. /D:data - Copia os arquivos modificados na data específica ou posterior. /P - Solicita uma configuração antes de criar cada arquivo de destino. /S - Copia diretórios e subdiretórios, a menos que estejam vazios. /E - Copia qualquer subdiretório, mesmo vazios. Usar com a opção /S /V - Verifica cada arquivo novo. /W - Solicita que seja pressionada uma tecla antes da cópia. Na versão 6.22, o comando XCOPY pede confirmação para regravar um arquivo que já existe no diretório ou drive de destino. Para cada arquivo existente, o comando pergunta se você quer confirmar a regravação do arquivo individual com “S”, não autorizar com “N”, ou autorizar a regravação de todos os arquivos. Comando Externo DISKCOPY O DISCOPY é um programa utilizado para fazer duplicatas de disquetes. Esse comando permite a cópia de um disco entre duas unidades de disquete desde que os formatos dos discos sejam idênticos, ou seja, tanto o drive A: como o drive B: devem ser do mesmo tipo. Como a cópia é feita trilha a trilha, não se pode copiar um disco de 3,5 para um disco 5,25 polegadas, tampouco um disco de 360KB para um de 1,2MB, pois, apesar do tamanho físico ser idêntico, o número de trilhas é diferente. O programa diskcopy formata o disco de destino antes de transferir o conteúdo do disquete, se detectar que ele não está formatado. As máquinas podem ser produzidas com unidades de disquete de 1,2 MB e 1,44 MB, impossibilitando a cópia de discos entre os drives. Contudo, isto não é problema, pois o comando DISKCOPY permite que um disquete seja duplicado utilizando-se um único drive. FORMATO DO COMANDO DISKCOPY: C:\>DISCOPY [unidade1] [unidade2 :] [/parâmetros] USANDO PARÂMETROS: /1 - O parâmetro efetua apenas a cópia de um lado. /V - O parâmetro efetua checagem da cópia efetuada. Na versão 6.22, o programa faz a leitura do disco fonte de uma só vez, evitando assim o troca-troca de discos. Uma outra vantagem do novo diskcopy é a possibilidade de fazer múltiplas cópias de um mesmo original. Após gravar o disco fonte, o programa pergunta se você deseja gravar outra cópia do disco original. Para copy um disquete para o outro em um mesmo drive a unidade 1 e 2 são as mesmas: C:\>DISCOPY A: A: Comando Externo DISKCOMP Compara trilha-por-trilha os conteúdos de dois discos flexíveis, relatando quais os números das trilhas que não são idênticos. Você não pode comparar disquetes de formatos diferentes. Esse comando é muito pouco utilizado, contudo é de muito valia para garantir que um disquete copiado não esteja com problemas. FORMATO DO COMANDO DISKCOMP: A:\>DISKCOMP unidade de origem [unidade de destino] [/opções] Exemplos: Se você não especificar uma segunda unidade. A:\>DISKCOMP A: compara o disco na unidade A com o disco na unidade atual. Se a unidade atual é a A, o DISKCOMP pede que você troque o disco várias vezes durante o processo de comparação. USANDO OS PARÂMETROS: /1 - Instrui o DISKCOMP para que compare apenas o primeiro lado de cada disco, mesmo em discos de dupla densidade. /8 - Instrui o DISKCOMP para comparar apenas os 8 primeiros setores de cada trilha, mesmo se as trilhas tiverem 9 ou 15 setores. Comando Externo FORMAT 12 Sistemas Operacionais Prepara um disco em branco para o recebimento e o armazenamento de dados ou cria um disco em branco novo a partir de um usado. O format organiza o disco em trilhas e setores, que são as divisões do disco. TRILHA: é uma volta completa no disco. SETOR: é um pedaço de cada volta no disco. FORMATO DO COMANDO FORMAT: FORMAT drive: [/parâmetros] O FORMAT exibe uma mensagem indicando a unidade a ser formatada e pede que você pressione ENTER para iniciar o processo. Isso lhe dá a oportunidade de mudar o disco na unidade, se necessário, ou cancelar a operação com Ctrl-C. Quando o processo de formatação está completo, o DOS exibe uma mensagem mostrando o número total de bytes disponíveis no disco, quantos bytes foram marcados como “setores ruins” e, se você indicou a opção /S na linha de comando, quantos bytes foram usados pelos arquivos de sistema. USANDO PARÂMETROS: /1 - Formata um único lado de um disco de dupla-face. /4 - Formata um disco flexível de 5 ¼ polegadas (360K) em unidade de alta densidade (1,2MB). /8 - Formata 8 setores por trilha. /B - Aloca espaço no disco formatado para os arquivos de sistema. /F:tamanho - Específica o tamanho do disco flexível a ser formatado (como 160 KB; 180 KB; 320 KB; 360 KB; 720 KB; 1,2 MB; 1,44MB). /N: setores - Específica o número de setores por trilha. /Q - Realiza uma formatação rápida. /S - Copia arquivos de sistemas para o disco formatado. /T:trilhas - Específica o número de trilhas por lado de disco. /U - Específica formatação incondicional. Todos os dados de um disco previamente formatado são destruídos e você não poderá desformatar o disco posteriormente. /V - Pede-se que você acrescente o nome do volume para o disco após a formatação. Exemplos: C:\ FORMAT B: Insira o novo disco na unidade B: e pressione ENTER quando estiver pronto... Verificando o formato existente do disco. Formatando 1,44M Formatação concluída. Nome de volume (11 caracteres, pressione ENTER para nenhum): 1.457.664 bytes de espaço total em disco 1.457.664 bytes disponíveis no disco. 512 bytes em cada unidade de alocação 2.847 bytes de alocação disponíveis no disco O número de série do volume é 285D-18D0 Formatar outro (S/N)? Quando um disco já formatado é novamente formatado, aparece a mensagem “SALVANDO INFORMAÇÕES DO UNFORMAT”. Isso significa que o disquete poderá ser recuperado pelo programa UNFORMAT se nenhum dado for gravado nele. OBS: O comando unformat recupera arquivos de uma formatação de disco acidental Se um disco foi formatado acidentalmente, você pode recuperar os arquivos executando o comando UNFORMAT, seguido pela letra da unidade do disco formatado. Assim será checado e listado os arquivos que ainda podem ser recuperados. Isto é possível porque em uma formatação somente a área de FAT do disco, isto é, somente com os endereços dos arquivos e não com sua estrutura em si. Sintaxe: C:\> unformat [unidade] Comando Interno REN (RENAME) É utilizado para trocar nome de arquivos, é permitido tanto a palavra REN como RENAME. FORMATO DO COMANDO REN: 13 A:\>REN [unidade:\caminho\] [nome antigo] [nome novo] Exemplo: A:\>ren RELATORI.TXT VENDAS.TXT Altera o nome de RELATORI.TXT para VENDAS.TXT A:\>ren \WORD\*.BAK *.OLD Altera os nomes de todos os arquivos com a extensão .BAK no subdiretório C:\WORD de tal forma que eles passem a ter a extensão .OLD. Comando Interno DEL(ERASE) O comando DEL ou ERASE apaga arquivos de um disquete e coloca como disponível o espaço em disco que estava previamente em uso. Seja cauteloso na exclusão de arquivos. Uma vez excluído um arquivo ele estará excluído para sempre, a menos que você possua um utilitário de recuperação (no caso do DOS o utilitário responsável pela recuperação é o comando externo UNDELETE). Se ocorrem várias operações no disco, o utilitário poderá simplesmente não efetuar a recuperação do arquivo. Os comandos DEL e ERASE funcionam de forma idêntica. Todas as referências nesta seção ao comando DEL também se aplicam da mesma forma para o comando ERASE. FORMATO DO COMANDO DEL: DEL [unidade:\caminho\]arquivo(s) [opções] Exemplo: A:\>del *.BAK O comando irá excluir todos os arquivos que tenham qualquer nome principal e que possua a extensão .BAK A:>del EXPLOSIV.??? O comando irá excluir os arquivos que tenham o nome principal EXPLOSIV e com qualquer extensão. USANDO PARÂMETROS: O comando DEL contém um parâmetro para auxiliar na exclusão de muitos arquivos. /P - O parâmetro solicita a confirmação para a extensão do arquivo. OBS: Caso você solicite o comando DEL *.*, o DOS irá excluir todos os arquivos existentes, antes porém ele solicita confirmação para exclusão. Comando Externo UNDELETE Recupera arquivos apagados acidentalmente. UNDELETE não garante a recuperação de todos os arquivos deletados. Para obter melhores resultados, execute o UNDELETE antes que qualquer informação seja gravada no disco. Gravações subsequentes no disco podem sobrepor a área do disco ocupada pelo arquivo apagado, tornando impossível a recuperação. FORMATO DO COMANDO UNDELETE: UNDELETE [drive\caminho] arquivo(s) [/opções] USANDO PARÂMETROS: /DT - Usa somente o arquivo de controle de exclusão. /DOS - Utiliza o diretório corrente para localizar e recuperar arquivos apagados. /LIST - Lista todos os arquivos apagados que podem ser recuperados. /DS - Utiliza o método Registro de Exclusão para recuperação de dados. /ALL - Recupera todos os arquivos definidos sem solicitar pela confirmação. /LOAD - Carrega o Undelete na memória. /UNLOAD - Descarrega o Undelete da memória. Exemplo: A:>UNDELETE C:\WORD\*.BAK Tenta recuperar todos os arquivos no subdiretório C:\WORD que tenham a extensão .BAK. A:>UNDELETE /LIST O comando irá mostrar a lista de arquivos disponíveis para a recuperação. Comando Externo MOVE Move arquivos do diretório de origem para o diretório de destino, apagando os arquivos do diretório de origem no final da movimentação. É equivalente ao comando COPY e DEL aplicados ao mesmo arquivo. A partir da versão 6.2, o comando pede a confirmação da sobreposição de arquivos no caso de existirem arquivos com o mesmo nome do diretório de origem e de destino. Este comando também pode ser usado para renomear subdiretórios. Nesses casos, indique apenas os nomes antigo e novo que quer para o subdiretório existente. FORMATO DO COMANDO MOVE: A:\>MOVE [DRIVE:[CAMINHO] <ARQUIVO> [DRIVE:[CAMINHO DESTINO] Exemplo: A:\>move *.* C: Este comando irá mover todos os arquivos do disco do drive A: para C: Você pode especificar mais de um arquivo de origem no mesmo comando se especificar os seus nomes completos separados por vírgulas. Se for fornecido além do diretório de destino, um nome de arquivo de origem é renomeado no destino. Exemplo: A:\>move T1.TXT, T2.TXT, T3.TXT C:\TEXTOS Comando Interno VER O comando VER é utilizado para mostrar versão do Sistema Operacional que se está utilizando. FORMATO DO COMANDO VER: C:\>VER Comando Interno VOL VOL é um comando do DOS, que mostra o nome do volume de um determinado disco. Um nome de volume pode ser dado na formatação com o parâmetro /V ou com o utilitário LABEL. Como vocês poderão constatar cada disco possui um nome e o comando VOL ira fazer com que o nome do disco e o n° de série sejam mostrados. FORMATO DO COMANDO VOL: C:\>VOL Comando Externo LABEL LABEL é um comando do DOS que cria, modifica ou exclui nomes de volume de disco. Nome de volume, é o nome que damos como rótulo para disquetes quando eles vem novo e ainda não esta formatado. FORMATO DO COMANDO LABEL[unidade:][nome] Exemplo: C:\> label a: O comando irá pedir um nome de volume com até 11 caracteres, para o disco do DRIVE A: C:\> label c:\microsoft O comando irá trocar o nome de volume da unidade de drive C: para MICROSOFT. Comando Interno PROMPT O PROMPT é um comando que serve para configurar o sinal de pronto do DOS. TABELA DE PARÂMETROS: O comando PROMPT contém uma tabela de parâmetros que utilizados juntamente com o caractere $ (dólar) produzem um efeito diferente: $Q = (sinal de igual) $G > (sinal de maior que) $$ $ (sinal de dólar) $L < (sinal de menor que) $THora atual $B | barra vertical $DData atual$H Backspace apaga o caractere anterior $P Unidade de drive e diretório atuais $E Código de escape (ASCII código 27) $VNúmero da versão do MS-DOS $_ Retorno de carro e salto de linha $NUnidade de drive atual Comando Interno DATE É utilizado para mostrar/acertar a data do relógio do microcomputador. O formato padrão de data é o norte-americano, mês, dia e ano (MM/DD/AA); mas este formato pode ser alterado para o formato nacional. FORMATO DO COMANDO DATE: C:\>DATE Exemplo: Escola Alcides Maya - Primeiro Módulo C:\>date <ENTER> Data atual é Seg 18/07/1988 Entre com a nova data (dd-mm-aa): 42/07/88 <ENTER> Data inválida Entre com a nova data: (dd-mm-aa): 20/07/88 <ENTER> Comando Interno TIME É utilizado para mostrar/acertar a hora do relógio interno do microcomputador. Você pode utilizar a hora no formato norte americano (até 12 horas am ou pm), ou no formato nacional (até 23:59 horas). FORMATO DO COMANDO TIME: C:\>TIME Exemplo: C:\>time <ENTER> Hora atual 11:02:16,39 Entre com a nova hora: 11,30 <ENTER> Hora inválida Entre com a nova hora: 11:30 Comando Interno TYPE Exibe o conteúdo de um arquivo. Se o arquivo exibido pelo TYPE for muito grande, ele pode rolar a tela. Por esse motivo, a saída do TYPE é freqüentemente redirecionada para uma impressora ou conectada ao comando MORE. FORMATO DO COMANDO TYPE: f:\>TYPE [unidade:\caminho] arquivo Exemplo: A:\>type RELATORI.TXT Exibe na tela o conteúdo de um arquivo chamado RELATORI.TXT. A:\>type RELATORI.TXT | MORE Exibe o conteúdo do arquivo e pausa a exibição cada vez que a tela estiver cheia de informação. A:\>type RELATORI.TXT > PRN Envia o conteúdo do RELATORI.TXT para o dispositivo de impressão padrão. OBS: O comando MORE força o DOS a exibir uma tela por vez ao invés de rolamento contínuo. Exemplo:A:\>more < LEIAME.TXTExibe o conteúdo do LEIAME.TXT na tela, pausando cada vez que a tela estiver cheia. Comando Externo MEM Mem é um comando que exibe a quantidade de memória utilizada e disponível no sistema. FORMATO DO COMANDO MEM: MEM [/opções] USANDO PARÂMETROS: /C - Use esta opção para listar os programas atualmente carregados, incluindo a quantidade de cada memória que está sendo utilizada. /CLASSIFY - Faz a mesma coisa que a opção /C. /DEBUG - Lista os programas e os dispositivos do sistema, incluído seus endereços, na memória RAM. /D também específica esse comando. /MODULE - Mostra como um programa está utilizando a memória. SYS: comando que copia os arquivos escondidos (IO.SYS e MSDOS.SYS) e o COMMAND.COM para um disco, fazendo com que este se torne um disco de “boot”, pois estes são os arquivos necessários para se dar “partida” no MS-DOS. Sintaxe: SYS unidade: Ex. C:\>SYS a: C:\>SYS b: 16 ATTRIB: comando utilizado para definir ou exibir atributos de um arquivo. Sintaxe: ATTRIB +R -R +A -A +H -H +S -S arquivo /S Onde, +R -R -ativa/desativa o atributo de somente de leitura +A -A -ativa/desativa o atributo de arquivo +H -H -ativa/desativa o atributo de arquivo oculto +S -S -ativa/desativa atributo de sistema dos arquivos /S -ativa/desativa opção especificada em subdiretório Ex. C:\>ATTRIB +R *.txt C:\>ATTRIB +H relat.doc C:\>ATTRIB +A a:*.* C:\>ATTRIB -A a:*.bak C:\>XCOPY a: b:/a Sistemas Operacionais 3.1 ARQUIVOS EM LOTE São arquivos que têm como característica básica a execução sequencial de seu conteúdo, sendo que o seu conteúdo é composto por comandos do ms-dos, com o intuito de facilitar automatizar uma ou mais rotinas repetitivas, como por exemplo o backup de uma empresa. Exemplos: @ECHO OFF CLS ECHO. ECHO. ECHO *** programa exemplo *** ECHO *** de comandos *** ECHO *** do MSDOS *** ECHO. ECHO. ECHO o diretório ECHO tmp contém ECHO os seguintes ECHO arquivos DIR c:\>tmp ECHO *** fim de processamento *** @ECHO OFF CLS ECHO. ECHO. ECHO *** programa de cópia *** ECHO. ECHO. 17 Escola Alcides Maya - Primeiro Módulo ECHO insira um disco no drive A ECHO. PAUSE COPY *.txt a: ECHO. ECHO *** fim de processamento *** @ECHO OFF REM programa : data.bat REM autor : Alcides Maya REM descrição : programa exemplo REM data : 2006-03-17 time date dir /p 18 Sistemas Operacionais 4 INTRODUÇÃO AO SISTEMA OPERACIONAL LINUX História O nome Linux surgiu da mistura de Linus + Unix. Linus é o nome do criador do Linux, Linus Torvalds. E Unix, é o nome de um sistema operacional de grande porte, no qual contaremos sua história agora, para que você entenda melhor a do Linux. A origem do Unix tem ligação com o sistema operacional Multics, projetado na década de 1960. Esse projeto era realizado pelo Massachusets Institute of Technology (MIT), pela General Eletric (GE) e pelos laboratórios Bell (Bell Labs) e American Telephone na Telegraph (AT&T). A intenção era de que o Multics tivesse características de tempo compartilhado (vários usuários compartilhando os recursos de um único computador), sendo assim, o sistema mais arrojado da época. Em 1969, já exisita uma versão do Multics rodando num computador GE645.] Ken Thompsom era um pesquisador do Multics e trabalhava na Bell Labs. No entanto, a empresa se retirou do projeto tempos depois, mas ele continuou seus estudos no sistema. Desde então, sua idéia não era continuar no Multics original e sim criar algo menor, mas que conservasse as idéias básicas do sistema. A partir daí, começa a saga do sistema Unix. Brian Kernighan, também pesquisador da Bell Labs, foi quem deu esse nome. Em 1973, outro pesquisador da Bell Labs, Dennis Ritchie, rescreveu todo o sistema Unix numa linguagem de alto nível, chamada C, desenvolvida por ele mesmo. Por causa disso, o sistema passou a ter grande aceitação por usuários externos à Bell Labs. Entre 1977 e 1981, a AT&T, alterou o Unix, fazendo algumas mudanças particulares e lançou o System III. Em 1983, após mais uma série de modificações, foi lançado o conhecido Unix System IV, que passou a ser vendido. Até hoje esse sistema é usado no mercado, tornando-se o padrão internacional do Unix. Esse sistema é comercializado por empresas como IBM, HP, Sun, etc. O Unix, é um sistema operacional muito caro e é usado em computadores poderosos (como mainframes) por diversas multinacionais. Qual a relação entre o Unix e o Linux, ou melhor, entre o Unix e Linus Torvalds? Para responder essa pergunta, é necessário falar de outro sistema operacional, o Minix. O Minix é uma versão do Unix, porém, gratuita e com o código fonte disponível. Isso significa que qualquer programador experiente pode fazer alterações nele. Ele foi criado originalmente para uso educacional, para quem quisesse estudar o Unix “em casa”. No entanto, vale citar que ele foi escrito do “zero” e apesar de ser uma versão do Unix, não contém nenhum código da AT&T e por isso pode ser distribuído gratuitamente. A partir daí, “entra em cena” Linus Torvalds. Ele era um estudante de Ciências da Computação da Universidade de Helsinki, na Filândia e em 1991, por hobby, Linus decidiu desenvolver um sistema mais poderoso que o Minix. Para divulgar sua idéia, ele enviou uma mensagem a um grupo pela Usenet (uma espécie de antecessor da Internet). A mensagem pode ser vista no final deste artigo. No mesmo ano, ele disponibilizou a versão do kernel (núcleo dos sistemas operacionais) 0.02 e continuou trabalhando até que em 1994 disponibilizou a versão 1.0. Até o momento em que este artigo estava sendo escrito, a versão atual era a 2.6. O Linux é um sistema operacional livre e é uma re-implementação das especificações POSIX (padronização da IEEE, Instituto de Engenharia Elétrica e Eletrônica) para sistemas com extensões System V e BSD. Isso signfica que o Linux é bem parecido com Unix, mas não vem do mesmo lugar e foi escrito de outra forma. Mas porque o Linux é gratuito? 19 Escola Alcides Maya - Primeiro Módulo Linus Torvalds, quando desenvolveu o Linux, não tinha a inteção de ganhar dinheiro e sim fazer um sistema para seu uso pessoal, que atendesse suas necessidades. O estilo de desenvolvimento que foi adotado foi o de ajuda coletiva. Ou seja, ele coordena os esforços coletivos de um grupo para a melhoria do sistema que criou. Milhares de pessoas contribuem gratuitamente com o desenvolvimento do Linux, simplesmente pelo prazer de fazer um sistema operacional melhor. Licença GPL O Linux está sob a licença GPL, permite que qualquer um possa usar os programas que estão sob ela, com o compromisso de não tornar os programas fechados e comercializados. Ou seja, você pode alterar qualquer parte do Linux, modificá-lo e até comercialiazá-lo, mas você não pode fechá-lo (não permitir que outros usuários o modifiquem) e vendê-lo. GNU Mas a história do Linux não termina por aqui. É necessário também saber o que é GNU. GNU é um projeto que começou em 1984 com o objetivo de desenvolver um sistema operacional compatível com os de padrão Unix. O Linux em si, é só um kernel. Linus Torvalds, na mesma época que escrevia o código-fonte do kernel, começou a usar programas da GNU para fazer seu sistema. Gostando da idéia, resolveu deixar seu kernel dentro da mesma licença. Mas, o kernel por si só, não é usável. O kernel é a parte mais importante, pois é o núcleo e serve de comunicador entre o usuário e o computador. Por isso, com o uso de variantes dos sistemas GNU junto com o kernel, o Linux se tornou um sistema operacional. Mas você pode ter ficado confuso agora. O que é o Linux então? O que é GNU? Simplesmente, várias pessoas uma versões modificadas dos sistemas GNU, pensando que é o Linux em si. Os programadores que trabalham com ele, sabem que o Linux, é basicamente o kernel, conforme já foi dito, mas todos, chamam esse conjunto de Linux (há quem defenda o uso de GNU/Linux). Finalizando, o projeto GNU é um dos responsáveis pelo sucesso do Linux, pois graças à “mistura” de seus programas com o kernel desenvolvido por Linus Torvalds, o Linux vem mostrando porque é um sistema operacional digno de habilidades insuperáveis por qualquer outro sistema. è Características · Disponibilidade de código fonte; · Distribuição Livre nos termos da GNU; · Multiusuário; · Multitarefa; · Gerenciamento próprio de memória; · Memória Virtual; · Biblioteca compartilhada; · Carregamento por demanda; · Suporte a redes TCP/IP; · Gerenciadores de janelas. Distribuições Conectiva é a distribuição brasileira de maior destaque e com certeza a distribuição brasileira mais usada. Não é difícil encontrar o pacote Conectiva Desktop ou Servidor em uma loja de software. Até mesmo em outros países da américa latina essa distribuição tem seu destaque. Existem escolas que são credenciadas a darem cursos e certificados reconhecidos pela Conectiva SA, o que ajuda muito na hora de procurar um emprego. Toda sua documentação está em Português. Dentre suas principais ferramentas de configuração podemos citar: Ferramenta setup Sndconfig linuxconf Função configuração de vídeo, som, serviços de inicialização, configuração do timer data, impressoras. detecção de placas de som. gerenciamento do sistema. 20 Sistemas Operacionais Red Hat é a distribuição mais famosa de todas, o que fez com que várias distribuições pelo mundo se baseassem nela, inclusive a principal distribuição brasileira, a Conectiva, que em seu início era apenas uma recompilação do Red Hat. A Red Hat criou o o sistema de empacotamento rpm, que é mais ou menos como o setup do Windows e tem a denominação Red Hat Package Manager. Sendo assim, se você observar o CD da sua distribuição e ele for composto por ícones denominados RPMs, significa que você está usando uma distribuição baseada no Red Hat. Essa distribuição também foi responsável por criar ferramentas que o auxiliam na detecção de placas de som, como o sndconfig, configuração de placas de vídeo, como Xconfigurator e configuração geral, com o Setup incluindo configuração de vídeo, som, mouse, teclado, timer, impressoras, tudo em uma única ferramenta. Também possui um ótimo gerenciador do sistema chamado linuxconf, seria mais ou menos como o painel de controle do Windows, você cria usuários, administra sua estação, seu servidor web, e muito mais. Dentre suas principais ferramentas de configuração podemos citar Ferramenta setup Sndconfig linuxconf Função configuração de vídeo, som, serviços de inicialização, configuração do timer data, impressoras. para detecção de placas de som. gerenciamento do sistema. Mandrake é a distribuição preferida e a mais indicada para quem está iniciando em Linux. A empresa Francesa MandrakeSoft aposta num sistema com muitas ferramentas que vão auxiliar quem está iniciando em Linux. Esta distribuição é baseada no Red Hat e tem um grande número de adeptos. Se diferencia das outras distribuições por ter suas próprias ferramentas de configuração, como Harddrake, para configuração de dispositivos, DrakX, para configuração de vídeo e DrakFont, para buscar fontes do Windows. Dentre suas principais ferramentas de configuração podemos citar: Ferramenta HardDrake DrakX Função Configuração de dispositivos como som, vídeo, scanners, impressoras. configuração de vídeo. Slackware é uma distribuição muito usada por quem já adquiriu uma certa experiência com o Linux. Os profissionais adoram esse Linux, por ele ser praticamente todo configurado em modo texto, o que faz com o que as pessoas conheçam a fundo o seu sistema. Se destaca também por ser um ou se não o mais estável dos Linux atuais. Dentre suas principais ferramentas de configuração podemos citar: Ferramenta xf86config Função configuração de vídeo Debian é uma das únicas distribuições que não é mantida por uma empresa. O Debian é todo desenvolvido por voluntários e estudantes de uma universidade. Foi inovador criando uma ferramenta chamada apt-get, que atualiza o sistema resolvendo todas as dependências de pacotes. Esta ferramenta inclusive está presente na distribuição brasileira Conectiva. Dentre suas principais ferramentas de configuração podemos citar: Ferramenta modconf xf86config dselect Função para instalar módulos no kernel. para configurar o vídeo. para gerenciamento dos pacotes instalados no sistema. 21 Escola Alcides Maya - Primeiro Módulo Estrutura de Diretórios Diretório Descrição /bin Arquivos binários de comandos essenciais do sistema. /boot Arquivos de boot (inicialização; boot-loader; Grub); kernel do Linux. /dev Dispositivos (devices) de entrada/saída: floppy, hardisk, cdrom, modem . /etc Arquivos de configuração (scripts) e inicialização. /home Diretório local (home) de usuários. /lib Bibliotecas e módulos(drives): compartilhadas com freqüência. /mnt Diretório de montagem de dispositivos, sistemas de arquivos e partição. /opt Para instalação de programas não oficiais da distribuição. /proc Diretório virtual (RAM) onde rodam os processos ativos. /root Diretório local do superusuário (root). /sbin Arquivos de sistema essenciais (binários do superusuário). /tmp Arquivos temporários gerados por alguns utilitários. /usr Arquivos de usuários nativos da distribuição. /usr/local Para instalação de programas não oficiais da distribuição. /usr/src Arquivos fontes do sistema necessários para compilar o kernel. /var Arquivos de log e outros arquivos variáveis. Usuário Administrador Como não poderia deixar de ser, o Linux “vê” o usuário root como algo especial, já que ele (na verdade, qualquer usuário que tenha UID igual a 0) pode alterar a configuração do sistema, configurar interfaces de rede, manipular usuários e grupos, alterar a prioridades de processos, entre outros. Por ser tão poderoso, o usuário root é perigoso. Por isso, ele só deve ser usado em situações que não podem ser trabalhadas por usuários que não possuem privilégios de super usuário. Imagine, por exemplo, que você está trabalhando com o usuário root. Ao atender uma solicitação de emergência, você saiu da frente do computador sem bloqueá-lo. Alguém mal-intencionado percebe isso e vai até seu computador, apaga diretórios importantes ao sistema e “sai de mansinho”. Se você estivesse utilizando um usuário comum, isto é, um usuário sem permissões para mexer nesses diretórios, aquele sujeito não teria conseguido apagá-los. Ainda há a possibilidade de você cometer algum erro e pôr tudo a perder... O usuário root é tão importante que até sua senha deve ser bem elaborada. É recomendável que ela tenha ao menos 8 caracteres e que misture letras e números. Além disso, é recomendável mudar essa senha a determinados intervalos de tempo (como a cada 3 meses) ou quando alguém que acessava a conta root não utilizará mais o computador (quando a pessoa sai da empresa, por exemplo). 4.1 NÍVEIS DE INICIALIZAÇÃO Carregando Informações Para a Inicialização Logo após ligar a máquina, é feita uma série de verificações feita pela BIOS, principalmente uma verificação geral do hardware da máquina. Após isto, é carregado um pequeno programa que está localizado no primeiro setor do disco rígido (ou primeiro setor do disquete, se for o caso) chamado de Registro Mestre de Inicialização ou MBR. Ele pode ter uma destas duas funções: • O MBR localiza a partição ativa e carrega o primeiro setor desta partição, que contém um pequeno programa com informações sobre o sistema operacional que está nesta partição. Ele simplesmente irá carregar os componentes básicos do sistema, ou irá carregar um gerenciador de inicialização que seja mais poderoso e poderá finalizar o trabalho. 22 Sistemas Operacionais • O MBR carrega informações diretamente de uma das partições e pode utilizá-las para carregar sistemas operacionais de qualquer partição. A segunda opção é mais interessante e abrangente, e portanto a mais utilizada. Assim, a BIOS utiliza o MBR para carregar um gerenciador de inicialização, podendo inicializar o Linux ou outros sistemas operacionais de qualquer partição ou dispositivo. Gerenciadores de Inicialização do Linux Logo após a primeira parte da inicialização, um gerenciador de inicialização é carregado. Sua principal função é gerenciar as várias partições do disco rígido, permitindo que o usuário possa escolher entre as opções disponíveis. O gerenciador de inicialização é geralmente utilizado quando existe mais de um sistema operacional na máquina. As próximas seções irão discutir os dois principais gerenciadores de inicialização do Linux: o LILO e o Grub, descrevendo suas principais características e opções. LILO O LILO é um gerenciador de inicialização utilizado por muitas distribuições é um dos gerenciadores mais versáteis. Algumas das características do LILO são: • É possível inicializar o LILO de vários dispositivos diferentes (incluindo disquete); • Pode ser instalado no MBR ou no setor de inicialização de uma partição; • Ele não possui arquivos ocultos nem uma partição especial. Além disso, seus arquivos de configuração podem ser instalados em qualquer partição (mesmo as partições que não são Linux). • Ele pode inicializar várias configurações de kernel e até mesmo vários kernels diferentes. O LILO permite que você escolha entre as várias partições fornecendo uma linha de comando: LILO boot: Basta colocar o nome do sistema operacional que você deseja configurar. Os nomes das partições foram preenchidos durante a instalação; se você não souber, basta teclar TAB para verificar as partições existentes. Após selecionar a partição basta pressionar ENTER. Poderá ser iniciado um sistema operacional diferente, uma configuração diferente ou poderão ser passados os parâmetros para a inicialização do kernel Linux, dependendo de sua escolha. Grub O Grub é um gerenciador de inicialização amigável, que fornece um menu gráfico para a escolha de partições, e é altamente configurável. Entre suas características pode-se citar: • Ele permite carregar uma variedade muito grande de sistemas operacionais livres, bem como alguns sistemas proprietários que não são suportados e que precisam de um gerenciador de inicialização específico. • O Grub é muito flexível. Ele gerencia vários tipos de sistemas de arquivo e de kernels, e assim é possível carregar um sistema operacional do modo que se deseja, sem gravar a posição física do kernel no disco. • Sua interface gráfica é amigável e configurável, sendo possível modificar a imagem de fundo, a cor das letras, a ordem das opções no menu, entre outras configurações. Ele pode ser configurado também para apresentar um ambiente em modo texto. Se o Grub foi configurado durante a instalação como o gerenciador de inicialização padrão, após a verificação de hardware da BIOS aparecerá uma tela gráfica com uma lista de sistemas operacionais, bastando escolher qual deseja. Lembre-se de que nem todas as distribuições Linux trabalham com o Grub. O Processo init O init é o primeiro processo iniciado no Linux, logo após a carga do kernel do sistema. Quando é disparado, o init continua a carga do sistema, geralmente executando vários scripts que irão verificar e montar sistemas de arquivos, configurar teclado e iniciar servidores, entre outras tarefas. O init utilizado no Linux permite que existam diversos níveis de execução no sistema. Um nível de execução é uma configuração de software do sistema que define quais processos devem ser inicializados e quais não devem, e também de que modo são inicializados. O administrador do sistema é quem define qual será o nível de execução em que o sistema será executado. Níveis de Execução Ação 0 desligar o sistema 1 modo monousuário, também chamado de modo single 23 Escola Alcides Maya - Primeiro Módulo 2 3 4 5 6 modo multiusuário, texto modo multiusuário, texto, com serviços não utilizado modo gráfico (X11) reinicializar o sistema Prompt de Comando [root@localhost /root]# Você sabe o que signfica isso aí em cima? O Linux usa uma estrutura diferente de organização em seu sistema de arquivos*. Por isso, em vez da sua pasta ser c:\arquivos\pasta\arquivo.txt, simplesmente no Linux, pode ser /home/pasta/ arquivo.txt. Para você entender melhor, vamos analisar o prompt do Linux: [root@localhost /root]# usuário - diretório / local (PC ou rede) - modo usuário Usuário: No Linux, cada pessoa precisa ter uma conta de usuário. Uma conta de usuário indica um nome e senha que devem ser utilizados para se conectar no sistema. Se o nome escolhido por você for, por exemplo, Fulano, em vez de root aparecerá fulano no lugar. Usuário “root” (ou super-usuário): é quem tem acesso irestrito ao sistema. Quando você se conecta como usuário root, você poderá fazer qualquer operação no Linux, como alterações de configuração do sistema, apagar ou modificar arquivos importantes, etc. Por isso, se conectar como root é muito arriscado, já que você pode causar algum dano sem querer. Tendo isso em mente, nunca se conecte como root a não ser que seja mesmo necessário. Para usar o Linux no dia-a-dia, conecte-se com uma conta de usuário comum, assim não haverá risco de danos. Também não se esqueça de guardar muito bem a senha do root, pois se alguém descobrir, poderá destruir o sistema. localhost /root : é o local (diretório) onde você está no momento (/root é padrão e equivale a C:\ no DOS). Modo usuário: indica quem está usando a máquina, se um usuário comum ou o super-usuário. Veja: # - modo super-usuário $ - modo usuário Pontos de Montagem O GNU/Linux acessa as partições existente em seus discos rígidos e disquetes através de diretórios. Os diretórios que são usados para acessar (montar) partições são chamados de Pontos de Montagem.. No DOS cada letra de unidade (C:, D:, E:) identifica uma partição de disco, no GNU/Linux os pontos de montagem fazem parte da grande estrutura do sistema de arquivos raiz. Identificação de discos e partições em sistemas Linux No GNU/Linux, os dispositivos existentes em seu computador (como discos rígidos, disquetes, tela, portas de impressora, modem, etc) são identificados por um arquivo referente a este dispositivo no diretório /dev. A identificação de discos rígidos no GNU/Linux é feita da seguinte forma: /dev/hda1 | | || | | ||_Número que identifica o número da partição no disco rígido. | || | | |_Letra que identifica o disco rígido (a=primeiro, b=segundo, etc...). | | | |_Sigla que identifica o tipo do disco rígido (hd=ide, sd=SCSI, xt=XT). | |_Diretório onde são armazenados os dispositivos existentes no sistema. Abaixo algumas identificações de discos e partições em sistemas Linux: • /dev/fd0 - Primeira unidade de disquetes. • /dev/fd1 - Segunda unidade de disquetes. 24 Sistemas Operacionais • /dev/hda - Primeiro disco rígido na primeira controladora IDE do micro (primary master). • /dev/hda1 - Primeira partição do primeiro disco rígido IDE. • /dev/hdb - Segundo disco rígido na primeira controladora IDE do micro (primary slave). • /dev/hdb1 - Primeira partição do segundo disco rígido IDE. • /dev/sda - Primeiro disco rígido na primeira controladora SCSI. • /dev/sda1 - Primeira partição do primeiro disco rígido SCSI. • /dev/sdb - Segundo disco rígido na primeira controladora SCSI. • /dev/sdb1 - Primeira partição do segundo disco rígido SCSI. • /dev/sr0 - Primeiro CD-ROM SCSI. • /dev/sr1 - Segundo CD-ROM SCSI. • /dev/xda - Primeiro disco rígido XT. • /dev/xdb - Segundo disco rígido XT. As letras de identificação de discos rígidos podem ir além de hdb, em meu micro, por exemplo, a unidade de CD-ROM está localizada em /dev/hdg (Primeiro disco - quarta controladora IDE). É importante entender como os discos e partições são identificados no sistema, pois será necessário usar os parâmetros corretos para montá-los. Relação de comandos MS-DOS ---LINUX MSDOS Cd Cd .. Md Rm Del Tree Dir Type Copy Xcopy Rename Move | more Date Time Cls Format Edit LINUX Cd cd .. Mkdir Rmdir Rm Tree Ls Cat Cp Cp –r Mv Mv | more Date Date Clear Mkfs Mcedit Alguns comando gerais: • • • • • • sair); • • • (qualquer comando) --help: mostra o HELP (arquivo de ajuda) do comando que você digitou; ls: lista os arquivos e diretórios da pasta (DIR no DOS); clear: limpa a tela (CLS no DOS); cd ___ : entra em um diretório (igual ao DOS); cd: vai direto para o diretório raiz do usuário conectado; \: abre uma linha de comando “livre” , onde você pode digitar um comando extenso (digite q e clique em enter para pwd: mostra o diretório inteiro que você está; cat: igual ao TYPE no DOS; df: Mostra as partições usadas ou livres do HD; 25 Escola Alcides Maya - Primeiro Módulo • |more: lista o arquivo com pausa de linha em linha (exemplo: CAT leiame |more) • |lpr: imprime o arquivo listado; • free: mostra a memória do computador (MEM no DOS); • shutdown: desliga o computador: shutdown -r now : reinicia o computador; shutdown -h now : desliga o computador (só desligue quando aparecer escrito “system halted” ou algo equivalente); OBS.: O NOW pode ser mudado. Por exemplo: shutdown -r +10 e o sistema irá reiniciar daqui a 10 minutos). • Reboot: reinicia o sistema instantaneamente (pouco recomendável, preferível shutdown -r now). Use somente em emergências; • startx: inicia o X-Windows (interface gráfica) do Linux; • kde: Inicia a Interface gráfica K Desktop Enviroment; • mkdir: cria um diretório (MD no DOS); • rmdir: destrói um diretório VAZIO (RD no DOS); • rm: apaga um arquivo (DEL no DOS); • rm –r: apaga um diretório; • who: mostra quem está usando a máquina; • wc: conta a quantidade de: •wc -c arquivo : quantidade de bytes • wc -w arquivo : quantidade de palavras • wc -l arquivo : quantidade de linhas; • date: mostra data e hora; • telnet: inicia a TELNET; • m: abre o MINICOM e permite configurar o modem; type: explica um determinado arquivo do sistema; file: descreve um determinado arquivo; find / - name ____ : procura arquivo “____”; useradd nome_do_novo_usuário: cria uma nova conta usuário; passwd nome_do_usuário: cria ou modifica a senha do usuário; userdel -r nome_do_usuário: apaga um usuário; su: passa para o superusuário (perceba que no prompt irá mudar o $ pelo #); sndconfig: permite configurar a placa de som; TAR: arquivo para criar Backups: • TAR –c: cria • TAR –x: restaura • TAR –v: lista cada arquivo • TAR –t: lista os arquivos de backups; • write: escreve mensagens para outro usuário em rede; • mv: move arquivos; • linuxconf: configuração do Linux; • alias: possibilita a criação de comandos simples; • &: coloca o comando desejado em background, ou seja, trabalha enquanto você faz outra coisa no computador; • ps: relata os processos em execução; • kill: encerra um ou mais processos em andamento; • history: mostra os comandos que o usuário já digitou; • lpr: imprime um arquivo (exemplo: lpr arquivo); • lpq: mostra o status da fila de impressão; • lprm: remove trabalhos da fila de impressão; • mtools: permite o uso de ferramentas compatíveis com DOS. Após digitar o comando, você verá que todo comando do DOS terá um M na frente. Isso é normal. • • • • • • • • • 26 Sistemas Operacionais 5 COMANDOS LINUX (UTILIZANDO) 1. ls (lista o conteúdo de um diretório) Exemplo: $ ls 2. ls -a (lista os diretórios, arquivos oculto e executáveis) Exemplo: $ ls -a 3. ls -l (Lista o conteúdo de um diretório detalhadamente) Exemplo: $ ls -l 4. pwd (mostra o diretório corrente) Exemplo: $ pwd 5. cd (muda de diretório) Exemplo: $ cd /etc 6. cd - (volta para o diretório anterior) Exemplo: $ cd 7. cd .. (volta um diretório acima) Exemplo: $ cd .. 8. cd ~ (volta para seu diretório /home) Exemplo: $ cd ~ 9. mkdir [pasta] (cria uma pasta com o nome desejado) Exemplo: $ mkdir programas 10. mkdir [pasta1] [pasta2] (cria pasta1 e pasta dois ao mesmo tempo) Exemplo: $ mkdir teste1 teste2 11. mkdir -p [pasta]/[sub-pasta] (cria um diretório e um sub-diretório) Exemplo: $ mkdir -p teste3/teste3_1 27 Escola Alcides Maya - Primeiro Módulo 12. rm -r [pasta/arquivo] (deleta uma pasta ou arquivo) Exemplo: $ rm -r teste3 13. mv [arquivo1] [arquivo2] (renomeia uma pasta) Exemplo: $ mv teste teste2 14. mv [arquivo] [caminho] (move o arquivo para um determinado caminho) Exemplo: $ mv imagem.jpg ~/t4k_slack/Wallpapers 15. cp [arquivo] [caminho] (copia um arquivo para um determinado caminho) Exemplo: $ cp imagem.jpg ~/t4k_slack/Wallpapers 16. ln -s [caminho] [link] (cria um link) Exemplo: $ ln -s /usr/bin/limewire limewire 17. type [executável] (busca o caminho de um executável) Exemplo: $ type limewire 18. cat > [arquivo] (cria novo arquivo) Exemplo: $ cat > teste.txt 19. cat [arquivo1] >> [arquivo2] (acrescenta arq.2 em arq.1) Exemplo: $ cat teste1 >> teste2 20. touch [arquivo] (cria um arquivo) 21. diff [arquivo1] [arquivo2] (compara os dois arquivos) Exemplo: $ diff teste1 teste2 22. locate [arquivo] (localiza o arquivo desejado] Exemplo: $ locate albino.jpg 23. head [-linhas] [arquivo] (mostra as primeiras linhas de um arquivo) Exemplo: $ head -10 texto.txt 24. tail [-linhas] [arquivo] (faz exatamente o contrário do comando anterior) Exemplo: $ tail -20 texto.txt 25. less [arquivo] (mostra o conteúdo de um diretório) 28 Sistemas Operacionais Exemplo: $ less texto.txt 26. more [arquivo] (mostra o conteúdo de um arquivo) Exemplo: $ more texto.txt 27. nl [arquivo] (mostra quantas linhas tem no arquivo) Exemplo: $ nl texto.txt 28. wc [arquivo] (lista número de linhas, palavras e bytes de um arquivo) Exemplo: $ wc texto.txt 29. [comando1] | [comando2] (conecta dois processos) Exemplo: $ vi /etc/X11/xorg.conf | more 30. sleep [tempo] && [comando] (executa um comando em um determinado tempo) Exemplo: $ sleep 2 && pwd 31. echo [mensagem] (exibe uma mensagem em seu shell) Exemplo: $ echo Olá Mundo 32. alias [comando/atual] [comando_novo] (muda o nome de um comando) Exemplo: $ alias dir=ls -l 33. history (lista os últimos 500 comandos que você digitou) Exemplo: $ history 34. su (muda para o super usuário root, precisa da senha) Exemplo: $ su su [usuário] (muda para outro usuário, também necessita da senha) 29 Escola Alcides Maya - Primeiro Módulo Exemplo: $ su fulano 35. shutdown (reinicia o sistema) Exemplo: $ shutdown 36. reboot (reinicia a máquina com emergência) Exemplo: $ reboot 37. passwd (troca sua senha) Exemplo: $ passwd 38. uname (mostra o sistema operacional) Exemplo: $ uname 39. uname -a (mostra o sistema operacional, nome da máquina, versão do kernel e etc) Exemplo: $ uname -a 40. dmesg (mostra informações do sistema) Exemplo: $ dmesg 41. top -d [segundos] (informações detalhadas dos processos) Exemplo: $ top -d 3 42. ps (mostra os processos corrente “PID”) Exemplo: $ ps 43. killall [programa] (força o término de um programa) Exemplo: $ killall xmms 44. xkill (transforma o ponteiro do mouse em um assassino de programa) 30 Sistemas Operacionais Exemplo: $ xkill 45. mkfs.ext2 (formata um disquete em formato Linux) Exemplo: $ mkfs.ext2 /dev/fd0 46. superformat (formata um disquete em formato DOS) Exemplo: $ superformat /dev/fd0 47. vmstat [-tempo] (mostra a memória swap em uso) Exemplo: $ vmstat -2 48. arch (mostra a arquitetura do seu PC) Exemplo: $ arch 49. lsmod (lista os módulos da sua máquina) Exemplo: $ lsmod 50. insmod [módulo] (levanta um módulo na unha, requer root) Exemplo: # insmod spca5x 51. adduser (adiciona um usuário no sistema, requer root) Exemplo: # adduser 52. userdel [usuário] (deleta um usuário, requer root) Exemplo: # userdel fulano userdel -r [usuário] (deleta o usuário e sua pasta que se encontra no diretório /home, requer root) Exemplo: # userdel -r fulano 53. chfn [usuário] (muda informações de um usuário, requer root) 31 Escola Alcides Maya - Primeiro Módulo Exemplo: # chfn fulano 54. chage -M [dias] [usuário] (expira um usuário, no dia pré-determinado, requer root) Exemplo: # chage -M 20 fulano 55. display [imagem.jpg] (mostra uma imagem no X, necessita do ImageMagick) Exemplo: $ display imagem.jpg 56. convert [imagem.png] [imagem.jpg] (converte o formato .png para .jpg, necessita também do ImageMagick) Exemplo: $ convert imagem.png imagem.jpg 57. chmod (altera permissões) Exemplo: # chmod 666 /dev/hdd 58. mount [device] (monta um dispositivo) Exemplo: $ mount /mnt/cdrom 59. umount [device] (desmonta um dispositivo) Exemplo: $ umount /mnt/cdrom 60. eject (abre a gaveta do cd-rom) Exemplo: $ eject /mnt/cdrom eject -t (fecha a gaveta do cdrom) Exemplo: $ eject -t /mnt/cdrom 63. halt (desliga o PC) Exemplo: $ halt 61. date (informa o dia e a hora) 32 Sistemas Operacionais Exemplo: $ date 62. hostname (informa o nome da máquina) Exemplo: $ hostname 63. du [diretório] (fornece o tamanho de um diretório) Exemplo: $ du pasta 64. du -S [sub-diretórios] (fornece o tamanho do sub-diretório) Exemplo: $ du -S sub_pasta 65. [comando] & (inicia um processo em segundo plano e deixa o terminal livre para trabalhar) Exemplo: $ gkrellm & 66. cal (mostra um calendário do mês atual) Exemplo: $ cal 67. cal [ano] (mostra os 12 meses de um determinado ano) Exemplo: $ cal 2005 68. last [-quantidade] (mostra informações sobre os últimos logins, onde em quantidade você indica o número de logins) Exemplo: $ last -10 69. tar -zxvf [arquivo.tar.gz] (descompacta um arquivo em formato .tar.gz) Exemplo: $ tar -zxvf amsn-0.94.tar.gz 70. tar -jxvf [arquivo .tar.bz2] (descompacta um arquivo no formato .tar.bz2) Exemplo: $ tar -jxvf gkrellm-0.12.tar.bz2 71. clear (limpa a tela do shell) 33 Escola Alcides Maya - Primeiro Módulo Exemplo: $ clear 72. free (mostra detalhes sobre a memória RAM) Exemplo: $ free 73. time [comando] (mede o tempo gasto para abrir um programa) Exemplo: $ time limewire 74. uptime (mostra o tempo desde do último boot) Exemplo: $ uptime 75. lsattr [arquivo/diretório] (lista atributos de um arquivo ou diretório) Exemplo: $ lsattr arquivo 76. whereis [executável/comando] (localiza o caminho de um executável/comando) Exemplo: $ whereis limewire 77. who (mostra quem está conectado ao sistema nesse momento) Exemplo: $ who 78. wget -c [URL] (faz download de arquivo na internet) Exemplo: $ wget -c http://www.lugar.do.download 79. whoami (mostra quem se logou primeiro no sistema) Exemplo: $ whoami 34 Sistemas Operacionais 6 BIBLIOGRAFIA www.conectiva.com.br www.vivaolinux.com.br www.devin.com.br/eitch www.geocities.yahoo.com.br/open78br/slide_1.html 35