117
Linux Linux is not Unix

Linux?zegonc/material/Introducao_a_Computacao/... · 2016-06-30 · órios rquivos é processo. arquivos ares ixo -). arquivos: s ixo d ros arquivos. s ixo c de á em dev. 24

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Linux

Linux is not Unix

O que é Linux?

2

O que é Linux?

●E

xistem duas respostas para esta pergunta:

●A

resposta formal:

○Linux é o núcleo de um

sistema operacional;

○É

o conjunto de componentes essenciais que coordena

hardware, softw

are e interações com o usuário;

○K

ernel.

3

O que é Linux?

●E

xistem duas respostas para esta pergunta:

●A

segunda resposta envolve o senso comum

...○

Quando as pessoas falam

“Linux”, elas estão tratando de sistem

as operacionais baseados no Linux;○

Em

outras palavras, sistemas operacionais desenvolvidos

utilizando o kernel do Linux;○

Nós norm

almente cham

amos esses sistem

as operacionais de distribuições Linux, ou distros Linux.

4

O que é Linux?

●D

istribuições Linux○

Um

a distribuição Linux típica consiste em:

■K

ernel do Linux●

Inclui a maior parte dos drivers.

■Ferram

entas e bibliotecas do GN

U●

Utilitários de linha de com

ando para facilitar o uso e gerenciam

ento do sistema.

■G

erenciador de pacotes●

O m

odo pelo qual o seu sistema gerencia a

instalação, atualização e remoção de softw

are.

5

O que é Linux?

●D

istribuições Linux○

Um

a distribuição Linux típica consiste em:

■D

ocumentação

●D

ocumentos em

texto que explicam com

o o softw

are funciona e seus mais variados recursos.

■A

mbiente de trabalho

●É

um softw

are que permite a você utilizar um

mouse

e gera uma interface gráfica de usuário.

■A

plicativos de usuário●

Softw

are como editores de texto, navegadores,

reprodutores de música e etc.

6

O que é Linux?

●D

istribuições Linux○

Existem

várias distribuições Linux diferentes■

Ubuntu

■Fedora

■A

rch Linux■

OpenS

US

E■

elementary O

S■

Linux Mint

■etc...

7

O que é Linux?

●D

istribuições Linux○

Por que existem

tantas distribuições Linux?■

Porque o kernel do Linux e m

aioria do software para

Linux é livre.■

Qualquer um

pode desenvolver uma distribuição Linux

para suprir seus gostos e necessidades.■

Todo o ecossistema do Linux está sob sua escolha.

■V

ocê pode escolher como você quer que seu

computador se com

porte pois você pode instalar o softw

are que quiser.■

Você pode personalizar seu visual e m

uito mais.

8

O que é Linux?

●D

istribuições Linux○

Com

uma grande escolha vem

uma grande

responsabilidade… M

as só se você quiser!■

Existe um

a tonelada de opções para quem é iniciante.

■U

buntu, Linux Mint e elem

entary OS

são alguns exem

plos.■

Perm

item fácil instalação e um

a fácil experiência de uso.

9

O que é Linux?

●D

istribuições Linux○

As vantagens do Linux são enorm

es.■

Linux é livre: Am

bos em term

os de custo e de liberdade.■

Você pode fazer o que quiser sem

pedir permissão.

■Linux é estável●

No Linux não há a “Tela azul da m

orte” :)●

Não há erros de registro

○Linux é seguro■

É m

uito difícil ser atingido por vírus ou malw

are.○

Linux é versátil■

Está presente em

TVs, aparelhos de TV

a cabo, roteadores, carros, geladeiras e telefones.

10

Modo texto x M

odo gráfico

11

Modo texto x M

odo gráfico

●Interface:○

Método de interação com

o usuário.○

No m

undo dos sistemas operacionais existem

dois tipos de interface:■

Interface gráfica;■

Interface de texto (ou linha de comando).

12

Modo texto x M

odo gráfico

●Interface gráfica:○

Oferece um

a experiência mais intuitiva e am

igável.○

Utiliza elem

entos gráficos como janelas, botões, caixas de

texto, ícones.○

Podem

não oferecer uma experiência sim

ples.○

“Sim

plicidade é qualquer coisa baseada no minim

alismo”.

13

Modo texto x M

odo gráfico

●Interface gráfica:

14

Modo texto x M

odo gráfico

●Interface de texto:○

Experiência m

enos amigável e intuitiva;

○P

ermite um

a interação mais sim

ples e direta;○

Baseia-se em

comandos de texto que realizam

tarefas;○

Econom

iza tempo e reduz a com

plexidade.

15

Modo texto x M

odo gráfico

●Interface de texto:

16

Modo texto x M

odo gráfico

●Interface de texto:○

Utiliza um

a Shell:

■É

a ligação entre o usuário e o sistema em

uma

interface de texto;■

Interpreta os comandos introduzidos pelo usuário para

outros aplicativos ou chamadas do sistem

a;■

Perm

ite a automatização de tarefas.

17

Modo texto x M

odo gráfico

●Interface de texto:○

BA

SH

(Bourne A

gain SHell):

■S

hell mais utilizada entre as distros Linux;

■Fácil utilização e interpretação.

18

Modo texto x M

odo gráfico

●B

AS

H:

○P

ermite o uso de atalhos do teclado para realização de

algumas funções.

19

Pedindo ajuda

20

Pedindo ajuda

●A

distribuições Linux contam com

várias ferramentas de

ajuda ao usuários.●

São m

anuais, descrições de programas e etc.

●Ferram

entas mais utilizadas:

○m

an■

Leitor de manuais.

■A

cessa os diversos manuais do sistem

a.■

Bibliotecas, jogos, program

as e utilitários de sistema

são exemplos de program

as e aplicações que possuem

manuais.

21

Pedindo ajuda

●Ferram

entas mais utilizadas:

○info■

Leitor de páginas de informações.

■Inform

ações são como m

anuais resumidos.

○apropos■

Procura e exibe a descrição de arquivos e diretórios do

sistema, se existirem

.○

--help■

Acessar os arquivos de ajuda ou principais utilizações

diretamente no com

ando.●

ls --help

22

Arquivos e diretórios

23

Arquivos e diretórios

●A

rquivos○

Em

sistemas Linux tudo é arquivo, se não for um

arquivo, é um

processo.○

Existem

arquivos comuns aos quais denom

inamos arquivos

regulares (prefixo -).○

Outros tipos de arquivos:

■D

iretórios (prefixo d): arquivos que são listas de outros arquivos.

■A

rquivos especiais (prefixo c): são mecanism

os de entrada e saída. A

maior parte destes arquivos está

localizado em /dev.

24

Arquivos e diretórios

●A

rquivos○

Outros tipos de arquivos:

■Links (prefixo l): um

sistema para disponibilizar um

arquivo ou diretório em

várias partes do sistema.

■Sockets (prefixo s): um

tipo de arquivo especial que provém

operações de rede entre processos de forma

protegida.■

Nam

ed pipes (prefixo p): agem com

o os sockets, porém

não provém operações de rede.

25

Arquivos e diretórios

●P

ara a criação de um arquivo existem

algumas form

as sim

ples:○

Utilizando o com

ando touch para criar um arquivo vazio:

■touch arquivo_novo.txt

○U

tilizando o comando cat:

■cat > arquivo_novo.txt●

Para finalizar, aperte C

trl+D.

○O

u simplesm

ente escrever um nom

e depois de um editor

de texto:■

vim arquivo_novo.txt

26

Arquivos e diretórios

●C

omo verificar o tipo de arquivo?

○C

omando ls -l.

○M

ostra uma lista longa dos arquivos presentes no diretório

atual.

llsilva@LA

R-03:/$ ls -l

total 128

drwxr-xr-x 162 root root 12288 A

br 7 18:36 etc

drwxr-xr-x 4 root root

0 Mai 2 14:20 hom

e

lrwxrw

xrwx 1 root root

33 Ago 6 2015 initrd.im

g -> boot/initrd.img-

3.19.0-25-generic

-rw-r--r-- 1 llsilva G

rupos 8159857 Mar 17 21:02 w

ordpress-4.4.2-pt_BR

.zip27

Arquivos e diretórios

●Localizando-se na árvore de diretórios○

Ao iniciar o term

inal (bash), o usuário geralmente se

encontra dentro de seu diretório home.

○O

diretório /home contém

todos os diretórios pessoais de usuários do sistem

a.○

Pasta saber qual em

qual diretório você se encontra, utilize o com

ando pwd.

llsilva@LA

R-03:~$ pw

d

/home/llsilva

28

Arquivos e diretórios

●C

riando diretórios○

Para criar um

diretório utilizamos o com

ando mkdir.

○E

xemplo: m

kdir pasta1●

Acessando diretórios

○A

cessaremos diretórios utilizando o com

ando cd.○

Exem

plo: cd pasta1

29

Arquivos e diretórios

●Listando o conteúdo de diretórios○

Para listar os conteúdos de diretórios, utilize o com

ando ls.○

Exem

plo: ls para listar os arquivos do diretório onde você está; ls nom

e-do-diretorio para listar os arquivos de um

outro diretório.○

O com

ando ls possui um grande núm

ero de opções.

30

Arquivos e diretórios

●A

lgumas opções interessantes do ls são:

○ls -l : lista arquivos um

por linha, incluindo suas propriedades.

○ls -a : lista todos os arquivos, inclusive os ocultos.

○ls -h : m

ostra o tamanho dos arquivos para fácil leitura.

(Ex.: 4K

b, 6Mb…

). Não faz sentido se usado sozinho.

○ls -R

: mostra os arquivos dentro dos diretórios.

○E

ssas opções podem ser com

binadas.

31

Arquivos e diretórios

●P

ara mover arquivos e diretórios existe o com

ando mv:

○m

v aula_1.txt Docum

entos/○

mv pasta_1/ D

ocumentos/pasta_2/

●O

comando m

v também

é utilizado para renomear

arquivos e pastas no linux.○

mv nom

e_1.txt nome_2.txt

●O

comando m

v pode gerar cópias de arquivos movidos

antes de mover.

○m

v --backup=simple arquivo1.txt outraP

asta/○

Ele vai gerar um

arquivo oculto com o conteúdo do arquivo

original da outraPasta.

32

Arquivos e diretórios

●P

ara cópia de documentos e pastas é utilizado o

comando cp.

○P

ara cópia de arquivos:■

cp aula_1.txt aula_1_renomeado.txt

○P

ara cópia de diretórios:■

cp -r pasta_1/ Docum

entos/outra_pasta/

33

Arquivos e diretórios

●P

ara visualizar o conteúdo de arquivos existem alguns

comandos com

o:○

cat - exibe no terminal o conteúdo inteiro de um

arquivo.○

head - exibe as primeiras linhas de um

arquivo.■

O parâm

etro -n permite escolher a quantidade de linhas

a serem exibidas.

○tail - exibe as últim

as linhas de um arquivo.

■O

parâmetro -n perm

ite escolher a quantidade de linhas a serem

exibidas.○

less - Exibe o conteudo de um

a maneira fácil e por blocos.

34

Arquivos e diretórios

●U

m arquivo precisa de prem

issões para ser acessado. No

linux essas permissões podem

ser divididas para três entidades diferentes:○

Dono (u - user): quem

criou o arquivo.○

Grupo (g - group): a todos os usuários de um

grupo.○

Outros (o - others): todos os outros usuários que não estão

relacionados acima.

35

Arquivos e diretórios

●E

existem 3 perm

issões possíveis:○

Leitura (r - read): permite a leitura dos arquivos;

○E

scrita (w - w

rite): permite a edição dos arquivos ou criação

de arquivos em um

diretório;○

Execução (x - execute): perm

ite a execução de arquivos ou a listagem

de diretórios;●

As perm

issões podem ser alteradas de várias form

as. Por

exemplo: O

ctal.

36

Arquivos e diretórios

0 : --- (nenhuma perm

issão)

1 : --x (somente execução)

2 : -w- (som

ente escrita)

3 : -wx (escrita e execução)

4 : r-- (somente leitura)

5 : r-x (leitura e execução)

6 : rw- (leitura e escrita)

7 : rwx (leitura, escrita e execução)

37

Arquivos e diretórios

●E

xemplos:

chmod 755 arquivo1.txt

chmod 644 arquivo.txt

chmod 703 diretorio -R

38

Arquivos e diretórios

●A

tribuindo permissões individuais:

○A

crescentar a permissão de escrita ao grupo:

■chm

od g+w arquivo.txt

○A

crescentar a permissão de execução a outros:

■chm

od o+x arquivo.txt○

Rem

over permissão de execução a outros:

■chm

od o-x arquivo.txt●

Atribuindo m

ultiplas permissões:

○A

crescentar leitura e escrita ao dono:■

chmod u+rw

arquivo.txt○

Acrescentando todas as perm

issões ao grupo:■

chmod g=rw

x arquivo.txt

39

Arquivos e diretórios

●P

ara trocar o dono ou o grupo que o arquivo pertence pode-se utilizar o com

ando chown. E

sse comando só

pode ser utilizado com usuários adm

inistradores do sistem

a.○

chown novo_usuario:novo_grupo arquivo.txt

●P

ara trocar apenas o usuário:○

chown novo_usuario arquivo.txt

●P

ara trocar apenas o grupo:○

chown :novo_grupo arquivo.txt

40

Redirecionam

ento

41

Redirecionam

ento

●O

que é entrada padrão e saída padrão?○

A m

aior parte dos comandos do Linux leêm

uma entrada,

esta pode ser um arquivo ou um

atributo para o comando, e

escrevem um

a saída.○

Por padrão, a entrada é o teclado (stdin) e saída é a sua

tela (stdout).

42

Redirecionam

ento

●O

peradores de redirecionamento

○R

edirecionamento de saída com

> e |■

Algum

as vezes você vai querer redirecionar a saída de um

comando para um

arquivo.■

Ou você vai querer redirecionar a saída de um

com

ando para outro comando.

■Isso é conhecido com

o redirecionamento de saída.

■O

redirecionamento de saída pode ser realizado com

o operador “>” (m

aior que) ou “|” (pipe), que envia a saída de um

comando para outro com

ando.

43

Redirecionam

ento

llsilva@LA

R-03:~$ cat arquivo1

Eu am

o

llsilva@LA

R-03:~$ cat arquivo2

chocolate

llsilva@LA

R-03:~$ cat arquivo1 arquivo2 > arquivo3

llsilva@LA

R-03:~$ cat arquivo3

Eu am

o

chocolate

44

Redirecionam

ento

●O

peradores de redirecionamento

○R

edirecionar nada para um arquivo é a m

esma coisa de

apagar seu conteúdo.○

Esse processo é cham

ado de truncamento.

llsilva@LA

R-03:~$ cat arquivo3

Eu am

o

chocolate

llsilva@LA

R-03:~$ > arquivo3

llsilva@LA

R-03:~$ cat arquivo3

llsilva@LA

R-03:~$

45

Redirecionam

ento

●O

peradores de redirecionamento

○O

mesm

o processo para um arquivo não existente criará o

arquivo.

llsilva@LA

R-03:~$ ls -l arquivo

ls: não é possível acessar arquivo: Arquivo ou diretório não encontrado

llsilva@LA

R-03:~$ > arquivo

llsilva@LA

R-03:~$ ls -l arquivo

-rw-r--r-- 1 llsilva G

rupos 0 Mai 16 12:58 arquivo

46

Redirecionam

ento

●O

peradores de redirecionamento

○E

xemplo de uso de pipes:

○B

usca de um arquivo ou diretório em

particular em um

a lista de arquivos e diretórios:

llsilva@LA

R-03:~$ ls -l | grep "arquivo"

-rw-r--r-- 1 llsilva G

rupos 0 Mai 16 12:58 arquivo

-rw-r--r-- 1 llsilva G

rupos 7 Mai 16 12:51 arquivo1

-rw-r--r-- 1 llsilva G

rupos 11 M

ai 16 12:51 arquivo2

-rw-r--r-- 1 llsilva G

rupos 0 Mai 16 12:56 arquivo3

47

Redirecionam

ento

●O

peradores de redirecionamento

○E

xemplo de uso de pipes:

○M

ostrar a saída de uma listagem

de diretórios em páginas:

○ls -la | less

48

Redirecionam

ento

●R

edirecionamento de entrada:

○O

perador < (menor que).

llsilva@LA

R-03:~$ cat arquivo_desordenado.txt

Eu

amo

chocolate

llsilva@LA

R-03:~$ sort < arquivo_desordenado.txt

amo

chocolate

Eu

49

Redirecionam

ento

●C

ombinação de operadores de redirecionam

ento○

É possível utilizar m

ais de um operador de

redirecionamento para obter saídas m

elhor filtradas:

llsilva@LA

R-03:~$ less --help | grep -i "exam

ine" > examine.txt

llsilva@LA

R-03:~$ cat exam

ine.txt

:e [file] Exam

ine a new file.

:n * E

xamine the (N

-th) next file from the com

mand line.

:p * E

xamine the (N

-th) previous file from the com

mand line.

:x * E

xamine the first (or N

-th) file from the com

mand line.

+cmd

Execute the less cm

d each time a new

file is examined.

50

Redirecionam

ento

llsilva@LA

R-03:~$ sort < arquivo_desordenado.txt > arquivo_ordenado.txt

llsilva@LA

R-03:~$ cat arquivo_ordenado.txt

amo

chocolate

Eu

51

Redirecionam

ento

●O

operador >>○

Ao invés sobrescrever os dados de um

arquivo de texto, ele adiciona novos dados no final do arquivo.

52

Redirecionam

ento

llsilva@LA

R-03:~$ cat arquivo_desordenado.txt

Eu

amo

chocolate

llsilva@LA

R-03:~$ date >> arquivo_desordenado.txt

llsilva@LA

R-03:~$ cat arquivo_desordenado.txt

Eu

amo

chocolate

Seg M

ai 16 13:15:25 BR

T 201653

Exercícios

54

Exercícios

Abra um

a janela de Terminal, para abrir um

a shell do Linux, e faça o que se pede:

1.Feche a sessão atual da shell e inicie um

a nova sessão.2.

Abra o m

anual (man) do comando top. Q

ual é a função do comando top?

3.N

o seu diretório home, ou pasta pessoal, escreva os com

andos para criar os diretórios pasta1 e pasta2.

4.N

o seu diretório home, liste o conteúdo do diretório.

5.E

ntre no diretório pasta1 e mostre o cam

inho do diretório corrente.6.

Crie o arquivo texto1.txt dentro do diretório pasta1, e o arquivo

texto2.txt dentro do diretório pasta2.7.

Preencha os arquivos texto1.txt e texto2.txt com

conteúdo diferente.8.

Copie o arquivo texto1.txt para pasta2.

9.R

enomeie o arquivo texto1.txt para texto2.txt. O

que aconteceu com

os arquivos?10.

Rem

ova os diretórios pasta1 e pasta2.55

Exercícios

11.Lim

pe o terminal.

12.M

ostre a data atual do sistema.

13.N

avegue para a pasta “Minicurso” presente em

sua pasta pessoal. Liste seu conteúdo.

14.V

eja o arquivo nomes.txt. Ele possui diversos nom

es, cada um por linha.

Utilize com

andos para criar um outro arquivo nomes_ordenados.txt com

os nom

es em ordem

alfabética.15.

Una os arquivos part1.txt, part2.txt e part3.txt, em

outro arquivo cham

ado lero.txt. Use os redirecionadores para realizar esta tarefa.

16.V

erifique se o arquivo nomes.txt ou o nomes_ordenados.txt possui o nom

e “Lemão” utilizando o com

ando grep. Teste com outros nom

es. E teste

também

com pedaços de nom

es, ou até letras.17.

Liste o conteúdo do diretório “Minicurso” novam

ente, porém com

as inform

ações de permissões e usuários e filtre a saída para capturar apenas

arquivos .txt.

56

Recapitulando...

57

Recapitulando

58

●O

que é o Linux?○

Kernel

○D

istribuições Linux○

Características

●M

odo texto x Modo gráfico

○Interface■

Interface gráfica■

Interface de texto●

Shell

○B

ash

Recapitulando

59

●A

rquivos e diretórios○

No Linux, tudo é arquivo. A

rquivos podem ser especiais,

possuindo um identificador.

■E

xemplo: diretório (d)

●C

omandos

○m

an, info, apropos, --help○

touch, ls, pwd, m

kdir, cd, mv, cp, rm

○cat, head, tail, less

○chm

od, chown

○grep, sort, date

●R

edirecionadores○

>, <, |, >>

Sistem

a de arquivos

60

Sistem

a de arquivos

●P

articionamento

○P

or que particionar?■

Um

dos objetivos de se particionar o disco rígido é dividir os dados em

várias partes;■

Quando um

desastre acontece, apenas uma parte dos

dados são afetados;

61

Sistem

a de arquivos

●P

articionamento

○E

xistem dois tipos principais de partições no Linux:

■P

artição de dados: contém dados norm

ais do sistema

Linux, incluindo a partição root que contém dados de

execução do sistema;

■ P

artição de swap: é a expansão da m

emória física do

computador; m

emória extra no disco rígido.

○A

maior parte dos sistem

as contém um

a partição root, representada pelo caractere /

○U

ma partição root padrão contém

arquivos de configuração do sistem

a, os programas m

ais básicos, bibliotecas do sistem

a, espaço temporário e o diretório hom

e do usuário adm

inistrador do sistema.

62

Sistem

a de arquivos

●P

articionamento

○D

entro da partição root podemos encontrar outras partições

comuns aos sistem

as Linux, tais como:

■U

ma partição para program

as de usuários (/usr);■

Um

a partição que contém arquivos pessoais dos

usuários (/home);

■U

ma partição que arm

azena arquivos temporários com

o filas de im

pressão ou log do sistema (/var);

■U

ma partição para softw

are extra de terceiros (/opt).

63

Sistem

a de arquivos

●O

rganização do sistema de arquivos

○E

xistem vários outros diretórios e partições dentro da

partição root;○

A estrutura da partição root pode depender dos

desenvolvedores da distribuição Linux e do propósito para o qual foi desenvolvida a distro.

○V

ejamos um

a representação gráfica destes diretórios na distribuição R

ed Hat:

64

Sistem

a de arquivos

65

Sistem

a de arquivos

●O

rganização do sistema de arquivos

○V

ocê pode verificar quais diretórios estão contidos na partição root de seu sistem

a listando seus arquivos;

llsilva@LA

R-04:~$ cd /

llsilva@LA

R-04:/$ ls

adminlar bin boot cdrom

dev etc home initrd.im

g lar lib lib64 lost+found m

edia mnt opt proc root run sbin snap srv sys tm

p usr var vmlinuz

66

Sistem

a de arquivos

●S

ubdiretórios do diretório /

67

Diretório

Conteúdo

/binP

rogramas com

uns, compartilhados pelo sistem

a e por seus usuários

/bootA

rquivos de inicialização do Linux, como vm

linuz e grub.

/devC

ontém referências à todos os dispositivos, que são arquivos com

propriedades especiais.

/etcO

s arquivos de configuração do sistema m

ais importantes estão no /etc.

/home

Os diretórios hom

e dos usuários do sistema.

/initrdC

ontém inform

ações sobre o boot do sistema.

/libC

ontém bibliotecas utilizadas pelo sistem

a e pelos usuários.

/lost+found

Toda partição contém um

diretórios lost+found. Arquivos que são salvos

durante falhas se encontram aqui.

/mnt

Diretório padrão para m

ontagem de dispositivos externos. P

or exemplo: C

D-

RO

M, C

âmera digital.

/optTipicam

ente contém softw

are de terceiros

Sistem

a de arquivos

●S

ubdiretórios do diretório /

68

Diretório

Conteúdo

/procU

m sistem

a de arquivos virtual que contém inform

ações sobre recursos do sistem

a.

/rootO

diretório home do usuário adm

inistrador do sistema.

/sbinP

rogramas para uso do sistem

a e do administrador do sistem

a.

/tmp

Diretório de arquivos tem

porários, ele é limpo a cada reinício do sistem

a.

/usrO

s diretórios home dos usuários do sistem

a.

Sistem

a de arquivos

●P

ontos de montagem

○Todas as partições são relacionadas ao sistem

a através de pontos de m

ontagem;

○U

m ponto de m

ontagem define um

lugar de um conjunto de

dados em particular no sistem

a;○

Norm

almente, todas as partições são conectadas a partir

da partição root;○

Na partição root, diretórios são criados, e estes diretórios

são definidos como ponto de partida para acesso à

partições montadas neles.

69

Sistem

a de arquivos

70

Sistem

a de arquivos

●P

ontos de montagem

○P

odemos verificar a situação da partições e de seus pontos

de montagem

utilizando o comando df.

71

Sistem

a de arquivos

llsilva@LA

R-04:~$ df -h

Sist. A

rq. Tam

. Usado D

isp. Uso%

Montado em

udev 1,7G

0 1,7G

0% /dev

tmpfs

345M 5,8M

340M 2%

/run

/dev/sda1 140G 11G

122G 9%

/

tmpfs

1,7G 2,0M

1,7G 1%

/dev/shm

tmpfs

5,0M 4,0K

5,0M 1%

/run/lock

200.137.66.2:/export/llsilva 2,0T 479G

1,4T 26% /hom

e/llsilva

tmpfs

345M 148K

345M 1%

/run/user/10214

/dev/sdg1 15G

5,4G 9,6G

36% /m

edia/llsilva/UB

UN

TU-

MA

TE72

Máscara do usuário

●M

ais conhecido como um

ask é a permissão padrão para

a criação de arquivo e diretórios de um usuário.

●É

basicamente o que as entidades não podem

fazer no arquivo.

arthurcosmi@

abcNoteU

bu:~$ umask

0002

73

Máscara do usuário

●E

xemplo: P

ara o usuário anterior com um

ask 0002 deseja-se saber quais as perm

issões para o dono, grupo e outros de um

a pasta que será criada.●

O prim

eiro zero pode ser descartado;●

O segundo representa as perm

issões do dono. Logo, deve-se dim

inuir a permissão m

áxima do núm

ero do um

ask. Assim

:

umask = 0 →

perm = 7 - 0 →

perm = 7 = rw

x

●Fazendo isso para os outros núm

eros encontramos os

valores do grupo e outros:

74

Máscara do usuário

●G

rupo:

umask = 0 →

perm = 7 - 0 →

perm = 7 = rw

x

●O

utros:

umask = 2 →

perm = 7 - 2 →

perm = 5 = r-x

arthurcosmi@

abcNoteU

bu:~$ ls -lh | grep lalala

drwxrw

xr-x 2 arthurcosmi arthurcosm

i 4,0K M

ai 24 12:48 lalala

75

Máscara do usuário

●P

ara arquivos regulares existe uma exceção:

○Q

uando o umask for 0,2,4 ou 6 ao invés de usar a

permissão m

áxima igual a 7 usa-se 6. A

ssim, para um

arquivo criado com

a umask anterior (0002), tem

os:●

Dono:

umask = 0 →

perm = 6 - 0 →

perm = 6 = rw

-

●G

rupo:

umask = 0 →

perm = 6 - 0 →

perm = 6 = rw

-

76

Máscara do usuário

●O

utros:

umask = 0 →

perm = 6 - 2 →

perm = 4 = r--

arthurcosmi@

abcNoteU

bu:~$ ls -lh | grep hehe

-rw-rw

-r-- 1 arthurcosmi arthurcosm

i0 M

ai 24 12:57 hehe

77

Processos

78

Processos

79

●O

que é um processo?

○P

rocesso é uma instância de um

programa com

putacional que está sendo executado. U

m processo contém

o código do program

a e o status de sua execução.○

No Linux, com

o no Unix, m

últiplos processos podem ser

executados simultaneam

ente por múltiplos usuários.

○E

m alguns casos, um

processo iniciado por um usuário

pode persistir mesm

o quando o usuário se desloga.

Processos

80

●Tipos de processos:○

Interativos○

Autom

áticos○

Daem

ons

Processos

81

●P

rocesso interativo○

É iniciado e controlado m

anualmente por um

usuário através de um

a sessão de terminal.

○N

ormalm

ente iniciados em foreground.

○Todos com

andos que vimos até agora iniciam

um processo

interativo quando chamados.

labgrad / # ls

bindev initrd.im

g lib64 m

nt root srv usr

boot etc labgrad lost+found opt run sys var

cdrom hom

e lib m

edia proc sbin tm

p vmlinuz

labgrad / #

Processos

82

●P

rocesso interativo○

Alguns processos podem

demorar e não requerer entrada

de dados via shell. Neste caso, o prom

pt do seu terminal

ficará preso esperando a finalização do processo.

2014100468@labgrad ~ $ gedit

...

Processos

83

●P

rocesso interativo○

Para evitar isso, podem

os executar o processo em

background.

2014100468@labgrad ~ $ gedit &

[1] 26601

2014100468@labgrad ~ $

Processos

84

●C

ontrolando processos

(parte do) comando

Significado

comando_norm

alE

xecuta este comando em

foreground

comando &

Executa este com

ando em background

jobsM

ostra os comandos em

background

Ctrl+z

Suspende um

processo de foregorund

Ctrl+c

Interrompe um

processo de foreground

bgR

eativa um processo suspenso

fgC

oloca um processo para foreground

killE

nvia um sinal para um

processo (norm

almente usado para finalizar)

Processos

●P

rocessos automáticos

○Tam

bém conhecidos com

o batch, são processos desconectados do term

inal.

85

Processos

●D

aemons

○D

aemons são processos não-interativos de sistem

a que rodam

continuamente.

○N

ormalm

ente são iniciados junto ao sistema e esperam

em

background até que seu serviço seja necessário.○

Exem

plo: networking

■E

ste daemon é iniciado junto ao sistem

a e espera um

programa cliente requisitar um

a conexão, como um

cliente FTP

.

86

Processos

●A

tributos de processos○

pid : identificador único do processo.○

ppid : identificador (pid) do pai que criou este processo.○

nice : grau de “amigabilidade” do processo. Isto é usado

para calcular a prioridade do processo. Quanto m

aior o nice, m

enos prioritário este processo será.○

Terminal ou TTY : term

inal ao qual este processo está conectado.

○R

UID

e EUID

: dono do processo.○

RG

IO e EG

IO : grupo ao qual o processo pertence.

87

Processos

●M

ostrando informações de processos

○ps : visualiza processos■

ps -aux | grep username

■ps -aux | grep processnam

e○

top : apresenta os processos em ordem

de maior consum

o do sistem

a, atualizando a cada poucos segundos.○

pstree : mostra árvore de processos, indicando relação de

pai-filho entre os processos do sistema

88

Processos

●C

riação de processos

89

Processos

●Term

inando processos○

Um

processo pode terminar norm

almente: não foi m

orto nem

interrompido. E

ste retornará um valor ao pai indicando

o resultado do processo.○

Um

processo pode ser finalizado através de um sinal.

○E

xistem um

a variedade de sinais que você pode enviar a um

processo.○

Use o com

ando kill para terminar um

processo.○

O com

ando kill -l exibe todos os sinais possíveis para se utilizar.

90

Processos

●S

inais mais com

uns

91

Nom

e do sinalN

úmero do sinal

Significado

SIG

TER

M15

Termina o processo de um

modo gentil

SIG

INT

2Interrom

pe um processo. O

processo pode ignorar este sinal

SIG

KILL

9Interrom

pe o processo. O processo não pode

ignorar este sinal

SIG

HU

P1

Para daem

ons: relê o arquivo de configuração

Processos

●A

gendando processos○

O com

ando sleep:■

O com

ando sleep aguarda uma quantidade de tem

po em

segundos.■

É possível usar o com

ando sleep para atrasar a execução de outro com

ando.

llsilva@LA

R-03:~$ sleep 10; echo "P

assaram-se 10 segundos..."

Passaram

-se 10 segundos...

92

Processos

●A

gendando processos○

Crontab:

○Tabela de execução de processos agendados.

○crontab -e

93

Exercícios

1.E

m qual partição está o seu diretório hom

e?2.

Em

quantas partições estão o seu sistema?

3.Q

ual é o total em tam

anho da sua instalação do Linux?4.

Crie um

novo diretório em seu diretório hom

e5.

Você pode m

over este diretório para o mesm

o nível de seu diretório home?

6.C

opie todos os arquivos do diretório /usr/share/pixmaps para o novo diretório.

7.Liste todos os arquivos em

ordem alfabética reversa.

8.M

ude para o seu diretório home. C

rie um novo diretório e copie todos os arquivos do diretório /etc

para ele. Tenha certeza de que o você também

copiou os diretórios que são subdiretórios de /etc (cópia recursiva).

9.M

ude para um novo diretório e faça um

diretório para arquivos começando com

uma letra

maiúscula e um

para arquivos começando com

uma letra m

inúscula. Mova todos os arquivos para

seus diretórios apropriados. Use o m

enor número de com

andos possível.10.

Rem

ova os arquivos restantes.11.

Detele o diretório e todo o seu conteúno usando um

só comando.

12.O

nde está o programa grep?

13.Faça link sim

bólico no seu diretório home para o diretório /var/tm

p. Cheque se ele realm

ente funciona.

14.Faça outro link sim

bólico no seu diretório home para este link. V

erifique se funciona. Rem

ova o prim

eiro link e liste o conteúdo do diretório. O que aconteceu com

o link?94

Exercícios

15.A

bre o top em um

terminal enquanto você realiza os exercícios em

outro.16.

Execute o com

ando ps.17.

Leia as páginas de manual (m

an) para saber como listar todos os seus

processos.18.

Execute o com

ando find /. Qual efeito que ele tem

no uso do sistema?

Interrompa este com

ando.19.

O que faz o kill -9?

20.E

xecute o xclock em foreground. A

gora passe-o para background. Pare este

programa com

o comando kill.

21.E

xecute o xcalc diretamente no background. P

asse-o para foreground.22.

Quanto tem

po demora para executar ls no seu diretório atual?

23.Q

ual é o seu TTY atual?

24.D

iga qual é o comando que está causando m

aior consumo no seu sistem

a.

95

Editores de texto

96

Editores de texto

97

●P

or que usar um editor de texto?

○E

screver:■

Scripts;

■P

rogramas;

■W

ebsites;■

Livros;■

etc.○

Dom

inar um editor de texto favorece:

■Independência;

■P

rodutividade;■

Eficiência.

Editores de texto

98

●Q

ual editor de texto devo usar?○

Editor em

modo gráfico:

■Interface am

igável;■

Fácil de usar;■

Softw

are complexo (pesado);

■D

epende do modo gráfico.

○E

ditor em m

odo texto:■

Interface pouco amigável;

■U

so menos intuitivo;

■S

oftware sim

ples (leve);■

Independe do modo gráfico.

●P

ode ser facilmente usado rem

otamente

Editores de texto

99

Editores de texto

100

Editores de texto

101

●N

ano○

Editor de texto voltado à sim

plicidade.○

Pros:

■Interface sim

ples e mais am

igável.■

Conjunto de com

andos compactos.

○C

ons:■

Poucas funcionalidades.

■A

talhos pouco intuitivos (CTR

L-O para salvar?)

Editores de texto

102

●G

NU

Em

acs○

Pros:

■E

xtensivo.■

Custom

izável.■

Bem

documentado.

■S

yntax coloring.■

Muitas funcionalidades.

○C

ons:■

Curva de aprendizado íngrim

e.■

Interface-usuário menos am

igável.

Editores de texto

103

●V

i(m)

○E

ditor de texto modal.

○P

ros:■

Disponível em

quase qualquer distribuição UN

IX (vi).

■E

xtensivo.■

Custom

izável.■

Bem

documentado.

■S

yntax coloring.■

Muitas funcionalidades.

○C

ons:■

Curva de aprendizado m

uito íngrime.

■Interface-usuário pouco am

igável.

Vim

104

●C

ontrole modal

○C

omando

■N

este modo você se m

ove pelo texto, busca, substitui, m

arca blocos de texto e realiza edições.■

As teclas pressionadas são interpretadas com

o com

andos.■

Alguns com

andos entram no m

odo de Inserção.○

Inserção■

Modo para escrita de texto.

■A

s teclas são inseridas como texto.

○V

isual■

Modo de seleção de texto.

■C

omandos afetarão todo o texto selecionado.

Vim

105

●C

omandos básicos

○M

ovendo-se pelo texto■

h move o cursor para a esquerda.

■l m

ove para a direita.■

k move pra cim

a.■

j move pra baixo.

^

k

< h

l >

j

V

Vim

●C

omandos básicos

○M

ovendo-se pelo texto■

hlkj ???○

Touch typing

106

Vim

107

●C

omandos básicos

○S

alvando e saindo do vim■

:w salva o arquivo (write).

■:q sai do arquivo (quit).

■:q! força a saída, descartando as alterações feitas.

■:wq salva e sai.

■:w newfile salva no arquivo new

file.■

:w! sobrepõe permissão read-only.

Vim

108

●C

omandos básicos

○M

udando para o modo de Inserção

■i insere texto antes do cursor.

■a adiciona texto após o cursor.

■o cria um

a nova linha abaixo e insere texto nela.■

I insere texto no inicio da linha do cursor.■

A adiciona texto no final da linha do cursor.■

O cria uma nova linha acim

a e insere texto nela.○

Mudando de volta para o m

odo Com

ando■

<Esc>

Vim

109

●C

omandos básicos

○M

udando para o modo V

isual■

v entra no modo visual.

■V entra no m

odo visual-linha.■

Ctrl-v entra no modo visual-bloco.

○M

udando de volta para o modo C

omando

■<Esc>

Vim

110

Vim

111

●O

peradores populares○

Movim

entação■

G leva o cursor até o final do arquivo.■

gg leva até o começo do arquivo.

■:n m

ove até a linha n.■

$ move o cursor ao final da linha atual.

■0 m

ove ao inicio da linha atual.■

w move um

a palavra para frente (word).

■b m

ove uma palavra para trás (back).

Vim

112

●O

peradores populares○

Manipulação de texto

■x apaga o caractere abaixo do cursor.

■dd deleta a linha atual do cursor.

■yy copia a linha do cursor.

■p cola o texto em

buffer (copiado ou deletado).■

np cola o texto n vezes.■

u desfaz (undo)■

Ctrl-r refaz (redo)

Vim

113

●O

peradores populares○

Busca e substituição

■/padrao busca no arquivo o padrao inserido.

■/<Enter> ou n realiza a busca anterior novam

ente.■

:%s/padrao/novotexto/g substitui padrao em

novotexto no arquivo inteiro.■

:s/padrao/novotexto/g substitui apenas na linha atual.

Vim

114

●C

utomizando o V

im○

Crie o arquivo ~/.vimrc

" Garantir sintaxe coloridasyntax enable

" Barra de númerosset number

" Recuo automáticoset autoindentset smartindent

" Tamanho do TABset softtabstop=4set shiftwidth=4set tabstop=4

" Diga ao vim que você usa fundo escuroset background=dark

Vim

115

●Tutorial para estudo○

vimtutor (digite no term

inal)

Exercícios

1.A

bra no vim o arquivo textao.txt

2.V

á para a última linha.

3.V

á para a primeira linha.

4.R

epita os passos 2 e 3 cinco vezes.5.

Vá para o m

eio do arquivo com um

comando.

6.A

pague as linhas 47 e 48 (sem entrar no m

odo Inserção).7.

Encontre a prim

eira ocorrência da palavra “desenvolvimento”.

8.S

erá que existe a palavra “banana” nesse texto?9.

Substitua toda ocorrência de “vim

” por “vi(m)”.

10.S

ubstitua toda ocorrência de “vi” por “BO

M”.

11.D

esfaça o passo 10.12.

Desfaça e refaça o passo 11 (não pode m

ais existir “BO

M” no texto).

13.V

á para a última linha e com

ece a escrever algo em um

a nova linha abaixo.14.

Copie essa nova linha e cole um

a igual antes da primeira linha.

15.S

alve esse arquivo editado em textao-editado.txt

16.S

aia do arquivo atual sem salvar as alterações.

116

Exercícios

17.A

bra no vim o arquivo heapsort.c

18.V

ocê quer mudar o nom

e da função downheap para heapbaixo. Faça isso com

um com

ando e mude todas as ocorrências de downheap.

19.S

elecione a função heapsort inteira e copie-a.20.

Cole a função copiada depois da main.

21.Faça o passo 20 cinquenta vezes.

22.D

esfaça o passo 21.23.

Selecione a função heapsort que foi colada depois da m

ain e aperte d (no m

odo visual).24.

Execute o com

ando “:%s/./a/g”. O que aconteceu? O

que “.” significa?25.

Desfaça o passo 24.

26.S

ubstitua toda ocorrência de ponto final “.” em “P

ON

TO”. D

ica: “\” anula o efeito especial de um

caractere.27.

Faça cada linha do programa virar um

comentário ao adicionar “//” no

começo de cada um

a. Dica: “^” representa o com

eço de uma linha.

117