Baixe o app para aproveitar ainda mais
Prévia do material em texto
CURSO DE LINUX Professor: Alyson Balbino E-mail: alysonbalbino@gmail.com IDENTIFICAR E EDITAR CONFIGURAÇÕES DE HARDWARE É fundamental para um sistema operacional a comunicação com o hardware e para nos auxiliar na identificação de tais recursos o linux nos disponibiliza algumas ferramentas que destacaremos a seguir: ● lspci – exibe todos os componentes conectados ao barramento PCI, tais como: controladores de disco, placas externas e outros; Exemplo: Experimente digitar no terminal o comando lspci sem parâmetros e veja o que acontece; Como podemos perceber o comando do exemplo acima apenas mostra os principais hardwares conectados ao barramento PCI sem maiores detalhes mas, podemos aumentar o nível de detalhamento a listagem com o parâmetro -v (verbose) ou a combinação de parâmetros -s endereço -v para um dispositivo específico. Outras opções -k mostra os drivers do kernel de cada dispositivo, -n exibe os IDs dos dispositivos e -nn o mesmo que lspci sem parâmetros. IDENTIFICAR E EDITAR CONFIGURAÇÕES DE HARDWARE ● lsusb – mostra os dispositivos conectados a máquina; Exemplo: agora iremos testar o comando lsusb sem parâmetros. Para aumentarmos o detalhamento utilizaremos o parâmetro -v (verbose) ou a combinação de parâmetros -s endereço -v para um dispositivo específico. A opção -t exibe o comando lsusb em forma de árvore. IDENTIFICAR E EDITAR CONFIGURAÇÕES DE HARDWARE ● lshw – exibe todos os componentes conectados ao barramento PCI, tais como: controladores de disco, placas externas e outros; Digite lshw no terminal sem parâmetros e vamos observar o resultado. lshw -html gera um relatório em formato html detalhado com ID, descrição, versão, serial e outros campos; Lshw -short exibe um relatório mais curto com os campos: caminho do hardware, dispositivo, classe e descrição; A opção -sanitize remove informações confidenciais como números de série. No lugar do número de série aparecerá a palavra [REMOVED]; Outras opções são -enable ou -disable para habilitar ou desabilitar testes como: dmi, memory, cpuinfo e etc. IDENTIFICAR E EDITAR CONFIGURAÇÕES DE HARDWARE Analisar o conteúdo do diretório /proc, seus subdiretórios e arquivos com informações sobre os processos ativos e recursos de hardware. ● /version – exibe a versão do sistema operacional; ● /cpuinfo – mostra informações sobre o processador; ● /ioports – mostra as porta de entrada e saída; ● /meminfo – exibe informações da memória; ● /partitions – exibe a lista das partições do sistema Existem outras informações e recursos dentro do diretório proc para maiores informações utilize o comando man 5 proc. ADMINISTRAÇÃO DE ARQUIVOS E DIRETÓRIOS Filesystem Hierarchy Standard (FHS) – é um projeto iniciado em 1993 que preconiza o fornecimento de um layout para o sistemas de arquivos nas distribuições linux. Atualmente o FHS está na versão 2.3(lançada em 2004) e existe um projeto de atualização para a versão 3.0 que esta em desenvolvimento na Linux Foundation em um grupo de trabalho chamado de Linux Standard Base (LSB), responsável pela tarefa de remodelar a padronização. Para maiores informações acesse: http://www.pathname.com/fhs/pub/fhs-2.3.pdf http://www.linuxbase.org/betaspecs/fhs/fhs.html ADMINISTRAÇÃO DE ARQUIVOS E DIRETÓRIOS ADMINISTRAÇÃO DE ARQUIVOS E DIRETÓRIOS ATENÇÃO: No existem no FHS uma lista de diretórios que não devem ser instalados separadamente do diretório principal ou como é conhecido diretório raiz (“/”). são eles: ● /bin e /sbin – diretórios ondem se encontram os programas e scripts de execução para inicializar o sistema. Contém também um rol de comandos especiais; ● /etc – diretório com os arquivos de configuração do sistema; ● /proc e /sys – diretórios especiais com informações de sistema, processos e do hardware; ● /dev – diretório que armazena os dispositivos (discos, porta de comunicação e etc) e outros arquivos; ● /lib – bibliotecas de arquivos compartilhados utilizados pelo /bin, /sbin e módulos do kernel. ADMINISTRAÇÃO DE ARQUIVOS E DIRETÓRIOS Links são arquivos especiais que têm a finalidade de atalho para outros arquivos facilitando assim a maneira como são acessados. Temos dois tipos de links: ● Link Simbólico – possui em seu conteúdo o nome de caminho que aponta para o arquivo real; Sintaxe: ln -s alvo nome_do_atalho ● Link Físico – faz referência direta ao arquivo em um dispositivo. Sintaxe: ln alvo nome_do_atalho OBS.: Enquanto o hard link existir o conteúdo do arquivo continuará existindo; Parâmetros mais utilizados: -f – força a criação do link; -s – opção para criar links simbólicos; -v – realiza a operação em modo detalhado. ADMINISTRAÇÃO DE ARQUIVOS E DIRETÓRIOS ● ls – comando para listar arquivos e diretórios; Sintaxe: ls Parâmetros mais utilizados: -a – lista todos os arquivos, inclusive arquivos escondidos; -d – lista somente diretórios; -F – lista arquivos com caractere de identificação do tipo: executáveis (*), soquetes(/), links simbólicos(@); -l – lista arquivos no formato longo; -R – lista diretórios e subdiretórios; ADMINISTRAÇÃO DE ARQUIVOS E DIRETÓRIOS ● df – este comando serve para exibir informações sobre o tamanho da partição ou disco, o espaço utilizado e o espaço livre em bytes. Sintaxe: df Parâmetros principais: -a – inclui sistemas de arquivos com 0 blocos ocupados; -h – formato humano em GBytes, KBytes e MBytes; -T – lista o tipo de sistema de arquivos de cada partição; -l – lista somente sistema local de arquivos. ADMINISTRAÇÃO DE ARQUIVOS E DIRETÓRIOS ● du – exibe informações sobre o espaço utilizado pelos diretórios; Sintaxe: du Parâmetros mais utilizados: -a – mostra também o espaço ocupado pelos arquivos; -c – apresenta o total do espaço ocupado; -h – formato humano em GBytes, KBytes e MBytes; -s – exibe apenas o total ocupado (sumário). ADMINISTRAÇÃO DE ARQUIVOS E DIRETÓRIOS ● mkdir – cria diretórios. Sintaxe: mkdir nome_do_diretório Parâmetros principais: -p – Cria diretório pai se o mesmo não existir; ● rmdir – remove diretórios vazios; Sintaxe: rmdir nome_do_diretório Parâmetros principais: -p – remove diretórios intermediários se estiverem vazios; --verbose – exibe o nome de cada diretório removido. ADMINISTRAÇÃO DE ARQUIVOS E DIRETÓRIOS ● touch – atualiza a última data de acesso ao arquivo, se o mesmo não existir cria um arquivo vazio; Sintaxe: touch nome_do_arquivo Parâmetros mais utilizados: -c – não cria o arquivo se o mesmo não existir; -m – atualiza somente a hora da modificação; -a – atualiza somente a data de acesso. ● mv – mover ou renomear arquivos. Sintaxe: mv origem/arquivo destino Parâmetros principais: -f – força a movimentação do arquivo; ADMINISTRAÇÃO DE ARQUIVOS E DIRETÓRIOS ● rm – apaga arquivos e diretórios não vazios; Sintaxe: rm nome_do_arquivo Parâmetros mais utilizados: -f – força a remoção de arquivos protegidos contra escrita sem pedir confirmação; -i – pergunta ao usuário antes de remover os arquivos; -d – remove diretórios mesmo que não estejam vazios; -R – ação recursiva dentro de diretórios (apaga pastas e subpastas); ADMINISTRAÇÃO DE ARQUIVOS E DIRETÓRIOS ● cp – copia arquivos e diretórios; Sintaxe: cp origem/arquivo /destino Opções: -p – copia os atributos do arquivo original; -i – modo interativo. Pergunta antes de sobrescrever um arquivo; -r – copia recursiva; ADMINISTRAÇÃO DE ARQUIVOS E DIRETÓRIOS ● cd – acessa diretórios de acordo com as permissões do usuário; Sintaxe: cd /diretório Principais parâmetros: ~ – retorna ao diretório home do usuário; / – retorna ao diretório raiz; - – retornaao diretória anteriormente acessado; .. – sobe um nível de diretório; MANIPULAÇÃO E ATUALIZAÇÃO DE ARQUIVOS ● cat – exibe o conteúdo de um arquivo do início ao fim; Sintaxe: cat nome_do_arquivo Parâmetros principais: -n – numera todas as linhas; -b – numera somente as linhas não vazias; ● head – exibe o início de um arquivo, por padrão as 10 primeiras linhas; Sintaxe: head nome_do_arquivo Parâmetros principais: -nX – exibe as primeiras X linhas do arquivo; MANIPULAÇÃO E ATUALIZAÇÃO DE ARQUIVOS ● tail – esse comando é semelhante ao head mas em vez de ler o início ele verifica as últimas linhas do arquivo. É uma ferramenta bastante útil principalmente para análise de logs do sistema. Sintaxe: tail /var/log/syslog Vamos testar alguns parâmetros desse comando: -nX – exibe a quantidade X(número inteiro) de linhas; -f – exibe o arquivo continuamente. É um excelente recurso para monitorar logs em tempo real. MANIPULAÇÃO E ATUALIZAÇÃO DE ARQUIVOS ● cut – faz um recorte em seções específicas de um texto de um arquivo ou processamento de saída de um comando; Sintaxe: cut –d(delimitador) –f(campoN°), nome_do_arquivo Principais parâmetros: -d – especifica o delimitador. O delimitador pode ser (: ; . e etc); -f – informa a posição do campo; Exemplo: Iremos fazer um recorte do campo 1 do arquivo passwd localizado em /etc com a exibição do resultado na saída padrão. cut -d: -f1 /etc/passwd MANIPULAÇÃO E ATUALIZAÇÃO DE ARQUIVOS ● split – ferramenta utilizada para dividir o arquivo em parte de tamanho igual para facilitar a visualização e/ou sua manipulação. Sintaxe: split -opção nome_do_arquivo nome_parte- Os principais parâmetros utilizados são: -lX – indica o número máximo de X linhas que cada arquivo pode comportar; -b – faz a divisão do arquivo com base em seu tamanho em Kbytes PAGINAÇÃO E REDIRECIONAMENTO Comandos de paginação são utilizados para visualizar conteúdos extensos de arquivos ou resultados de outros comandos na saída padrão forçando uma pausa na exibição do resultado da informação ao preencher toda a área do monitor. Para esse recurso utilizaremos dois comandos a seguir: ● more – exibe a paginação em sentido único, do início ao fim. O comando também pode receber a canalização de processos para que o mesmo possa paginar a saída de comandos, conforme os exemplos abaixo: more /etc/mime.types – paginação de conteúdo de arquivos ls /etc | more – canalização de processo de comando com paginação ● less – funciona de forma semelhante ao more porém tem sua navegação em duplo sentido possibilitando ao usuário rolar o resultado da página para cima ou para baixo conforme as setas de navegação. Para fixar o conhecimento vamos utilizar o mesmo exemplo acima substituindo o comando more pelo less; OBS.: para sair do comando de paginação basta digita a letra q no terminal ou a combinação ctrl+c. PAGINAÇÃO E REDIRECIONAMENTO Todos os sistemas operacionais possuem subsistemas de entrada e saída para proporcionar a interação homem- máquina. Como exemplos de entrada de dados temos o teclado e saída de dados o monitor. Esse fluxo de entrada e saída pode ser redirecionado para outros dispositivos possibilitando maior flexibilidade entre sistemas computacionais. A seguir serão apresentados os principais redirecionamentos do sistema. > – redirecionamento de saída; >> – redirecionamento com concatenação; 2> – redirecionamento de mensagem de erro; << fim – flag de entrada de dados; PAGINAÇÃO E REDIRECIONAMENTO A seguir veremos alguns exemplos de utilização de redirecionamentos para fixar o conhecimento. Exemplo de redirecionamento de saída; ls > lista_de_arquivos.txt Exemplo de redirecionamento com concatenação; who >> lista_de_arquivos.txt Exemplo de redirecionamento de mensagem de erro; ls programas 2> saida_erro.txt Exemplo de flag de entrada de dados; cat << fim > texto.txt Inclusão de texto marcado por flag de terminação. fim CANALIZAÇÃO A canalização de comandos é um recurso muito útil para a comunicação entre processos. É representado pelo caractere “ | ”. Ela basicamente pega o resultado do processamento de um comando e o envia para a entrada de outro comando e assim gerar o resultado. Exemplo: ls /etc | grep shadow Exemplo 2: ls /etc | grep shadow > arq_senhas.txt TEE O tee é um comando que mistura de canalização com redirecionamento. Ele consegue exibir o resulta em tela ao mesmo tempo que grava as informações em arquivo específico. Sintaxe: comando | tee arquivo.txt Agora vamos apresentar um exemplo de uso do comando tee na prática: Exemplo 2: ls /etc | tee arquivo.txt LOCALIZAÇÃO E SUBSTITUIÇÃO Localizar e substituir arquivos e textos dentro da estrutura de diretórios do sistema operacional é uma atividade essencial para o administrador de sistemas. Para auxiliar nessa tarefa o uso ferramentas específicas são fundamentais para executar tais tarefas. A seguir veremos um breve rol de ferramentas utilizadas para essa finalidade. LOCALIZAÇÃO E SUBSTITUIÇÃO ● grep – procura em um ou mais arquivos por linhas que contêm um padrão de busca. Sintaxe: grep opções padrão arquivos Principais parâmetros: -i – trata maiúsculas e minúsculas igualmente; -v – lista linhas que não correspondem com a expressão usada; -n – informa a posição da linha encontrada no arquivo; Alguns metacaracteres utilizados pelo grep: * – indica um caractere qualquer ou vários; ^ – indica início de linha; $ – indica fim de linha; LOCALIZAÇÃO E SUBSTITUIÇÃO Sintaxe: grep opções padrão arquivos Exemplos: Localizar o nome do usuário root no arquivo passwd em /etc. grep 'root' /etc/passwd Listar linhas comentadas no arquivo mime.types em /etc. grep '^#' /etc/mime.types Listar linhas que contenham no final do arquivo mime.types a palavra html. grep 'html$' /etc/mime.types Localizar os arquivos que iniciem com a palavra root em /etc. grep -Ri 'root' /etc/ LOCALIZAÇÃO E SUBSTITUIÇÃO ● tr – comando utilizado para substituir/excluir o conteúdo de um texto via entrada padrão; Sintaxe: tr ‘a-z’ ‘A-Z’ < /etc/passwd Principais parâmetros: -d – exclui caracteres sem traduzi-los; -s – substitui um sequencia de caracteres duplicados; Principais classes de caracteres: \n – traduz o texto inserindo novas linhas; \t – traduz o texto aplicando tabulação; LOCALIZAÇÃO E SUBSTITUIÇÃO Exemplos: Modificar a saída do arquivo /etc/passwd com todos os caracteres maiúsculos. tr [:lower:] [:upper:] < /etc/passwd Remover os comentários de arquivo /etc/mime.types tr -d '#' /etc/mime.types Substituir os ':' das linhas de /etc/passwd por tabulações. tr ':' '\t' < /etc/passwd > traducao Substituir sequencias duplicadas das linhas de /etc/passwd. tr -s ',' ' ' < traducao LOCALIZAÇÃO E SUBSTITUIÇÃO ● sed – editor de texto para efetuar substituições de strings na saída; Sintaxe: sed texto + opção arquivo Principais parâmetros: s – substituição de ocorrências da expressão; p – impressão de ocorrências; d – exclusão da expressão indicada; q – impressão até a expressão indicada; g – substitui todas as ocorrências combinada com s; LOCALIZAÇÃO E SUBSTITUIÇÃO Exemplos: Substituir a palavra root por administrador. sed s/root/administrador /etc/passwd Substituir todas as ocorrências de root por administrador sed s/root/administrador/g /etc/passwd Exibir até encontrar a string aluno. sed /syslog/q /etc/passwd LOCALIZAÇÃO E SUBSTITUIÇÃO ● find – realiza buscas pelo sistema de diretórios até encontrar a expressão procurada; Sintaxe: find diretório expressãoParâmetros principais: -name expressão – procurar por um nome equivalente a expressão; -atime(+n;-n ou n) – procura arquivos acessados a +, - ou n dias; -ctime(+n;-n ou n) – busca arquivos modificados a +, - ou n dias; -maxdepth n – realiza uma busca no sistema acessando N subdiretórios; -exec [comando] { }\; – executa o comando para cada arquivo encontrado; LOCALIZAÇÃO E SUBSTITUIÇÃO Exemplos: Localizar arquivos modificados a pelo menos 1 dia find /var/log/ -ctime 1 Localizar arquivos acessados nos últimos 5 dias find /var/log/ -atime 5 Realizar uma busca por arquivos *.conf com até 3 diretórios de profundidade find /etc -maxdepth 3 -name "*.conf" Encontrar o arquivo e fazer uma cópia dele para o /root find /tmp/ -name arquivo1 -exec cp {} /home/alyson/ \; Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27 Slide 28 Slide 29 Slide 30 Slide 31 Slide 32 Slide 33 Slide 34 Slide 35
Compartilhar