Linux Professional Institute Learning Logo.
Ir para o conteúdo principal
  • Home
    • Todos os recursos
    • LPI Materiais Didáticos
    • Colabore Conosco
    • Publishing Partners
    • Seja um Publishing Partner
    • Quem Somos
    • FAQ
    • Colaboradores
    • Contato
  • LPI.org
4.3 Lição 1
Tópico 1: A comunidade Linux e a carreira Open Source
1.1 A evolução do Linux e sistemas operacionais populares
  • 1.1 Lição 1
1.2 Principais Aplicações Open Source
  • 1.2 Lição 1
1.3 Entendendo o Software Open Source e suas Licenças
  • 1.3 Lição 1
1.4 Habilidades ICT e trabalhando no Linux
  • 1.4 Lição 1
Tópico 2: Encontrando seu caminho em um Sistema Linux
2.1 O básico sobre a linha de comando
  • 2.1 Lição 1
  • 2.1 Lição 2
2.2 Usando a linha de comando para conseguir ajuda
  • 2.2 Lição 1
2.3 Usando diretórios e listando arquivos
  • 2.3 Lição 1
  • 2.3 Lição 2
2.4 Criando, Movendo e Deletando Arquivos
  • 2.4 Lição 1
Tópico 3: O Poder da Linha de Comando
3.1 Empacotando arquivos na linha de comando
  • 3.1 Lição 1
3.2 Pesquisando e extraindo dados de arquivos
  • 3.2 Lição 1
  • 3.2 Lição 2
3.3 Transformando comandos em Scripts
  • 3.3 Lição 1
  • 3.3 Lição 2
Tópico 4: O Sistema Operacional Linux
4.1 Escolhendo um Sistema Operacional
  • 4.1 Lição 1
4.2 Entendendo o Hardware do Computador
  • 4.2 Lição 1
4.3 Onde os dados são armazenados
  • 4.3 Lição 1
  • 4.3 Lição 2
4.4 Seu Computador na Rede
  • 4.4 Lição 1
Tópico 5: Segurança e Permissões de Arquivos
5.1 Segurança Básica e Identificação de Tipos de Usuários
  • 5.1 Lição 1
5.2 Criando Usuários e Grupos
  • 5.2 Lição 1
5.3 Gerenciando permissões e donos de arquivos
  • 5.3 Lição 1
5.4 Diretórios e arquivos especiais
  • 5.4 Lição 1
How to get certified
  1. Tópico 4: O Sistema Operacional Linux
  2. 4.3 Onde os dados são armazenados
  3. 4.3 Lição 1

4.3 Lição 1

Certificação:

Linux Essentials

Versão:

1.6

Tópico:

4 O sistema operacional Linux

Objetivo:

4.3 Onde os dados são armazenados

Lição:

1 de 2

Introdução

Um sistema operacional considera que tudo são dados. Para o Linux, tudo é considerado como um arquivo: programas, arquivos regulares, diretórios, dispositivos de bloco (como os discos rígidos), dispositivos de caracteres (como os consoles), processos do kernel, sockets, partições, links etc. A estrutura de diretórios do Linux , começando com o root /, é uma coleção de arquivos que contêm dados. Essa redução de tudo a arquivos é um recurso poderoso do Linux, pois permite refinar praticamente todos os aspectos do sistema.

Nesta lição, discutiremos os diferentes locais em que dados importantes são armazenados, conforme estabelecido pelo Linux Filesystem Hierarchy Standard (FHS). Alguns desses locais são diretórios reais que armazenam dados de maneira permanente em discos, enquanto outros são pseudo-sistemas de arquivos carregados na memória que nos dão acesso aos dados do subsistema do kernel, como processos em execução, uso de memória, configuração de hardware e assim por diante. Os dados armazenados nesses diretórios virtuais são usados por uma série de comandos que nos permitem monitorar e manipular esses dados.

Programas e suas configurações

Sem a menor dúvida, os dados importantes de um sistema Linux são seus programas e os arquivos de configuração correspondentes. Os primeiros são arquivos executáveis que contêm conjuntos de instruções a serem executadas pelo processador do computador, ao passo que os últimos geralmente consistem em documentos de texto que controlam a operação de um programa. Os arquivos executáveis podem ser arquivos binários ou de texto. Os arquivos de texto executáveis são chamados de scripts. Os dados de configuração no Linux também são tradicionalmente armazenados em arquivos de texto, embora existam diversos estilos de representação de dados de configuração.

Onde os arquivos binários são armazenados

Como qualquer outro arquivo, os arquivos executáveis vivem em diretórios vinculados a /. Mais especificamente, os programas são distribuídos em uma estrutura de três camadas: a primeira camada (/) inclui os programas que podem ser necessários no modo de usuário único, a segunda camada (/usr) contém a maioria dos programas multiusuários e a terceira camada (/usr/local) é usada para armazenar o software que não é fornecido pela distribuição e foi compilado localmente.

Tipicamente, os programas estão nestes locais:

/sbin

Contém binários essenciais para a administração do sistema, como parted ou ip.

/bin

Contém binários essenciais para todos os usuários, como ls, mv ou mkdir.

/usr/sbin

Armazena binários para administração do sistema, como deluser ou groupadd.

/usr/bin

Inclui a maioria dos arquivos executáveis - como free, pstree, sudo or man — que podem ser acessados por todos os usuários.

/usr/local/sbin

Usado para armazenar programas instalados localmente para a administração do sistema e que não são gerenciados pelo gerenciador de pacotes do sistema.

/usr/local/bin

Tem a mesma finalidade de /usr/local/sbin, mas para programas comuns de usuário.

Recentemente, algumas distribuições começaram a substituir /bin e /sbin por links simbólicos para /usr/bin e /usr/sbin.

Note

O diretório /opt às vezes é usado para armazenar aplicativos opcionais de terceiros.

Além desses diretórios, os usuários comuns podem ter seus próprios programas em:

  • /home/$USER/bin

  • /home/$USER/.local/bin

Tip

Para descobrir quais diretórios estão disponíveis para executar binários, referencie a variável PATH com echo $PATH. Para saber mais sobre o PATH, reveja as lições sobre variáveis e customização do shell.

Podemos encontrar o local dos programas com o comando which:

$ which git
/usr/bin/git

Onde os arquivos de configuração são armazenados

O Diretório /etc

Nos primeiros dias do Unix, havia uma pasta para cada tipo de dados, como /bin para binários e /boot para o(s) kernel(s). No entanto, /etc (que significa literalmente et cetera) foi criado como um diretório abrangente para armazenar todos os arquivos que não pertenciam às outras categorias. A maioria deles eram arquivos de configuração. Com o passar do tempo, mais e mais arquivos de configuração foram adicionados, de modo que o /etc se tornou a pasta principal dos arquivos de configuração dos programas. Como já explicamos, um arquivo de configuração geralmente é um arquivo local de texto puro sem formatação (diferente de um arquivo binário) que controla a operação de um programa.

No /etc, encontramos diferentes padrões para os nomes dos arquivos de configuração:

  • Arquivos com extensão ad hoc ou sem extensão, como por exemplo

    group

    Banco de dados de grupo do sistema.

    hostname

    Nome do computador na rede.

    hosts

    Lista de endereços IP com sua tradução em nomes de computadores na rede.

    passwd

    Banco de dados do usuário do sistema — composto por sete campos separados por dois pontos, fornecendo informações sobre o usuário.

    profile

    Arquivo de configuração de todo o sistema para o Bash.

    shadow

    Arquivo criptografado para as senhas de usuário.

  • Arquivos de inicialização terminados em rc:

    bash.bashrc

    Arquivo .bashrc de todo o sistema para shells bash interativos.

    nanorc

    Exemplo de arquivo de inicialização para o GNU nano (um editor de texto simples que normalmente é fornecido com qualquer distribuição).

  • Arquivos terminados em .conf:

    resolv.conf

    Arquivo de configuração do resolvedor — que fornece acesso ao DNS (Internet Domain Name System).

    sysctl.conf

    Arquivo de configuração para definir variáveis de sistema para o kernel.

  • Diretórios com sufixo .d:

    Alguns programas com um arquivo de configuração exclusivo (*.conf ou outro) trazem um diretório *.d dedicado que ajuda a criar configurações modulares e mais robustas. Por exemplo, para configurar o logrotate, encontramos o diretório logrotate.conf, mas também os diretórios logrotate.d.

    Esse tratamento é útil nos casos em que aplicativos diferentes precisam de configurações para um mesmo serviço específico. Se, por exemplo, um pacote de servidor web contiver uma configuração de logrotate, essa configuração poderá ser posta em um arquivo dedicado no diretório logrotate.d. Esse arquivo pode ser atualizado pelo pacote do servidor web sem interferir na configuração restante de logrotate. Da mesma forma, os pacotes podem adicionar tarefas específicas colocando arquivos no diretório /etc/cron.d em vez de modificar /etc/crontab.

    No Debian - e derivados do Debian - essa abordagem foi aplicada à lista de fontes confiáveis lidas pela ferramenta de gerenciamento de pacotes apt: além do clássico /etc/apt/sources.list, agora encontramos o diretório /etc/apt/sources.list.d:

    $ ls /etc/apt/sources*
    /etc/apt/sources.list
    /etc/apt/sources.list.d:
Arquivos de configuração em HOME (Dotfiles)

No nível do usuário, os programas armazenam suas configurações e arquivos em arquivos ocultos no diretório inicial do usuário (também representado como ~). Lembre-se de que os arquivos ocultos começam com um ponto (.), donde o nome: dotfiles.

Alguns desses dotfiles são scripts Bash que personalizam a sessão de shell do usuário, originados assim que o usuário faz login no sistema:

.bash_history

Armazena o histórico da linha de comando.

.bash_logout

Inclui comandos a executar quando o usuário sai do shell de login.

.bashrc

Script de inicialização do Bash para shells não-login.

.profile

Script de inicialização do Bash para shells de login.

Note

Consulte a lição “As bases da linha de comando” para aprender mais sobre o Bash e seus arquivos de inicialização.

Outros arquivos de configuração específicos ao usuário são obtidos na inicialização dos programas respectivos: .gitconfig, .emacs.d, .ssh etc.

O kernel do Linux

Antes que qualquer processo possa ser executado, o kernel deve ser carregado em uma área protegida da memória. Depois disso, o processo com o PID 1 (quase sempre o systemd hoje em dia) desencadeia a cadeia de processos, ou seja, um processo inicia outro(s) e assim por diante. Uma vez que os processos estão ativos, o kernel do Linux é encarregado de alocar recursos para eles (teclado, mouse, discos, memória, interfaces de rede etc.).

Note

Antes do systemd, o primeiro processo em um sistema Linux sempre era /sbin/init, como parte do gerenciador de sistemas System V Init. Na verdade, ainda podemos encontrar o /sbin/init, mas vinculado a /lib/systemd/systemd.

Onde os Kernels estão armazenados: /boot

O kernel reside em /boot, junto com outros arquivos relacionados à inicialização. A maioria desses arquivos inclui os componentes do número da versão do kernel em seu nome (versão do kernel, revisão principal, revisão secundária e número do patch).

O diretório /boot inclui os seguintes tipos de arquivos, com nomes correspondentes à respectiva versão do kernel:

config-4.9.0-9-amd64

Definições de configuração do kernel, como opções e módulos que foram compilados junto com o kernel.

initrd.img-4.9.0-9-amd64

Imagem de disco RAM inicial que ajuda no processo de inicialização, carregando um sistema de arquivos root temporário na memória.

System-map-4.9.0-9-amd64

O arquivo` System-map` (em certos sistemas, System.map) contém localizações de endereços de memória para nomes de símbolos do kernel. Cada vez que um kernel é reconstruído, o conteúdo do arquivo muda, pois as localizações da memória podem ser diferentes. O kernel usa este arquivo para procurar localizações de endereços de memória para um símbolo do kernel determinado, ou vice-versa.

vmlinuz-4.9.0-9-amd64

O kernel propriamente dito, em um formato compactado de extração automática (vem daí o z in vmlinuz; vm significa memória virtual e começou a ser usado quando o kernel começou a ter suporte a memória virtual).

grub

Diretório de configuração do gerenciador de inicialização grub2.

Tip

Por se tratar de um recurso crítico do sistema operacional, mais de um kernel e seus arquivos associados são mantidos em /boot, caso o kernel padrão apresente algum defeito e seja preciso voltar a uma versão anterior para — pelo menos — ser possível inicializar o sistema e repará-lo.

O diretório /proc

O diretório /proc é um dos chamados sistemas de arquivos virtuais ou pseudo-sistemas de arquivos, pois seu conteúdo não é gravado no disco, mas carregado na memória. Ele é preenchido de forma dinâmica sempre que o computador é inicializado e reflete constantemente o estado atual do sistema. O /proc inclui informações sobre:

  • Processos em execução

  • Configuração do kernel

  • Hardware do sistema

Além de todos os dados referentes aos processos que veremos na próxima lição, esse diretório também armazena arquivos com informações sobre o hardware do sistema e as definições de configuração do kernel. Alguns desses arquivos são:

/proc/cpuinfo

Armazena informações sobre a CPU do sistema:

$ cat /proc/cpuinfo
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 158
model name	: Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz
stepping	: 10
cpu MHz		: 3696.000
cache size	: 12288 KB
(...)
/proc/cmdline

Armazena as strings passadas para o kernel na inicialização:

$ cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-4.9.0-9-amd64 root=UUID=5216e1e4-ae0e-441f-b8f5-8061c0034c74 ro quiet
/proc/modules

Mostra a lista de módulos carregados no kernel:

$ cat /proc/modules
nls_utf8 16384 1 - Live 0xffffffffc0644000
isofs 40960 1 - Live 0xffffffffc0635000
udf 90112 0 - Live 0xffffffffc061e000
crc_itu_t 16384 1 udf, Live 0xffffffffc04be000
fuse 98304 3 - Live 0xffffffffc0605000
vboxsf 45056 0 - Live 0xffffffffc05f9000 (O)
joydev 20480 0 - Live 0xffffffffc056e000
vboxguest 327680 5 vboxsf, Live 0xffffffffc05a8000 (O)
hid_generic 16384 0 - Live 0xffffffffc0569000
(...)

O diretório /proc/sys

Este diretório inclui as definições de configuração do kernel em arquivos classificados em categorias por subdiretório:

$ ls /proc/sys
abi  debug  dev  fs  kernel  net  user  vm

A maioria desses arquivos funciona como um interruptor e — portanto — só contém um dentre dois valores possíveis: 0 ou 1 (“ligado” ou “desligado”). Por exemplo:

/proc/sys/net/ipv4/ip_forward

O valor que habilita ou desabilita a máquina para atuar como roteador (capaz de encaminhar pacotes):

$ cat /proc/sys/net/ipv4/ip_forward
0

Porém, há algumas exceções:

/proc/sys/kernel/pid_max

O PID máximo permitido:

$ cat /proc/sys/kernel/pid_max
32768
Warning

Tenha muito cuidado ao alterar as configurações do kernel, pois o valor errado pode causar instabilidade no sistema.

Dispositivos de hardware

Lembre-se, no Linux “tudo é arquivo”. Ou seja, as informações sobre o hardware do dispositivo, bem como as próprias configurações do kernel, são todas armazenadas em arquivos especiais que residem em diretórios virtuais.

O diretório /dev

O diretório device (dispositivo) /dev contém arquivos (ou nós) de dispositivos para todos os dispositivos de hardware conectados. Esses arquivos de dispositivo são usados como interface entre os dispositivos e os processos que os utilizam. Cada arquivo de dispositivo se enquadra em uma destas duas categorias:

Dispositivos de bloco

São aqueles em que os dados são lidos e gravados em blocos que podem ser endereçados individualmente. Podemos dar como exemplo os discos rígidos (e suas partições, como /dev/sda1), as unidades flash USB, CDs, DVDs etc.

Dispositivos de caracteres

são aqueles em que os dados são lidos e gravados sequencialmente, um caractere de cada vez, como é o caso dos teclados, console de texto (/dev/console), portas seriais (como /dev/ttyS0 e outras) etc.

Ao listar os arquivos do dispositivo, use ls com a opção -l para diferenciar os dois. Podemos — por exemplo — verificar discos rígidos e partições:

# ls -l /dev/sd*
brw-rw---- 1 root disk 8, 0 may 25 17:02 /dev/sda
brw-rw---- 1 root disk 8, 1 may 25 17:02 /dev/sda1
brw-rw---- 1 root disk 8, 2 may 25 17:02 /dev/sda2
(...)

Ou para terminais seriais (TeleTYpewriter):

# ls -l /dev/tty*
crw-rw-rw- 1 root tty     5,  0 may 25 17:26 /dev/tty
crw--w---- 1 root tty     4,  0 may 25 17:26 /dev/tty0
crw--w---- 1 root tty     4,  1 may 25 17:26 /dev/tty1
(...)

Observe que o primeiro caractere é b para dispositivos de bloco e c para dispositivos de caracteres.

Tip

O asterisco (*) é um caractere de globbing que significa 0 ou mais caracteres. Por isso, ele é importante nos comandos ls -l /dev/sd* e ls -l /dev/tty* mostrados acima. Para saber mais sobre esses caracteres especiais, consulte a lição sobre globbing.

Além disso, /dev inclui alguns arquivos especiais bastante úteis para diferentes finalidades de programação:

/dev/zero

Fornece tantos caracteres nulos quantos solicitados.

/dev/null

Também chamado de balde de bits. Descarta todas as informações enviadas para ele.

/dev/urandom

Gera números pseudo-aleatórios.

O diretório /sys

O sistema de arquivos sys (sysfs) é montado em /sys. Foi introduzido com a chegada do kernel 2.6 e representou um grande progresso em /proc/sys.

Os processos têm de interagir com os dispositivos em /dev e, portanto, o kernel precisa de um diretório que contenha informações sobre esses dispositivos de hardware. Esse diretório é o /sys, e seus dados são organizados em categorias. Por exemplo, para verificar o endereço MAC da sua placa de rede (enp0s3), aplicaríamos cat no seguinte arquivo:

$ cat /sys/class/net/enp0s3/address
08:00:27:02:b2:74

Memória e tipos de memória

Basicamente, para um programa começar a rodar, ele precisa ser carregado na memória. De modo geral, quando falamos de memória, nos referimos à Memória de Acesso Randômico (RAM), que — quando comparada aos discos rígidos mecânicos — tem a vantagem de ser muito mais rápida. Pelo lado negativo, ela é volátil (ou seja, quando o computador é desligado, os dados desaparecem).

Não obstante o mencionado acima, quando se trata de memória, podemos diferenciar dois tipos principais em um sistema Linux:

Memória física

Também conhecida como RAM, vem na forma de chips compostos de circuitos integrados contendo milhões de transistores e capacitores. Estes, por sua vez, formam células de memória (o componente básico da memória do computador). Cada uma dessas células tem um código hexadecimal associado — um endereço de memória — que pode ser referenciado quando necessário.

Swap

Também conhecida como memória de troca, é a parte da memória virtual que fica no disco rígido e é usada quando não há mais RAM disponível.

Por outro lado, existe o conceito de memória virtual, que é uma abstração da quantidade total de memória utilizável, incluindo a memória (a RAM, mas também o espaço em disco) tal como é vista pelos aplicativos.

free analisa /proc/meminfo e exibe a quantidade de memória livre e usada no sistema de maneira bem clara
$ free
              total        used        free      shared  buff/cache   available
Mem:        4050960     1474960     1482260       96900     1093740     2246372
Swap:       4192252           0     4192252

Vamos entender melhor as diferentes colunas:

total

Quantidade total de memória física e de troca instalada.

used

Quantidade de memória física e de troca atualmente em uso.

free

Quantidade de memória física e de troca que não está atualmente em uso.

shared

Quantidade de memória física usada — principalmente — por tmpfs.

buff/cache

Quantidade de memória física atualmente em uso pelos buffers do kernel, a cache e as slabs.

available

Estimativa da memória física disponível para novos processos.

Por padrão, free mostra valores em kibibytes, mas permite uma variedade de opções para exibir os resultados em diferentes unidades de medida. Algumas dessas opções são:

-b

Bytes.

-m

Mebibytes.

-g

Gibibytes.

-h

Formato legível por humanos.

-h sempre é confortável de ler:

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           3,9G        1,4G        1,5G         75M        1,0G        2,2G
Swap:          4,0G          0B        4,0G
Note

Um kibibyte (KiB) é igual a 1.024 bytes, enquanto um kilobyte (KB) é igual a 1000 bytes. O mesmo se aplica, respectivamente, a mebibytes, gibibytes etc.

Exercícios Guiados

  1. Use o comando which para descobrir a localização dos seguintes programas e preencha a tabela:

    Programa comando which Caminho para o executável (saída) O usuário precisa de privilégios de root?

    swapon

    kill

    cut

    usermod

    cron

    ps

  2. Onde se encontram os arquivos a seguir?

    Arquivo /etc ~

    .bashrc

    bash.bashrc

    passwd

    .profile

    resolv.conf

    sysctl.conf

  3. Explique o significado dos elementos numéricos no arquivo do kernel vmlinuz-4.15.0-50-generic encontrado em /boot:

    Elemento numérico Significado

    4

    15

    0

    50

  4. Qual comando você usaria para listar todos os discos rígidos e partições em /dev?

Exercícios Exploratórios

  1. Os arquivos de dispositivo para discos rígidos são representados com base nos controladores que eles usam — vimos /dev/sd* para unidades que usam SCSI (Small Computer System Interface) e SATA (Serial Advanced Technology Attachment), mas

    • Como as antigas unidades IDE (Integrated Drive Electronics) eram representadas?

    • E as unidades NVMe (Non-Volatile Memory Express) modernas?

  2. Analise o arquivo /proc/meminfo. Compare o conteúdo desse arquivo com a saída do comando free e identifique qual chave de /proc/meminfo corresponde aos campos seguintes na saída de free:

    saída de free campo /proc/meminfo

    total

    free

    shared

    buff/cache

    available

Resumo

Nesta lição, você aprendeu sobre a localização dos programas e seus arquivos de configuração em um sistema Linux. O que é importante lembrar:

  • Basicamente, os programas são encontrados em uma estrutura de diretórios em três níveis: /, /usr e /usr/local. Cada um desses níveis pode conter diretórios bin e sbin.

  • Os arquivos de configuração são armazenados em /etc e ~.

  • Os dotfiles são arquivos ocultos que começam com um ponto (.).

Também falamos sobre o kernel do Linux. Conceitos importantes:

  • Para o Linux, tudo é arquivo.

  • O kernel do Linux mora em /boot, junto com outros arquivos relacionados à inicialização.

  • Para os processos começarem a rodar, o kernel precisa ser carregado primeiro em uma área protegida da memória.

  • O trabalho do kernel é alocar recursos do sistema aos processos.

  • O sistema de arquivos virtual (ou pseudo) /proc armazena dados importantes do kernel e do sistema de forma volátil.

Da mesma forma, exploramos os dispositivos de hardware e aprendemos o seguinte:

  • O diretório /dev armazena arquivos especiais (também chamados de nós) para todos os dispositivos de hardware conectados: dispositivos de bloco ou dispositivos de caracteres. Os primeiros transferem os dados em blocos; os outros, um caractere de cada vez.

  • O diretório /dev também contém outros arquivos especiais como /dev/zero, /dev/null ou /dev/urandom.

  • O diretório /sys armazena informações sobre dispositivos de hardware, organizadas em categorias.

Finalmente, falamos um pouco da memória. Nós aprendemos que:

  • Um programa roda quando é carregado na memória.

  • O que é RAM (Memória de Acesso Randômico).

  • O que é Swap ou troca.

  • Como exibir o uso da memória.

Comandos usados nesta lição:

cat

Concatena/imprime o conteúdo do arquivo.

free

Exibe a quantidade de memória livre e usada no sistema.

ls

Lista o conteúdo do diretório.

which

Mostra a localização do programa.

Respostas aos Exercícios Guiados

  1. Use o comando which para descobrir a localização dos seguintes programas e preencha a tabela:

    Programa comando which Caminho para o executável (saída) O usuário precisa de privilégios de root?

    swapon

    which swapon

    /sbin/swapon

    Sim

    kill

    which kill

    /bin/kill

    Não

    cut

    which cut

    /usr/bin/cut

    Não

    usermod

    which usermod

    /usr/sbin/usermod

    Sim

    cron

    which cron

    /usr/sbin/cron

    Sim

    ps

    which ps

    /bin/ps

    Não

  2. Onde se encontram os arquivos a seguir?

    Arquivo /etc ~

    .bashrc

    Não

    Sim

    bash.bashrc

    Sim

    Não

    passwd

    Sim

    Não

    .profile

    Não

    Sim

    resolv.conf

    Sim

    Não

    sysctl.conf

    Sim

    Não

  3. Explique o significado dos elementos numéricos no arquivo do kernel vmlinuz-4.15.0-50-generic encontrado em /boot:

    Elemento numérico Significado

    4

    Versão do kernel

    15

    Revisão importante

    0

    Revisão secundária

    50

    Número do patch

  4. Qual comando você usaria para listar todos os discos rígidos e partições em /dev?

    ls /dev/sd*

Respostas aos Exercícios Exploratórios

  1. Os arquivos de dispositivo para discos rígidos são representados com base nos controladores que eles usam — vimos /dev/sd* para unidades que usam SCSI (Small Computer System Interface) e SATA (Serial Advanced Technology Attachment), mas

    /dev/hd*

    • E as unidades NVMe (Non-Volatile Memory Express) modernas?

      /dev/nvme*

  2. Analise o arquivo /proc/meminfo. Compare o conteúdo desse arquivo com a saída do comando free e identifique qual chave de /proc/meminfo corresponde aos campos seguintes na saída de free:

    saída de free campo /proc/meminfo

    total

    MemTotal / SwapTotal

    free

    MemFree / SwapFree

    shared

    Shmem

    buff/cache

    Buffers, Cached and SReclaimable

    available

    MemAvailable

Linux Professional Insitute Inc. Todos os direitos reservados. Visite o site dos Materiais Didáticos: https://learning.lpi.org
31/5000 Este trabalho está licenciado sob a Licença Creative Commons Atribuição-Uso Não-Comercial-NãoDerivativos 4.0 Internacional.

Próxima Lição

4.3 Onde os dados são armazenados (4.3 Lição 2)

Ir para a próxima lição

Linux Professional Insitute Inc. Todos os direitos reservados. Visite o site dos Materiais Didáticos: https://learning.lpi.org
31/5000 Este trabalho está licenciado sob a Licença Creative Commons Atribuição-Uso Não-Comercial-NãoDerivativos 4.0 Internacional.

A LPI é uma organização sem fins lucrativos.

© 2023 O Linux Professional Institute (LPI) é um organismo de apoio aos profissionais de Open Source e referência mundial em certificação. Com mais de 200.000 pessoas certificadas, somos o principal organismo de certificação independente para Linux e Open Source do mundo. O LPI certificou profissionais de mais de 180 países, oferece exames em diversos idiomas e tem centenas de parcerias de formação em todo o globo.

Nossa missão é proporcionar oportunidades econômicas e criativas para todos, tornando universalmente acessível a certificação de conhecimentos e competências em matéria de Open Source.

  • LinkedIn
  • flogo-RGB-HEX-Blk-58 Facebook
  • Twitter
  • Entre em Contato
  • Política de Privacidade e Cookies

Encontrou um erro ou quer ajudar a aprimorar esta página? Escreva pra nós.

© 1999–2023 The Linux Professional Institute Inc. Todos os direitos reservados.