LPI Bibliotecas

  • View
    216

  • Download
    0

Embed Size (px)

Text of LPI Bibliotecas

  • 8/15/2019 LPI Bibliotecas

    1/24

    LPI

    Bibliotecas, localização e tempo

    SENAC TI

    Fernando Costa

  • 8/15/2019 LPI Bibliotecas

    2/24

    Agenda

    • Bibliotecas – Páginas 21 e 67 AlkaLinux 101

    • Tempo – data e hora

     – Páginas 44-46 AlkaLinux 102

  • 8/15/2019 LPI Bibliotecas

    3/24

    Agenda

    • Bibliotecas – Páginas 21 e 67 AlkaLinux 101

  • 8/15/2019 LPI Bibliotecas

    4/24

    Bibliotecas compartilhadas • Uma biblioteca é um conjunto de funções que os

    programas podem usar para implementar suasfuncionalidades.

    • Quando o executamos (link) um programa, essas

    bibliotecas podem ser estática ou dinâmica ligada a um executável.  – estática - significa que o programa final conterá a função da

    biblioteca dentro do seu arquivo. (Lib.a)

     – dinâmica - significa que as bibliotecas necessárias que precisam ser carregados na memória RAM quando o programa precisa ser executado. (Lib.so)

  • 8/15/2019 LPI Bibliotecas

    5/24

    Bibliotecas compartilhadas Os diretórios padrão para todas as bibliotecas padrão são:

    • /lib: Usado principalmente por programas /bin. • /usr/lib: Usado principalmente por programas do /usr/bin.

    • O arquivo /etc/ld.so.conf é usado pelo sistema para especificar locais de biblioteca.

    • Para criar um arquivo cache de todas as bibliotecas

    disponíveis usadas pelos programas, use ldconfig.  – O arquivo /etc/ld.so.cache será gerado.

  • 8/15/2019 LPI Bibliotecas

    6/24

    Dependências de bibliotecas • Para verificar quais são necessárias para um programa ou uma outra biblioteca

    utilize o comando:

    # ldd [-vdru] programa|library

    Exemplo:

    debian:~# ldd /bin/ls linux-gate.so.1 => (0xb77a4000)

    librt.so.1 => /lib/i686/cmov/librt.so.1 (0xb778d000) libselinux.so.1 => /lib/libselinux.so.1 (0xb7774000) libacl.so.1 => /lib/libacl.so.1 (0xb776c000) libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7611000) libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb75f8000)

     /lib/ld-linux.so.2 (0xb77a5000)libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb75f4000) libattr.so.1 => /lib/libattr.so.1 (0xb75ef000)

    debian:~#

  • 8/15/2019 LPI Bibliotecas

    7/24

    Carregar bibliotecas dinâmicas

    • O programa que carrega em tempo de

    execução as bibliotecas dinâmicas (ld.so) encontra a biblioteca necessária de um programa e carrega na RAM. A ordem de

    busca de ld.so é:

    1. LD_LIBRARY_PATH (variável de ambiente)

    2. O arquivo de cache /etc/ld.so.cache

    3. Os diretórios padrão /lib e /usr/lib

  • 8/15/2019 LPI Bibliotecas

    8/24

    Agenda

    Tempo – data e hora – Páginas 44-46 AlkaLinux 102

  • 8/15/2019 LPI Bibliotecas

    9/24

    Hora do sistema • O Linux mantém dois relógios: um deles é alimentado por

    bateria, conhecido como “Real Time Clock”, (RTC) “CMOS clock”, “Hardware clock”, ou popularmente conhecido como

    relógio da máquina. Ele conta o tempo quando o sistema é desligado e não é utilizado quando o sistema está ativo. O outro relógio chamado de “System Clock”, “Kernel Clock”, “Software Clock” ou relógio do sistema é um software que conta o tempo

    baseado nas interrupções do processador. Ele precisa ser inicializado pelo RTC durante a carga do sistema.

    • Geralmente poderá haver diferenças entre o tempo marcado

    entre estes dois relógio e a hora e data reais. Veremos alguns comandos para ajustar o relógio do sistema.date

  • 8/15/2019 LPI Bibliotecas

    10/24

    Iniciando o relógio do sistema • Durante a carga do sistema, o comando /sbin/hwclock

    copia a hora corrente no relógio da máquina para o relógio do sistema. Este comando irá assumir que a hora no hardware é a hora local, a menos que a opção -- utc seja utilizada.

    • Para configurar a hora da máquina com a hora do sistema, o comando /sbin/hwclock -systohc deverá ser utilizado

    • O comando “date” também pode ser utilizado para alterar a data e hora do sistema

  • 8/15/2019 LPI Bibliotecas

    11/24

    Hora do sistema Sintaxe:

    # date [MMDDHHmmAAAA] # date 062816302010

    Este configura a hora e a data para 28 de junho de 2010 as 16:30. Para uso deste comando de uma forma mais amigável utiliza-se o parâmetro –s que permite especificar a data e a hora de forma real.

    Exemplo:

    # date –s “09/28/2010 20:30”

  • 8/15/2019 LPI Bibliotecas

    12/24

    Zona e fuso horário • As informações de fuso horário são requeridas

    geralmente durante a instalação do Linux. Se por

    alguma razão for necessário alterar a zona do sistema, algumas ações são necessárias:

    • O diretório /usr/share/zoneinfo contém as informações

    de configuração das zonas de fuso horário. A zona local do sistema é determinada por um link simbólico de algum arquivo deste diretório para o arquivo  /etc/localtime.

    • Desta maneira, para alterar a zona do sistema é necessário alterar o link simbólico para este arquivo.

  • 8/15/2019 LPI Bibliotecas

    13/24

    Cal Sintaxe:

    # cal [parâmetro] Este comando mostra na tela um calendário

    amigável do ano corrente. Com a opção –y

    podemos visualizar o calendário completo doano.

    Exemplo: # cal –y

    # cal 2011

  • 8/15/2019 LPI Bibliotecas

    14/24

    NTP • O NTP é um protocolo para sincronização dos

    relógios dos computadores, ou seja, ele define um jeito para um grupo de computadores conversar entre si e acertar seus relógios,

    baseados em alguma fonte confiável de tempo, como os relógios atômicos do Observatório Nacional, que definem a Hora Legal Brasileira.

    • Com o NTP é fácil manter o relógio do computador sempre com a hora certa, com

    exatidão de alguns milésimos de segundo

  • 8/15/2019 LPI Bibliotecas

    15/24

    NTP Arquivos importantes para ajuste de hora e

    data utilizando o NTP são: • ntpd - servidor e cliente NTP

     – /etc/ntpd.conf • ntpupdate – cliente esporádico para

    ajustar o relógio.

  • 8/15/2019 LPI Bibliotecas

    16/24

    NTP Instalação de um cliente/servidor de tempo: # apt-get install ntpd

    Inicialização: # cd /etc/init.d # ./ntpd start

    Instalação: # apt-get install ntpdate

    Utilização de um relógio remoto # ntpdate ntp.cais.rnp.br # ntpdate ntp.br

  • 8/15/2019 LPI Bibliotecas

    17/24

    Brinde do dia • Introdução ao Editor de texto

    VIM

  • 8/15/2019 LPI Bibliotecas

    18/24

    Vim – Editor de texto • Um Editor de texto

    • Para poder escrever/alterar um texto é só apertar “insert”

    • Para executar algum comando do vim é só

    apertar “esc” digitar o comando • Comandos uteis:

     – :q - sair do vim

     – :w - Salvar as alterações do arquivo – Usar a ! (exclamação) força a execução de algum comando

  • 8/15/2019 LPI Bibliotecas

    19/24

    Opções do VIM :q – sai do arquivo; :q! - sai sem salvar 

    :w – salva; :wq ou :x – salva e sai 

    : - vai até a linha desejada  :/ - pesquisa a próxima ocorrência 

    com o  

    x – apaga um caracter  dd – recorta uma linha inteira 

    p – cola; P – cola antes do cursor 

    i – insere onde está o cursor  a – insere a frente do cursor 

    o – cria nova linha seguinte ao cursor 

    D – apaga do cursor até o final da linha 

     

  • 8/15/2019 LPI Bibliotecas

    20/24

    vim • Usando o vim:

     – Sintaxe: • vim

    • vi

    • Se o arquivo não existir, o vim criará um se as alterações no arquivo forem salvas

  • 8/15/2019 LPI Bibliotecas

    21/24

    Vamos praticar...

  • 8/15/2019 LPI Bibliotecas

    22/24

    O que já aprendemos? • Estrutura de um sistema operacional

    Kernel, shell, lsusb, lspci, lsmod, rmmod, modprobe

    • Manipular arquivos cp, mv, ls, rm, mkdir, rmdir, pwd, cat, cut, expand,fmt, head, join, nl, od,

    paste, pr, split, tac, tail, tr, wc, xargs, touch, tee, ntpdate, ntpd

    • Redirecionadores e Links Pipeline ( | ), >,

  • 8/15/2019 LPI Bibliotecas

    23/24

    O que já aprendemos? • Organização dos diretórios

     /usr, /var, /home, /tmp, /etc, /dev, /sys, /proc, /, ...

    • Agendamento de tarefas com o CRONTAB crontab –l, contrab -e

    • Particionamento e sistemas de arquivos fdisk, mkfs, fsck, mkswap, du, df, /etc/fstab, mount e umount

    • Inicialização e runlevels  /sbin/init, /etc/rc.local, inittab,/etc/init.d

  • 8/15/2019 LPI Bibliotecas

    24/24

    Fernando Costa

    www.fernandocosta.com.br fernandocosta@gmail.com