LPI Bibliotecas

  • Upload
    h2ck3r

  • View
    229

  • Download
    0

Embed Size (px)

Citation preview

  • 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 umexecutá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 precisamser carregados na memória RAM quando o programa precisaser executado. (Lib.so)

  • 8/15/2019 LPI Bibliotecas

    5/24

    Bibliotecas compartilhadasOs 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 paraespecificar 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/lslinux-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 umprograma 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) “CMOSclock”, “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 outrorelógio chamado de “System Clock”, “Kernel Clock”, “SoftwareClock” ou relógio do sistema é um software que conta o tempo

    baseado nas interrupções do processador. Ele precisa serinicializado 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 algunscomandos 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 orelógio do sistema. Este comando irá assumir que ahora no hardware é a hora local, a menos que a opção --utc seja utilizada.

    • Para configurar a hora da máquina com a hora dosistema, o comando /sbin/hwclock -systohc deverá serutilizado

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

  • 8/15/2019 LPI Bibliotecas

    11/24

    Hora do sistemaSintaxe:

    # date [MMDDHHmmAAAA]# date 062816302010

    Este configura a hora e a data para 28 de junho de 2010as 16:30. Para uso deste comando de uma forma maisamigável utiliza-se o parâmetro –s que permiteespecificar 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 localdo sistema é determinada por um link simbólico dealgum 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

    CalSintaxe:

    # 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 defineum jeito para um grupo de computadoresconversar entre si e acertar seus relógios,

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

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

    exatidão de alguns milésimos de segundo

  • 8/15/2019 LPI Bibliotecas

    15/24

    NTPArquivos 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

    NTPInstalaçã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 algumcomando

  • 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 asalteraçõ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 arquivoscp, 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 LinksPipeline ( | ), >,

  • 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 CRONTABcrontab –l, contrab -e

    • Particionamento e sistemas de arquivosfdisk, 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

    [email protected]