A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Gerenciamento, suporte e comandos mais utilizados em ambientes Linux e Solaris Frank S. Fernandes Bastos Instrutor.: Frank S. Fernandes Bastos

Apresentações semelhantes


Apresentação em tema: "Gerenciamento, suporte e comandos mais utilizados em ambientes Linux e Solaris Frank S. Fernandes Bastos Instrutor.: Frank S. Fernandes Bastos"— Transcrição da apresentação:

1 Gerenciamento, suporte e comandos mais utilizados em ambientes Linux e Solaris Frank S. Fernandes Bastos Instrutor.: Frank S. Fernandes Bastos Foco.: Adiquirir conhecimento preparatório para Concurso referente itens do conteúdo Linux e Solaris Público.: Estudantes de concurso específico Local.: Sala de aula Número Slides.: 166 (incluindo este)

2 Transpor as barreiras no aprendizado para adquirir conhecimento suficiente para preparação e prova de concurso específico, Módulo Sistemas Operacionais Linux e Solaris. OBJETIVOS

3 Entre os vários sistemas operacionais existentes, o Unix é um exemplo vivo de maturidade e eficiência. Um de seus maiores pontos fortes é a confiabilidade e por isso, durante mais de trinta anos tem sido utilizado universalmente nas mais diversas aplicações e plataformas de hardware. Ao longo dos anos, várias versões do unix surgiram, tanto comerciais como Solaris, IRIX, HP-UX, AIX, e livres, como FreeBSD e Linux. Sendo o último objeto alvo deste treinamento. Breve Histórico

4 Década de 1960 e início de Marcado pela era dos grandes computadores, caros e de difícil acesso à pessoas comuns. Com a crescente demanda por pesquisa era imprescindivel desenvolver um sistema operacional multi-usuário e multi-tarefa, que pudesse ser convertido para diferentes plataformas de hardware. Neste momento fora criado a primeira distribuição UNIX. Principais características agregadas.: Facilidade e praticidade na manipulação de objetos avançados de rede, facil administração de cotas de disco, FTP, , WWW, DNS, e o principal, baixo custo de implantação. Cronologia

5 Dentre os principais criadores, destacam-se o grupo da universidade católica da Califórnia, em Berkeley, que em 1975 licenciou a versão 6 da AT&T que após aprimoramentos relançou-se como UNIX BSD Em 1980, o surgimento das versões baseadas em workstations onde as primeiras versões comeciais foram liberadas (SunOS, Solaris) e outros. Até meados da década de 80, o unix ainda não possuia uma interface gráfica própria, neste momento, associados ao instituto MIT (Massachusets Institute of Technology) fora desenvolvido o padrão X windows System utilizado como base até os dias de hoje. Cronologia

6 Algumas datas importantes.: 1969, Ken Thompson cria o Unix 1971, É lançada a versão 1 do unix escrita em Assembly 1973, primeiro compilador C para Unix (Ritchie e Thompson) 1974, AT&T autoriza a distribuição do código-fonte Unix para universidades 1975, Lançada a versão 6 do unix 1978, Lançada a versão 7 do unix, agora com cobrança de licença Cronologia

7 Algumas datas importantes.: 1979, AT&T lança o Unix System III 1983, AT&T lança o Unix System V e a Universidade da Califórnia lança o BSD Unix 4.2 (Sun utiliza o kernel como base para o SUNOS) 1984, Servidor X Window começa a ser desenvolvido no MIT (Massachusets Institute of Technology) 1986, Primeira implementação comercial do XWindows, utilizava VAX 1987, AT&T Lança o Unix System V release 3. É lançado o BSD 4.3. Neste momento a SUN e a AT&T concordam em fundir o BSD UNIX e Unix System V Cronologia

8 Algumas datas importantes.: 1988, Criação do X Consortium, organização aberta que garante a evolução do X. Lançado o X11R , AT&T lança o Unix System V Release 4, e a fusão com SUN coloca no mercado o MINIX através da internet. 1992, Lançamento do Solaris e do Linux 0.99pl /1993, Lançada a primeira distribuição linux em CD-ROM (Yggdrasil) 1994, Lançada a versão livre do Xwindow, o XFree86, Microsoft lança o NT 3.5, dois anos depois, a versão NT 4.0 Cronologia

9 Clone absoluto do Unix, criado como alternativa barata e funcional para quem não está disposto a pagar o alto preço de um sistema unix comercial ou não tem um computador suficientemente rápido. Em 1983, Richard Stallman fundou a Free Software Foundation, cujo projeto, GNU, tinha por finalidade criar um clone melhorado e livre do sistema operacional UNIX. Cronologia

10 Linus Benedict Torvalds, aluno da Universidade de Helsinque, Finlândia, no final de Percebeu que o Intel era o único microprocessador disponível na época capaz de executar um clone do unix. Sua opção por este processador garantiu a ele, posteriormente, o grande número de voluntários que tornou o desenvolvimento do linux viável até hoje. O Linux

11 1969, Criação do Unix na AT&T. 1974, Distribuição do Unix para universidades. 1983, Richard Stallman cria a Free Software Foundation 1984, X window é criado no MIT. 1988, Criação do MINIX 1990, Linus Torvalds assiste à sua primeira aula de linguagem C. 1991, Linus Torvalds inicia o desenvolvimento do Linux. 1992, Versão 0.01 é discutida na internet. Lançada a versão 0.95 do Linux Cronologia do Linux

12 1993, A Yggdragil libera a produção da distribuição Linux 1994, Xfree86 e 0.99pl15 do linux são lançados. RED-HAT, Slackware e outras distribuições surgem em CD-ROM. 1995, primeira versão modularizada do linux 1996, Caldera lança a versão 1.0 com netscape incluso 1998, Conectiva Lança primeira distribuilção brasileira do linux baseada no RedHat. Cronologia do Linux

13 A licença GPL (GNU Public Licence) garante que o linux não seja um software de domínio público, mas licenciado á ele. Como vários grupos pelo mundo tem trabalhado conjuntamente para o desenvolvimento contínuo do LINUX, fez-se necessário a normatização e implantação do controle padrão de licenças. O linux segue o modelo de desenvolvimento aberto e, por isso mesmo, a cada nova versão liberada ao público, é considerado um “produto de qualidade”. Licenciamento

14 Versões r.x.y, onde x é um número par São versões estáveis e, enquanto o y é incrementado, apenas as correções de bugs são efetuadas. Assim, da versão para o houveram apenas correções de bugs e nenhuma característica nova. Versões r.x.y, onde x é um número impar São versões beta, destinadas apenas a desenvolvedores, podem ser instáveis e falhar, estão sujeitas a alterações por tempo indeterminado. CopyRight e Numeração de versões

15 Diversas empresas e organizações de voluntários decidiram juntar os programas do Linux em “pacotes” próprios aos quais elas fornecem suporte. Esses “pacotes” são chamados de distribuições e, entre as mais famosas e utilizadas, destacam-se.: Red Hat, Mandrake, Conectiva (brasileira), Debian, SlackWare, SuSE e Caldera. LSB (Linux Standard Base), é um conjunto de padrões cujo objetivo é compatibilizar e padronizar as diversas distribuições Linux, permitindo assim que qualquer software escrito para linux seja executado em qualquer distribuição desenvolvida de acordo com o LSB. Distribuições

16 O Linux oferece diversas vantagens para quem o utiliza. Entre elas, destacam-se: Sistema multi-tarefa e multi-usuário de 32 ou 64 Bits Sistema Gráfico XWindow Suporte a linguagens (java, c, c++, pascal e outros) Memória virtual gerenciável. Código-fonte do kernel Centenas de programas em GPL, incluindo compiladores Estabilidade, segurança e Crescimento crescente. O que o Linux e o Solaris oferecem?

17 Kernel Núcleo do sistema operacional, a parte mais próxima do nível físico (hardware). Composto de chamadas ao sistema, de acesso aos dispositivos de entrada e saída e de gerência de recursos. Shell Nome genérico de uma classe de programas que funcionam coo interpretador de comandos e linguagem de programação script (interpretado) no Unix. Mais populares.: bash, csh, ksh e zsh Script Script nada mais é que um arquivo que contém comandos shell, em uma situação normal podem ser executados pelo prompt. Termos utilizados

18 O linux é um sistema operacional com memória virtual paginada, isto quer dizer que podemos ter programas em execução cujo tamanho seja maior que a memória física disponível para executá-los. Com isso, o sistema passa a preocupar-se em manter em memória RAM apenas os programas que estão realmente em uso ou que possuem prioridade. Gerenciamento de memória

19 Assim como vários outros sistemas operacionais, o linux também possui um bom ambiente gráfico. O ambiente gráfico do linux basea-se em um conceito chamado gerenciador de janelas, este, por sua vez, consiste em um software, rodando sob o X Windows System, que é responsável pelas funções de ajuste de tamanho de uma janela, minimização, maximização, etc. Dentre os gerenciadores de janelas mais utilizados, estão.: KDE, GNOME, XFCE, Enlightenment, Window Maker, AfterStep, Fvwm, e outros... Cabe lembrar que o uso de mouse é indispensável em ambientes gráficos no linux. Gerenciamento Gráfico

20 Todas as informações utilizadas pelo linux e unix são baseadas em filesystem e arquivos. Estes podem conter textos, informações de programação, scripts, e qualquer outro tipo de informação.: Algumas informações.: No MS-DOS, os dispositivos de armazenamento são representados por unidades A:, B:, C: por exemplo. No linux, eles são representados por diretórios e filesystens cuja hierarquia é definida no momento de montagem. Existe diferenciação obrigatória entre letras maiúsculas e minúsculas (case sensitive) e não há bloqueio para inserção de espaços em nomes de arquivos e diretórios. Gerenciamento de arquivos

21 Os caracteres ( # $ % ^ & * ( ) { } [ ] ‘ “ ? | ; ` + - = \ /.. ) não podem ser utilizados em nomes de arquivos Não há extensões compulsórias como.COM e.EXE para programas e outras extensões conhecidas nos sistemas operacionais microsoft. Sistema de arquivos

22 Tipos de arquivos do linux e solaris Arquivos comuns, Texto, Dados, Scripts, binários e outros... Diretórios, são arquivos de índice que contém os nomes de arquivos que serão armazenados ou organizados como um grupo Links, Um arquivo que faz referência a outro arquivo ou diretório. Device Files, arquivos utilizados para representar dispositivos de hardware. Ex.: /dev/hdc, /dev/lp1 Sockets, São arquivos utilizados para comunicação entre processos. Pipes, Arquivos também utilizados para comunicação entre processos e residem também no diretório /dev Sistema de arquivos

23 Existem vários sistemas de arquivos UNIX (Minix, ext, ext2, ext3, JFS, XFS, ReiserFS, UFS, FFS, entre outros). O Ext2 (sistema de arquivos estendido 2) é o sistema de arquivos padrão utilizado pelo Linux. No entanto, o Linux é capaz de utilizar vários sistemas de arquivos além do ext2, Minix (primeiras versões do linux), ext (estendido original), ext3 (ext2 melhorado com recuperação rápida de dados em caso de desligamento anormal), MS-DOS, VFAT, NTFS eo ISO9660 (para CD- ROM) Mapeamento de arquivos para disco

24 Quando o Disco Rígido é formatado com um sistema de arquivos padrão UNIX/LiNUX é criado nele uma estrutura de dados chamado iNODE. O bloco 0 é o bloco que contém o sistema operacional. O bloco 1, é o superbloco que contém informações sobre o sistema de arquivos, como o número de iNODES, número de iNODES livres, Número de blocos do disco, etc.. A eventual destruição do superbloco provoca a falha de leitura dos arquivos do sistema. Depois dos superblocos estão os iNODES, elementos essenciais ao sistema de arquivos do linux. Mapeamento de arquivos

25 Quando o usuário cria um arquivo, um iNODE é alocado para ele. Estes são numerados de 1 até algum número máximo definido na formatação de acordo com o tamanho do disco. Cada iNODE tem 64 Bytes e contém informações sobre um arquivo.: UID (Identif. De usuário dono do arquivo) e GID (identif. De grupo) Tipo do arquivo (comum, diretório, etc, ou 0 se o iNODE não estiver sendo utilizado Permissões, Data e Hora de criação, acesso e última utilização, número de links, tamanho e localização dos blocos iNODE não contém o nome do arquivo, essa informação está armazenada em um arquivo de diretório. Mapeamento de arquivos para disco

26 Um arquivo de diretório contém várias entradas. Cada entrada contém o nome de um arquivo e o seu iNODE. Para abrir um arquivo em um diretório, o sistema operacional simplesmente lê o diretório, comparando o nome do arquivo a ser encontrado com cada uma das entradas, até que o nome seja encontrado. Se o arquivo estiver no diretório, o S.O. obterá seu iNODE e esta identificação será colocada em uma área que se chama tabela de iNODES, estrutura esta pertencente ao Kernel. Quando esse iNODE é lido, é obtida a localização dos blocos onde está armazenado o arquivo desejado e logo após este é lido. iNODES e Mapeamento do disco

27 Bloco de boot SuperblocoTabela de iNODES Blocos de dados Divisão de blocos

28 / - Diretório Raiz /boot- Kernel do sistema /proc- Sistemas de arquivos virtual de informações do kernel e proc. /dev- Arquivos de dispositivos de hardware /tmp- Arquivos temporários /etc- Arquivos de configuração do sistema /lib- Bibliotecas compartilhadas essenciais e módulos do kernel /mnt- Ponto de montagem temporária de sistemas de arquivos /opt- Pacotes de software opcionais Estrutura básica do sistema de arquivos

29 /root- Diretório do superusuário root /home- Diretórios dos usuários /bin- Comandos essenciais do sistema. /sbin- Comandos essenciais de administração do sistema. /usr- Hierarquia secundária. /var - Dados variáveis Estrutura básica do sistema de arquivos

30 Complemento de aula

31 Navegação entre diretórios 1.Uso da estrutura / para referenciar a hierarquia de diretórios 2.Uso do. (ponto) e.. (dois pontos) para representação de posição

32 Complemento de aula

33 Permissões e Segurança de Arquivos 1.Totalmente baseado em Leitura, escrita e execução 2.Orientado ao Dono, Grupos e Outros 3.Pode-se atribuir pelos métodos numérico e literal

34 Complemento de aula

35 Todo shell em um sistema operacional precisa comunicar-se com o usuário por meio de dispositivos de entrada e saída. Da mesma forma, os programas normalmente se utilizam de serviços do sistema operacional para a comunicação com o usuário. No Linux, todo programa (incluindo o shell) possuir pelo menos três dispositivos associados: Entrada-padrão de dados (stdin) Dispositivo pelo qual os programas obtêm dados de entrada para executar suas tarefas. Na maior parte teclado do terminal. Entretanto atrávés do shell podemos associar parametros ou arquivos por direcionamento. Entrada e Saída Padrão

36 Saída-padrão de dados (stdout) Dispositivo pelo qual os programas normalmente enviam seus resultados. Em geral, monitor de vídeo do terminal é o padrão. Comandos de redirecionamento do shell podem associar arquivos como saída. Saída-padrão de erros (stderr) Dispositivo para o qual mensagens e dados decorrentes de erros são enviados. Idem ao anterior podem ser desviados para arquivos ou vistos no monitor do terminal. Entrada e Saída Padrão

37 DescritorNomeAbreviaçãoDispositivo 0Entrada-PadrãoStdinTeclado 1Saída-PadrãoStdoutVídeo 2Saída-Padrão de errosStderrVídeo Entrada e Saída Padrão

38 Complemento de aula

39 O redirecionamento é um recurso bastante interessante e útil que permite aos dados de saída serem armazenados em arquivos ou impressos, bem como dados de entrada que sejam obtidos de um arquivo em vez do teclado. Pipping é um recurso que permite conectar a saída de um comando na entrada de outro, sem limitação do número de conexões entre comandos, mas desde que cada um deles leia e escreva na saída- padrão. Redirecionamentos

40 Redirecionador ou pipeFunção Comando > arquivoRedireciona a saída padrão Comando < arquivoRedireciona a entrada padrão Comando >> arquivoConcatena a saída padrão Comando << arquivoConcatena a entrada padrão Comando 2> arquivoRedireciona a saída de erro padrão Comando 2>> arquivoConcatena a saída de erro padrão Comando1 | comando2Pipe de comandos Redirecionamentos

41 Exemplos.: $ cat > arquivo1.txt Teste de inclusao de dados + $ more arquivo1.txt Redirecionamentos

42 Introdução Shell é o nome genérico de uma classe de programas que funcionam como interpretador de comandos e linguagem de programação script (interpretada) no Unix ou Linux. Os shells mais populares são bash, csh, tcsh, ksh e zsh. O shell padrão do linux é o bash objeto alvo deste treinamento. Este shell é executado em um ambiente (environment) controlado por variáveis de ambiente, que são definições e valores que o shell e outros programas utilizam para configuração no momento em que é realizado o login. Shell

43 Arquivo /etc/passwd e /etc/shadow Ambos os arquivos estão diretamente ligados às políticas de segurança dos ambientes unix e linux. passwd – Arquivo conteúdo de dados relacionados com usuários e associação a seus grupos. shadow - Armazenamento de senhas criptografadas. Arquivos de configuração

44 Arquivo /etc/shells Contém os shells e programas que podem ser escolhidos pelo comando chsh. # cat /etc/shells /bin/bash /bin/bash2 /bin/sh /bin/ash.... Arquivos de configuração

45 Arquivo /etc/profile Define as variáveis de ambiente para todos os usuários. É executado automaticamente no login. Arquivos de configuração

46 Complemento de aula

47 Quoting A função do quoting é evitar a substituição de variáveis ou remover o significado dos caracteres especiais e palavras reservadas do shell, permitindo que estes sejam utilizados literalmente. Os caracteres ‘ (aspas simples), “ (aspas duplas) e \ (barra invertida) são usados para quoting. Shell script

48 QuotingCONTINUAÇÃO É importante saber.: Qualquer string entre aspas simples é considerada literalmente, mas a substituição de parametros não é permitida. Qualquer string entre aspas duplas é considerada literalmente, mas a substituição de parametros é permitida. Qualquer caractere seguinte a \ é considerado literalmente. Shell script

49 QuotingCONTINUAÇÃO Exemplos.: $ echo “você tem ‘ls | wc –l’ arquivos em ‘pwd’ “ $ echo ‘isto e um teste \”simples\”? ‘ $ export x=100 $ echo “o valor de \$x é $x” Shell script

50 Formas de comandos (Execução) FormaDefinição/Exemplos ;\Executa comandos múltiplos em linhas separadas # comando1 ;\ Comando2 Comando &Executa em segundo plano Comando1;comando2Executa múltiplos comandos em sequencia $cd;ls (comando1;comando2)Subshell; trata os comandos como um grupo $(date;who) > arquivo1.txt Comando1 | comando2Pipe; utiliza a saída do comando 1 como entrada para o comando 2 Shell script

51 Formas de comandos (Execução) FormaDefinição/Exemplos Comando1 ‘comando2’Substituição de comandos; utiliza a saída do comando2 como argumento para o comando1 $ vi ‘grep –l ifdef *.c’ Comando1 $(comando2)Substituição de comandos Comando1 && comando2Executa o comando2 se o comando1 for bem sucedido. Comando1 || comando2Executa o comando2 se o comando1 falhar {comando1;comando2}Executa os comandos no shell corrente. Shell script

52 Complemento de aula

53 Operadores Os operadores lógicos e aritméticos utilizados pelo shell bash são informados a seguir, em ordem decrescente de precedência.: Shell script

54 Operadores OperadorDescrição !, ~Negação lógica, complemento de 1 (utilizado em operações com bits) * /, %Multiplicação, divisão, módulo +, -Adição, subtração >Deslocamento de bit à esquerda, deslocamento de bit à direita =Menor que ou igual, maior que ou igual Menor que, maior que ==, !=Igualdade, desigualdade &AND ^Exclusive OR |OR &&AND lógico ||OR lógico Shell script

55 Variáveis Especiais OperadorDescrição $#Número de parâmetros passados $-Opções fornecidas ao shell $?Valor de retorno do último comando do script $$Número do processo do shell script em execução $!Número do último processo executado em background $nArgumento na linha de comando, onde n varia de 1 até 9, da esquerda para a direita $0O nome do programa ou shell em execução $*Todos os parâmetros separados por espaços em branco. mesmo que o anterior Shell script

56 Complemento de aula

57 Substituição de parâmetros OperadorDescrição $parâmetroSubstitui parâmetro pelo conteúdo da variável. ${parâmetro}O mesmo que o anterior ${#parâmetro}Mostra o número de caracteres do parâmetro ${parâmetro=}O parâmetro torna-se nulo ${parâmetro-padrão}Se nenhum valor foi atribuído ao parâmetro, então utilizará padrão ${parâmetro=padrão}Se nenhum valor foi atribuído ao parâmetro, então utilizará padrão e novo valor. ${parâmetro+valor_novo}Se algum valor foi atribuído ao parâmetro, então utilizará valor_novo. ${parâmetro?mensagem}Se nenhum valor foi atribuído ao parâmetro, então exibe mensagem. Shell script

58 Substituição de comandos O resultado da execução do comando é colocado no lugar do parâmetro. Pode ser demonstrada de duas formas.: $ (comando) ou ´comando´. Exemplos.: $ echo o caminho para more é which more $ echo o caminho para more é `which more` $ echo o caminho para find é $(which find) Shell script

59 Expansão de chaves É a combinação de todos os elementos entre as chaves, separados por vírgulas. Veja que em {,s}, o primeiro parâmetro é nulo, mas a vírgula é necessária. Exemplos.: $ echo {a,o}{,s} Shell script

60 Expansão aritmética O bash permite a realização de aritmética com números inteiros Exemplos.: $ echo $((4*7)) Shell script

61 Complemento de aula

62 Entrada interativa Read Lê uma linha da entrada-padrão Exemplos.: $ echo –n “Digite seu nome.:” Read NOME SOBRENOME Echo “Prazer $NOME !” Shell script

63 O que é? O processo init é o primeiro programa executado pelo kernel de qualquer sistema operacional Linux/Unix na sua inicialização. Durante o boot, após ler o MBR do disco e saber como deverá ser o processo de inicialização do sistema, o próximo passo do linux é montar o / (barra ou raiz) e inicializar seu primeiro processo, o INIT, este por sua vez é o único processo do linux que não pode ser abortado pelo usuário. Este é o processo pai de seu sistema operacional. Processo INIT

64 SysV init Os níveis de execução definem como o sistema operacional inicializará. NívelFuncionalid. acordo com Red Hat, Solaris, Suse 0halt 1Monousuário 2Multiusuário, sem NFS 3Multiusuário, com NFS 4Reservado 5X11 6Reboot Níveis de inicialização

65 Localização Os scripts de inicialização do linux estão localizados no diretório /etc/rc.d (ou, dependendo da distribuição, em etc como o Debian por exemplo). Neste diretório são encontrados os scripts de inicialização.: Rc.sysinit, Rc Rc.serial Rc.local E diretórios.: init.d, rc0.d, rc1.d, rc2.d.... Rc6.d Processo de INIT

66 Localização O init.d contém vários scripts de inicialização. Já os diretórios rc0.d e os demais possuem links simbólicos para os scripts contidos em init.d. Cada script do diretório /etc/rc.d/init.d é concebido de forma a receber como argumento parametros de start, stop, restart e status. Níveis de inicialização

67 Sequência de inicialização SysV init 1.O arquivo /etc/inittab é lido e assim, definido o nível em que o sistema iniciará 2.Init executa o script /etc/rc.d/rc.sysinit 3.O processo init executa o script /etc/rc.d/rc que recebe o nível de execução como parâmetro. 4.O script /etc/rc.d/rc executa os scripts de um dos diretórios /etc/rc.d/rc?.d de acordo com o nível escolhido. 5.Init executa o script /etc/rc.d/rc.local 6.Init executa o processo mingetty para configurar os terminais. Sequência de inicialização

68 Entendendo os links contidos em /etc/rc.d/rc?.d O padrão descrito abaixo é padrão na maioria das distribuições linux. Se um link for iniciado com uma letra K (kill), quer dizer que o serviço será interrompido naquele nível de execução. Se um link é iniciado com a letra S (start), quer dizer que o serviço será iniciado naquele nível. São executados primeiro os links com as letras K e depois com S, a ordem depende dos números posteriores as letras, se iguais, são executados em ordem alfabética. Editando scripts de inicialização

69 Complemento de aula

70 halt / shutdown / poweroff Desliga o computador Exemplo.: $ halt Comandos básicos

71 reboot Reinicializa o computador Exemplo.: $ reboot Comandos básicos

72 Init [Sinal] Envia sinais para o terminal, será abordado melhor mais a diante no treinamento. Sinal é um valor inteiro; 6 – fecha todos os programas e reinicia em modo normal. Exemplo.: $ init 6 Comandos básicos

73 chkconfig Gerencia os scripts de inicialização dos serviços e seus links simbólicos localizados nos vários diretórios de inicialização. # chkconfig lpd O script será executado nos níveis 2,3,4 e 5 e com prioridade de start 60 e de stop addAdiciona um serviço --delRemove um serviço --levels Especifica os níveis de execução onde (n) é o nível e (s) o serviço. Configurando serviços

74 Drives e arquivos de dispositivo Aos drives e partições do linux são dados nomes diferentes aos seus correspondentes em outros sistemas operacionais. Estes arquivos de dispositivos são encontrados no diretório /dev e são utilizados para a comunicação com os dispositivos em seu sistema (discos, mouse, etc.) Editando scripts de inicialização

75 Exemplos de dispositivos de disco DispositivoDescrição /dev/hdaIDE Primária Master /dev/hda1 Partição 1 da IDE Primária Master /dev/hda2 Partição 2 da IDE Primária Master /dev/hdbIDE Primária Slave /dev/hdb1 Partição 1 da IDE Primária Slave /dev/hdb2 Partição 2 da IDE Primária Slave /dev/hdcIDE Secundária Master /dev/hdc1 Partição 1 da IDE Secundária Master /dev/hdc2 Partição 2 da IDE Secundária Master /dev/hddIDE Secundária Slave /dev/hdd1 Partição 1 da IDE Secundária Slave /dev/hdd2 Partição 2 da IDE Secundária Slave... Editando scripts de inicialização

76 Montando automaticamente o sistema de arquivos /etc/fstab O arquivo /etc/fstab contém as entradas dos dispositivos e/ou partições que contém sistemas de arquivos existentes no linux. É possível adicionar mais dispositivos e/ou partições editando cuidadosamente esse arquivo. Montando volumes automaticamente

77 1ª colunaDispositivo 2ª colunaPonto de montagem 3ª colunaTipo do sistema de arquivos (ext2, ext3, vfat,...) 4ª colunaOpções de montagem Defaults – montagem padrão do dispositivo exec,noexec – Permite/Não execução de programas Auto,noauto – Monta/Não automaticamente user,nouser – Permite/não usuários comuns acessar rw, ro – Monta para leitura/gravação ou leitura somente Montando volumes automaticamente Montando automaticamente o sistema de arquivos /etc/fstab

78 5ª colunaDump do dispositivo 0 Não faz o dump 1 Faz o dump 6ª colunaVerificação de reparo 0 Não faz 1 Faz verificação e reparo do dispositivo. Montando volumes automaticamente Montando automaticamente o sistema de arquivos /etc/fstab

79 Complemento de aula

80 Arquivo /etc/HOSTNAME Armazena o nome do computador. Exemplo.: cat /etc/HOSTNAME Linux.site Arquivos de configuração

81 Arquivo /etc/hosts Contém uma lista de endereços IP e nomes de computadores da rede local. Exemplo.: cat /etc/hosts localhost.localdomainlocalhost testelinux.linux.org.brservidor Arquivos de configuração

82 Arquivo /etc/resolv.conf Nesse arquivo é configurado o cliente de DNS, que contém o nome do domínio do servidor DNS e o seu endereço IP. Exemplo.: cat /etc/resolv.conf Search linux.org.br Nameserver Arquivos de configuração

83 Arquivo /etc/sysconfig/network/* Neste diretório são encontrados os script´s que possuem informações sobre as interfaces de rede. O padrão de nomenclatura dos arquivos são.: ifcfg- Seu conteúdo pode variar mas geralmente são usados os campos.: DEVICE=eth0 IPADDR= NETMASK= NETWORK= ONBOOT=yes Arquivos de configuração

84 Complemento de aula

85 Comandos internos São comandos que estão dentro de um shell interpretador de comandos. Quando o shell é carregado em memória, seus comendos ficam residentes nela. A principal vantagem destes comandos é a velocidade, pois, não precisamos acessar o disco para procurar e executar os mesmos, exemplos.: cd, alias, kill e logout Tipos de comandos

86 Comandos externos São comandos que estão localizados em diretórios específicos no disco rígido, como /bin e /sbin. O linux precisa consultar o disco rígido sempre que um desses comandos é solicitado. A maioria dos comandos deste sistema operacional são externos. Exemplos.: ls, cp, rm, mv, mkdir e rmdir. Tipos de comandos

87 Quando o prompt que preceder o comando for o simbolo $, o comando poderá ser executado por qualquer usuário; #, Somente pelo root [TEXTO] sintaxe opcional sintaxe obrigatória, tecla a ser precionada +, precionar simultaneamente. Convenções

88 Login Cancela a sessão atual e inicia uma nova sessão de usuário Exemplo.: $ login Comandos básicos

89 Logout ou + Termina a sessão do usuário Exemplo.: $ logout Comandos básicos

90 Exit Encerra o shell de comandos corrente. Exemplo.: $ exit Comandos básicos

91 Man [opções] [seção], para sair digite a tecla Consulta os manuais on-line do sistema operacional OpçãoDescrição -aExibe todas as páginas do manual -hExibe uma mensagem de ajuda -wExibe a localização de páginas do manual a exibir Exemplo.: $ man ls Comandos básicos – Ajuda online

92 info Exibe informações de um comando do sistema OpçãoDescrição -d Adiciona um diretório à lista de diretórios a ser procurada para arquivos. -f Especifica o diretório a ser utilizado pelo comando info -hExibe uma mensagem de ajuda. Exemplo.: $ info ls Comandos básicos – Ajuda online

93 Whatis Consulta manuais on-line do sistema a apartir de um banco de dados. O usuário deve atualizar este banco de dados periodicamente com o comando makewhatis (root), para ajuda, digite makewhatis -? Exemplo.: $ whatis find, para sair tecle Comandos básicos – Ajuda online

94 Apropos Exibe informações sobre um assunto específico apartir de um banco de dados. Esse comando utiliza o mesmo banco de dados do comando whatis. Exemplo.: $ apropos directory, para sair tecle Comandos básicos – Ajuda online

95 cd [diretório] Muda, entra, no diretório de trabalho escolhido Exemplo.: $ cd /etc Comandos básicos – Navegação

96 pwd Exibe o diretório corrente Exemplo.: $ pwd Comandos básicos – Navegação

97 Tree [opções][diretório] Exibe a árvore de diretórios. Por padrão exibe arquivos e diretórios. OpçõesDescrição -dExibe somente diretórios -lSegue links simbólicos Exemplo.: $ tree /var/lib Comandos básicos – Navegação

98 Ls ou dir [opções][diretório] – Atenção.: DIR (exclusivo linux) Exibe o conteúdo dos diretórios OpçõesDescrição -aExibe arquivos ocultos -lExibe a listagem utilizando o formato longo de nomes -iInclui na exibição o número do iNODE -tOrdena por data de alteração -rReverte a ordenação (ordem inversa) -RRecursivo Comandos básicos – Navegação

99 Find [caminho] [opções] Procura arquivos no disco rígido. OpçõesDescrição -name Localiza arquivos cujos nomes sejam iguais ao especif. -followProcessa diretórios incluídos por meio de links -maxdepth Restringe buscas a n níveis de diretórios. -ctime Combina arquivos modificados exatamente n dias atrás -mtime Combina arquivos não modificados n dias atrás -atime Arquivos não utilizados n dias atrás Comandos básicos – Navegação

100 Grep (UNIX), fgrep, egrep (LINUX) [opções] Procura em um ou mais arquivos por linhas que contenham o padrão. OpçõesDescrição -FUtiliza expressões sem metacaracteres -EPadrão é uma expressão regular -e Procura pela expressão regular expr. -nExibe o número da linha que contém padrão. -cExibe apenas o número de linhas (quantidade) -f Lê o padrão a partir do arquivo Comandos básicos – Navegação

101 Strings [opções] Procura texto em arquivos binários. OpçõesDescrição -aProcura strings em todo o arquivo e não somente nos segmentos de texto e dados dos arquivos. -fImprime o nome do arquivo antes de cada string Exemplo.: $strings /usr/games/sdoom | grep DOOM Comandos básicos

102 Whereis [opções] Localiza o arquivo binário. O código-fonte e a página do manual para um comando. OpçõesDescrição -bLocaliza apenas arquivos binários -sApenas código-fonte -mApenas páginas de manual Exemplo.: $whereis rpm Comandos básicos

103 Which Procura por um comando em diretórios e na variável de ambiente PATH. Exemplo.: $which clear Comandos básicos – Navegação

104 Touch [opções] Atualiza a última data de acesso ao arquivo. Caso o arquivo não exista, será criado vazio por padrão. OpçõesDescrição -cNão cria o arquivo caso ele não exista. -mAtualiza somente a hora da modificação. -aAtualiza somente a data de acesso. Exemplo.: $touch arquivo1.doc Comandos básicos – Navegação

105 Rm [opções] Remove arquivos. OpçõesDescrição -fNão exibe mensagens de confirmação para eliminar -iPede confirmação antes de eliminar. -rApaga recursivamente -vExibe o nome de cada arquivo antes de eliminá-lo. Exemplo.: $rm arquivo1.doc Comandos de Manipulação de arquivos

106 mkdir [opções] Cria diretórios. OpçõesDescrição -pCria os diretórios pai se ainda não existirem. -m Cria um diretório com o modo de acesso modo. Vide chmod --verboseMostra o nome de cada diretório criado. Exemplo.: $mkdir dir1 Comandos de Manipulação de diretórios

107 rmdir [opções] Remove diretórios. OpçõesDescrição -pRemove os diretórios intermediários se vazios. --verboseMostra o nome de cada diretório removido. Exemplo.: $rmdir dir1 Comandos de Manipulação de diretórios

108 mv [opções] Move ou renomeia arquivos e diretórios. OpçõesDescrição -bFaz backup de arquivos que estão sendo movidos ou renomeados -fRemove arquivos existentes, sem confirmação -iPede confirmação antes de mover um arquivo. -vExibe o nome do arquivo antes de movê-lo. Exemplo.: $mv arq1 arq2 Comandos de Manipulação de diretórios

109 cp [opções] Copia um ou mais arquivos. OpçõesDescrição -aPreserva todos os atributos de arquivo. -bFaz backup antes de copiar -dCopia um link, mas não o arquivo apontado por este. -iPede confirmação antes de sobrescrever arquivos. -lCria links diretos em vez de copiar arquivos -ppreserva propriedade, permis.e time stamp. Comandos de Manipulação de diretórios

110 Ln [opções] Cria links para arquivos e/ou diretórios. OpçõesDescrição -sCria link simbólico -d Cria link direto para diretório. -f Força a criação do link -bFaz backup de cada arquivo de destino existente. -iPede confirmação antes de remover arquivo. Exemplo.: $ln –s /exercicios/temp link Comandos de Manipulação de arquivos

111 clear Limpa a tela do terminal virtual corrente. Exemplo.: $ clear Comandos de terminal

112 Echo [opções] Envia mensagem para o terminal. OpçõesDescrição -nNão imprime mudança de linha após a mensagem -e Habilita a interpretação de caracteres de escape na mensagem. Exemplo.: $ echo ´alo pessoal´ Comandos de terminal

113 Mesg [opções] Controla o recebimento de mensagens pelo terminal. Sem argumentos, mostra o estado atual. OpçõesDescrição YAtiva o recebimento de mensagens NDesativa o recebimento de mensagens Exemplo.: $ mesg y Comandos de terminal

114 Uname [opções] Exibe informações sobre o sistema operacional e o hardware OpçõesDescrição -aExibe todas as opções -mExibe o nome da plataforma -nExibe o nome da máquina -s Exibe o nome do sistema operacional -vExibe a data de lançamento do sistema operacional -rExibe a versão do sistema operacional Comandos de sistema

115 Cat [opções] Utilizado para visualizar o conteúdo dos arquivos. OpçõesDescrição -AExibe todos os caracteres especiais -bNumera apenas as linhas não vazias. -nNumera todas as linhas na saída -vExibe caracteres não passíveis de impressão (controle) -eExibe final de linha (como $) -tExibe caracteres de tabulação como ^I Comandos de paginação

116 More [opções] arquivo Exibe arquivos de texto. OpçõesDescrição + nExibe o arquivo começando na linha específica -sReduz múltiplas linhas em branco a uma única Exemplo.: $ more /etc/mtools.conf Comandos de paginação

117 Head [opções] Exibe na saída-padrão uma quantidade de linhas de texto a partir do início do arquivo. OpçõesDescrição -nExibe as n primeiras linhas do arquivo -b nExibe os n primeiros blocos do arquivo -c nExibe os n primeiros caracteres (bytes) do arquivo Exemplo.: $head -5 /etc/mtools.conf Comandos de filtragem

118 Tail [opções] Exibe na saída-padrão uma quantidade de linhas de texto a partir do final do arquivo. OpçõesDescrição -nExibe as n últimas linhas do arquivo -b Exibe os n últimos blocos do arquivo -c Exibe os n últimos caracteres (bytes) do arquivo -fDeixa em espera pelas últimas linhas. Exemplo.: $tail –f erros.log Comandos de filtragem

119 Wc [opções] Conta palavras da entrada-padrão ou de um arquivo e apresenta o resultado na saída-padrão. OpçõesDescrição -lConta as linhas -wConta as palavras -cConta os caracteres Exemplo.: $wc –l /etc/mtools.conf Comandos de filtragem

120 Tr [opções] [str1 [str2]] Substitui caracteres da entrada-padrão presentes em str1 por seus correspondentes em str2. OpçõesDescrição -cEfetua a troca de todos s caracteres que não estejam especificados em str1 -dElimina ocorrências de caracteres de str1 na entrada -sElimina repetições de caracteres de str2 na saída Exemplo.: $ ls | tr ‘a-z’ ‘A-Z’ Comandos de filtragem

121 Sort [opções] Ordena os dados recebidos da entrada-padrão ou de um arquivo, escrevendo-os na saída-padrão. OpçõesDescrição -mIntercala dois arquivos já ordenados, escrevendo a intercalação na saída padrão -rInverte a ordem da classificação, de ascendente para descendente. -t Utiliza separador como caractere de separação de campos Exemplo.: $ sort teste.txt Comandos de filtragem

122 Cut [opções] Seleciona trechos de cada linha de texto recebido da entrada-padrão ou de um arquivo, apresentando o resultado na saída-padrão. OpçõesDescrição -b Seleciona bytes -c Seleciona caracteres -f Seleciona listas de campos, onde estas podem ser números separados por vírgulas ou faixas de números como n1-n2, ou ainda combinações de ambos. -d Especifica o deliminatador c Exemplo.: $ cut –f 1,5 –d: /etc/passwd Comandos de filtragem

123 Paste [opções] Exibe lado a lado o conteúdo de arquivos. OpçõesDescrição -sExibe as linhas de um arquivo em série em vez de uma linha abaixo da outra -d Especifica o delimitador de campos como sendo o caractere c Exemplo.: $ paste –d, arquivo1.txt arquivo2.txt Comandos de filtragem

124 Tee [opções] Exibe a saída de um programa e a escreve em um arquivo simultaneamente. OpçõesDescrição -aConcatena o arquivo em vez de sobrescreve-lo -i Ignora interrupções. Exemplo.: $ ftp ftp.suse.com | tee ftp.out Comandos de filtragem

125 Diff [opções] Exibe na tela as diferenças entre dois arquivos-texto (ou todos os arquivos com mesmo nome em dois diretórios). OpçõesDescrição -aConsidera todos os arquivos do tipo texto -bIgnora sequencias de espaços e caracteres de tabulação -dTenta localizar um conjunto menor de modificações -fGera saída similar à da opção –e, mas de interpretação mais facil -iNão distingue maisculas e minusculas Comandos de filtragem

126 Tar [opções] [arquivo_tar] Armazena ou extrai vários arquivos e diretórios dentro de um único arquivo ou dispositivo. OpçõesDescrição -c Cria um novo arquivo.tar e adiciona a ele os arquivos especificados -xRetira os arquivos agrupados no arquivo.tar -fIndica que o destino é um arquivo em disco e não uma fita magnética -tLista o conteúdo do arquivo.tar -vExibe o nome de cada arquivo proces. Comandos de compactação e fracionamento

127 Split [opções] Divide um arquivo em partes. Para reunir as partes, utilize o comando cat. OpçõesDescrição -b n[k|m]Especifica o número de bytes de cada parte. Os modificadores k (kilobytes) e m (megabytes) podem ser utilizados. [prefixo]Especifica o prefixo a ser usado no nome de cada parte do arquivo original (default=x) Exemplo.: $ split –b1400k teste.txt part Comandos de compactação e fracionamento

128 Compress [opções] Compacta um ou mais arquivos utilizando a compactação Lempel-Ziv. OpçõesDescrição -cGrava o arquivo compactado na saída-padrão e retém o arquivo original -dDescompacta o arquivo. -rCompacta recursivamente arquivos em todos os subdiretórios -vExibe uma mensagem conforme cada arquivo é compactado. -VExibe a versão do comando. Comandos de compactação e fracionamento

129 UnCompress [opções] Descompacta um ou mais arquivos compactados com compress. OpçõesDescrição -cGrava o resultado na saída-padrão e retém o original -rDescompacta recursivamente -vExibe uma mensagem conforme cada arquivo é descompactado. -V Exibe a versão do comando. Exemplo.: $ uncompress documentos.tar.Z Comandos de compactação e fracionamento

130 Gzip [opções] Compacta um ou mais arquivos. OpçõesDescrição -cGrava o arquivo compactado e retém o original -dDescompacta arquivo -fSobrescreve existentes -hExibe mensagem de ajuda -lLista o conteúdo de um arquivo compactado. -tTesta a intregridade do arquivo compactado. Comandos de compactação e fracionamento

131 gunzip [opções] Descompacta arquivos compactados pelos comandos gzip e compress. Utiliza as mesmas opções de gzip. Exemplo.: $ gunzip documentos.tar.gz Comandos de compactação e fracionamento

132 Manipulação de arquivos com espaços em nomes Em alguns momentos, caracteres especiais ou espaços em nomes de arquivos atrapalham rotinas ou acessos aos mesmos. Para tal, observa-se a inclusão de aspas nos acessos aos mesmos como no exemplo abaixo. Exemplo.: $ mkdir “Meus Documentos” $ cd “linux teste” Dicas

133 Gerenciadores de pacotes (package managers) As várias distribuições do linux possuem formas diferentes de instalação de pacotes, as distribuições RedHat, Debian e Slackware possuem gerenciadores de pacotes (package managers) para a instalação de programas. A enfase na maioria das vezes se dá em cima do RPM (Red Hat Package Manager) que utiliza estes pacotes.rpm e é o gerenciador de pacotes mais utilizado nas distribuições linux. Pacotes

134 Rpm [opções] Gerenciador de pacotes da Red Hat OpçõesDescrição -iInstalação simples -vExibe detalhes da instalação -hMostra o caractere # como progresso da instalação -UAtualização de programa de uma versão anterior para uma atual. --nodepsNão procura dependências (útil para instalar vários pacotes relacionados, a ordem de instalação dos pacotes não importará). Pacotes

135 Dpkg [opções] Gerenciador de pacotes do Debian (.deb) OpçõesDescrição -iInstalação simples -rDesinstala o pacote (exceto arq. De configuração) -PDesinstala o pacote (Todos os arquivos) -lExibe os pacotes que estão instalados. -SExibe o pacote do qual o arquivo faz parte. -LExibe os arquivos que fazem parte de um pacote instalado Pacotes

136 Installpkg [opções] Principalmente o slackware faz uso do programa pkgtool para instalar e desinstalar pacotes do sistema. Além dele, existem outros como o installpkg (instalador de pacotes binários do slackware). -warnSomente gera um relatório do que aconteceria se um pacote fosse instalado. -mFaz um pacote do diretório corrente e seus subdiretórios como um pacote com o nome especificado. -rInstala o conteúdo do diretório corrente e seus subdiretórios como um pacote com nome especificado. Exemplos.: $ installpkg tree-1.3-1cl.i386.tgz Pacotes

137 removepkg [opções] Removedor de pacotes OpçõesDescrição -warnSomente gera um relatório do que aconteceria se um pacote fosse desinstalado. -keepSalva os arquivos temporários criados. Exemplos.: $ removepkg tree-1.3-1cl.i386.tgz Pacotes

138 Instalação customizada Esta é a forma mais difícil e menos usual de instalar um pacote, pois, esses arquivos são o programa fonte propriamente dito de forma compactada. A primeira ativida consiste na descompactação do pacote.: $ tar –xvzf Após descompactado, entre no diretório e execute o script de configuração, compilação e instalação. $./configure $ make $ make install Pacotes

139 Pkgadd [nome pacote] Instalador de pacotes padrão do solaris Pkgadd solaris-ed-kb22123.pkg Pacotes

140 Apt-get [opções] [pacote] Utilitário para manipulação de pacotes. OpçãoDescrição -dFaz download de pacotes, mas não os instala -fRepara um sistema com dependencias quebradas -hExibe uma mensagem de ajuda -vExibe a versão do comando Pacotes

141 Apt-get [opções] [pacote]CONTINUAÇÃO Utilitário para manipulação de pacotes. ComandoDescrição UpdateAtualiza banco de dados do apt-get com arquivos Install Instala um novo pacote Source Faz o download do pacote rpm fonte para o diretório Remove Remove um pacote Upgrade Procura por pacotes desatualizados e atualiza Dist-upgradeSemelhante à upgrade, instala novos se necessário CleanRemove arquivos de /var/cache/apt/archives Pacotes

142 O Editor vi O vi é um editor de textos que possui dois modos de interação com o usuário: o modo de comando e o modo edição. Quando iniciado, o vi trabalha em modo comando. O modo edição pode ser acessado teclando-se um dos comandos de tecla como (inserção) e o modo comando teclando-se e o comando pertinente. Exemplo.: $ vi $ vi arquivo.txt Comandos de edição

143 Vi CONTINUAÇÃO Editor de textos ComandoAção + Sai do vi sem salvar + Sai do vi forçadamente sem salvar + Sai do vi salvando o arquivo corrente + Salva o arquivo corrente + Salva o arquivo corrente com o nome arq + Abre o arquivo arq + Insere o arquivo arq no ponto. Comandos de edição

144 Variáveis de ambiente Variáveis de ambiente locais Disponíveis somente para o shell corrente, não sendo acessadas pelos subprocessos. Variáveis de ambiente globais Disponíveis tanto para o shell corrente como para os subprocessos que venham fazer uso delas. Variáveis

145 Export [=valor] Torna global o valor de uma variável de ambiente. Exemplo.: $ EDITOR=/usr/bin/pico $ export EDITOR Ou $ export EDITOR=/usr/bin/pico Variáveis, atribuição

146 set Verifica lista de variáveis e valores das variáveis carregadas. Exemplo.: $ set Variáveis, atribuição

147 Unset Exclui o valor de uma variável de ambiente. Exemplo.: $ unset EDITOR Variáveis, atribuição

148 printenv Exibe a lista de variáveis de ambiente. As variáveis de ambiente são tradicionalmente escritas em letras maiúsculas, embora isto não seja obrigatório Exemplo.: $ printenv Variáveis, atribuição

149 PATH Indica os lugares onde o bash deverá procurar programas executáveis. Quando for necessário executar programas que estejam fora do PATH deve-se incluir na frente do nome do executável “. / ” Exemplo.: $ echo $PATH Variáveis, Valores

150 SHELL Exibe o shell em uso corrente. Para alterar o shell corrente, use o comando chsh. Exemplo.: $ echo $SHELL Variáveis, Valores

151 Chsh [opções] [usuário] Alterar o shell default que é iniciado no login. OpçãoDescrição -lLista os shells disponíveis -s Especifica o nome do shell executável a ser utilizado (o shell pode ser qualquer programa listado no arquivo /etc/shells, como /bin/bash e /bin/csh Exemplo.: $ chsh -l Shell

152 DISPLAY Indica qual é o terminal gráfico corrente. Só funciona quando executado sob o X window. Exemplo.: $ echo $DISPLAY Variáveis, Valores

153 PS1 e PS2 São os prompts (níveis 1 e 2) que serão mostrados pelo bash, para lhe requisitar uma linha de comando. CódigoDescrição \!Exibe o número de histórico do comando corrente. \#O número desse comando. \$Use $ como prompt para todos os usuários, exceto o usuário root, que tem # como seu prompt. \wDiretório de trabalho corrente. \[Inicia a sequencia de caracteres não passíveis de impressão Variáveis, Valores

154 PS1 e PS2CONTINUAÇÃO São os prompts (níveis 1 e 2) que serão mostrados pelo bash, para lhe requisitar uma linha de comando. CódigoDescrição \uExibe o nome do usuário Exemplos.: $ PS1=“Data: \d Tempo.: \t->” Variáveis, Valores

155 History [opções] Exibe o histórico de comandos. OpçãoDescrição -rUtiliza o arquivo.bash_history como histórico, em vez da lista de histórico de trabalho. -wReescreve o arquivo.bash_history. Exemplo.: $ history Histórico de comandos

156 Alias [sinonimo=“comando”] Exibe e define sinônimos de comandos Unix e Linux. Os sinônimos permitem criar novos “comandos” que correspondem a qualquer linha de comando válida do shell Exemplo.: $ alias zera=“clear” Comandos (sinônimos)

157 unalias [sinonimo] Desfaz um sinônimo existente. Exemplo.: $ unalias zera Comandos (sinônimos)

158 Shell Scripts Podemos escrever programas de shell criando arquivos script contendo séries de comandos de shell. A primeira linha do arquivo script deve começar com #!, que indica ao kernel que o arquivo script é executável. Para o shell bash, a primeira linha será da seguinte forma.: #!/bin/bash Outra importante atividade é determinar as permissões para o script.: # chmod u+x Shell script

159 Editor de fluxo SED (Stream Editor) Efetua operações de procura, substituição, inserção e apagamento em arquivos de texto, sendo muito utilizado em programação shell. [, [ ]] [argumento] Exemplos.: # sed ‘s/bash/csh/g’ /etc/passwd Substitui a palavra bash por csh no arquivo /etc/passwd # sed ‘3,5d’ arquivo1 Apaga as linhas 3, 4 e 5 do arquivo 1 Shell script

160 Linguagem awk É uma linguagem interpretada e poderosa. Em programação shell é muito utilizada para separar campos. É mais flexível que o comando cut. Exemplo.: # cat /etc/passwd | awk –F : ‘{print $1}’ Imprime a primeira coluna do arquivo /etc/passwd # echo | awk –F. ‘{print $4 “.” $3 “.” $2 “.” $1}’ Imprime o endereço IP ao contrário Shell script

161 Let Realiza aritmética com números inteiros. Exemplos.: $ echo –n “Digite dois números.:” Read A B Let C=0 Let C=A+B Echo $(( C )) Shell script

162 if Execução de blocos de comandos condicionais. If then [[ comandos ]] Elif then [[ comandos ]] Else [[ comandos que serão executados se nenhum acima for verdadeiro ]] fi Shell script – Estruturas condicionais

163 if Exemplo.: #!/bin/bash Echo –n “digite sua idade:” Read i If [ $i < 20 ] then echo voce é novo (a) Else echo voce é velho (a) fi Shell script – Estruturas condicionais

164 case Testa o valor com os parâmetros descritos em cada condição, caso nenhum seja atendido executará o contido no parâmetro *. Case in param1) comando;; param2) comando;; *) comando;; esac Shell script – Estruturas condicionais

165 SelectCONTINUAÇÂO Criação de menus #!/bin/bash Select NOME in frank.txt teste.txt outro.txt Do vi $NOME Done Exit Criação de menus

166 for Executa um loop enquanto condição não atingir o topo. For in Do done Shell script – Loop

167 While Executa loop enquanto condição verdadeira. #!/bin/bash While [ $# -gt 0 ] Do echo $1 shift Done Shell script – Loop Condicional

168 Fdisk [opções] [dispositivo] Cria partições no disco rígido. OpçãoDescrição -lExibe as partições e sai. -sExibe o tamanho da partição, não para MS-DOS. Se utilizado o menu do fdisk, devemos especificar o dispositivo.: Exemplo.: fdisk /dev/sda1 Partições

169 Mkfs [opções] Cria um sistema de arquivos em um dispositivo de armazenamento (formata logicamente o dispositivo) OpçõesDescrição -vExibe as operações que o comando mkfs executa. -cVerifica a existência de blocos ruins -t Determina o tipo, pode ser ext2, ext3, reiserfs ou msdos Exemplo.: mkfs –t ext2 /dev/hdb1 Editando scripts de inicialização

170 Formatando um disquete – fdformat [opções] Efetua formatação de baixo nível em um disco flexivel sem criar um sistema de arquivos. OpçõesDescrição -nNão faz verificação após formatação tipoH1200 = Drive 5 ¼ 1.2Mb H1440 = Drive 3 ½ 1.44 Mb Exemplo.: fdformat /dev/fd0H1440 Formatando um disquete

171 Verificando espaço em disco – df [opções] [dispositivo] Verificar espaço em disco. OpçõesDescrição -iMostra os valores em inodes -kMostra os valores em kilobytes Exemplos.: df /dev/sda1 Verificando espaço em disco

172 Du [opções] [arquivo ou diretório] Informa o espaço ocupado pelos arquivos ou diretórios. OpçõesDescrição -aExibe os dados dos diretórios e arquivos -bExibe os dados em bytes -mExibe os dados em megabytes -sExibe apenas o espaço total ocupado Exemplo.: du /usr Verificando espaço ocupado

173 Fsck [opções] Verifica e repara um sistema de arquivos de um dispositivo de armazenamento. OpçõesDescrição -AVerifica todos os sistemas de arquivos da fstab -CMostra barra de progresso (so para ext2/ext3) -NMostra apenas o que seria feito -aRepara automaticamente todos os sistemas de arquivo -rrepara interativamente o sistema de arquivos -t Especifica o tipo de sistema Recuperação de FileSystem

174 Mkbootdisk [opções] (REDHAT) Cria um disquete de inicialização com o LILO. Obrigatoriamente deve- se estar utilizando o LILO para tal. Mkbootdisk -- verbose –device /dev/fd Criando discos de boot

175 Reconhecimento de hardware No linux e solaris, todo reconhecimento de hardware é feito por softwares especialistas que fazem a interação com sistema operacional para obter as informações necessárias. Identificação de hardware

176 Pnpdump [opções] > [arquivo] Procura dispositivos plug & play ISA no computador. OpçãoDescrição -dExibe o conteúdo de todos os registradores das placas -cConfigura as placas plug & play ISA removendo conflito Exemplo.: pnpdump –c > /etc/isapnp.conf Identificação de hardware

177 isapnp Configura placas plug & play a partir do arquivo gerado pelo comando pnpdump. É chamado pelo arquivo /etc/rc.d/rc.sysinit quando o linux é inicializado. Exemplo.: isapnp /etc/isapnp.conf Identificação de hardware

178 Lspci [opções] Exibe informações sobre os dispositivos PCI conectados ao computador. OpçõesDescrição -vExibe informações detalhadas sobre os dispositivos PCI conectados ao computador. Exemplo.: lspci -v Identificação de hardware

179 Frank S. F. Bastos .: MSN.: Skype.: frankbastos Contato


Carregar ppt "Gerenciamento, suporte e comandos mais utilizados em ambientes Linux e Solaris Frank S. Fernandes Bastos Instrutor.: Frank S. Fernandes Bastos"

Apresentações semelhantes


Anúncios Google