introdução ao linux prof. andré leon s. gradvohl, dr
TRANSCRIPT
Introdução ao Linux
Prof. André Leon S. Gradvohl, Dr.
2
0 Por que Unix/Linux?0 Estrutura do sistema Unix/Linux0 O Shell0 Nomes de arquivos especiais
0 Comandos0 Estrutura dos comandos0 Comados básicos0 Arquivos padrão0 Combinação de comandos
0 Permissões dos arquivos0 Compilação de programas
AGENDA
3
POR QUE UNIX/LINUX PARA HPC?
Geralmente as aplicações Unix/Linux possuem código fonte disponível o que permite adaptações, melhoramentos, otimizações.
Muitas das aplicações científicas já estão escritas para esses sistemas.
Alta compatibilidade entre as ferramentas desses sistemas.
São seguros. São sistemas estáveis. São sistemas escaláveis.
4
ESTRUTURA DO SISTEMA
5
O SHELL
0O shell é o interpretador da linha de comandos. É a interface entre o usuário o kernel.
0Os shells mais comuns são os seguintes0 Bourne Again Shell (/bin/bash)0 C Shell (/bin/csh)0 Turbo C Shell (/bin/tcsh)0 Korn Shell (/bin/ksh)
6
ALGUNS NOMES DE ARQUIVOS ESPECIAIS
0Alguns nomes de arquivos são especiais:0 / Diretório raiz0 . Diretório atual0 .. Diretório pai (diretório anterior)0 ~ Diretório home
0Exemplos:0 ./a mesmo que a0 ../jane/x volta um nível, depois entra no diretório jane e
em seguida no diretório x
7
ARQUIVOS ESPECIAIS
0/home – Os diretórios dos usuários são armazenados no home.
0/bin, /usr/bin – Comandos de sistema0/sbin, /usr/sbin – Comandos usados pelos
administradores do sistema0/etc – Contém arquivos de configuração0/var - logs, diretórios de spool etc.0/dev – arquivos de dispositivos.0/proc – arquivos especiais de sistema
8
ESTRUTURA DOS COMANDOS EM LINUX
0Para executar um comando, digite seu nome e os argumentos na linha de comando.
ls -l /etc
ComandoOpções(flags)
Argumentos
9
COMANDOS BÁSICOS DO LINUX
0 cd0 Mudança de Diretório
0Ex: cd /0 Ir para o diretório raiz
0 ls0 Listar os arquivos e diretório do local corrente
0Ex: ls0 Variações
0 ls –a0 ls –l
10
COMANDOS BÁSICOS DO LINUX
0pwd0Mostra a localização atual
0Ex: pwd
0mkdir0Cria um Diretório
0Ex: mkdir aula11
11
COMANDOS BÁSICOS DO LINUX
0 cat0 Exibe o Conteúdo de um Arquivo
0Ex: cat aula.txt0Ex: cat –n aula.txt
0 cp0 Copia de arquivos
0Ex: cp aula.txt aula2.txt0Ex: cp aula.txt /tmp
12
COMANDOS BÁSICOS DO LINUX
0date0 Exibe e altera a data e hora do computador
0Ex: date0Ex: date +%d/%m/%Y
0mv0 Mover ou renomear arquivos
0Ex: mv aula.txt aula3.txt0Ex: mv aula3.txt /aula/aula2
13
COMANDOS BÁSICOS DO LINUX
0clear0 Limpar a tela
0 Ex: clear
0df0 Saber a quantidade de disco ocupada
0 Ex: df –H
0free0 Verificar a utilização da memória RAM
0 Ex: free -m
14
COMANDOS BÁSICOS DO LINUX
0 rm ou rmdir0 apagar arquivos e diretórios
0Ex: rm aula2.txt0Ex: rm –d aula2
0man0 Manual on-line dos comando do linux
0Ex: man date0Ex: man cp
15
ARQUIVOS PADRÃO
0O conceito UNIX de arquivos padrão0 standard input (stdin) onde um comando obtém seus
dados de entrada.0 standard output (stdout) onde um comando escreve seu
resultado.0 standard error (stderr) onde um comando escreve os
erros da sua execução.
16
REDIRECIONAMENTO DE SAÍDAS
0É possível redirecionar as saídas de programas com >.0Exemplo: ao invés de mostrar os resultados na tela,
pode-se gravar o resultado em um arquivo.0 ls –la > listaArquivos
0Cuidado, com o >, se o arquivo existir o conteúdo será sobrescrito. Para evitar o problema, use >> (append).
17
REDIRECIONAMENTO DE ENTRADAS
0É possível redirecionar as entradas de programas com <.
0Exemplo: suponha que queiramos contar as linhas de um arquivo.0 wc < arquivo
18
REDIRECIONAMENTO DE SAÍDAS DE ERRO
0As saídas de erro são redirecionadas com 2>.0Exemplo: suponha que queiramos contar as linhas de
um arquivo.0 ls –l arquivo 2> erro.log
19
COMBINAÇÃO DE COMANDOS
0Os comandos podem ser combinados através do pipe.0O pipe ‘|’ permite que a saída de um comando seja a
entrada de outro.0Exemplo:
0 ls –la | less0 Nesse exemplo, a saída do comando ls serve como
entrada para o comando less.
20
PERMISSÕES DE ARQUIVOS
0Todo arquivo 0 É de propriedade de alguém0 Pertence a um grupo0 Tem algumas permissões de acesso para o usuário, para
o grupo e para os outros.
21
PERMISSÕES DE ARQUIVOS
0Todo usuário …0 Tem um uid (id de usuário), gid (id de grupo) e uma lista
de grupos dos quais é membro:
0O uid é quem você é (name and number)
0O gid é seu grupo inicial
0A lista de grupos são os grupos que você pertence.
22
PERMISSÕES DE ARQUIVOS
0Linux/Unix proveem três tipos de permissão:0 Read – permissão para ler o arquivo/diretório0 Write – permissão para escrever no arquivo/diretório0 EXecute – permissão para executar o arquivo (script ou
programa).
23
PERMISSÕES DE ARQUIVOS
0Ao usar o comando (ls -l) será mostrada uma lista de arquivos e suas permissões:
-rwxrwxr-x 1 gradvohl gradvohl 5224 Dec 30 03:22 hello-rw-rw-r-- 1 gradvohl gradvohl 221 Dec 30 03:59 hello.c-rw-rw-r-- 1 gradvohl gradvohl 1514 Dec 30 03:59 hello.sdrwxrwxr-x 7 gradvohl gradvohl 1024 Dec 31 14:52 posixu
Permissões
Dono
Grupo
24
PERMISSÕES DE ARQUIVOS
-rwxrwxrwxPermissões dos outros
Permissões do grupo
Permissões do usuário
flag de Diretório (d=diretório; l=link)
25
ALTERAR PERMISSÕES DE ARQUIVOS
0Use o comando chmod para mudar as permissões dos arquivos.
0Exemplos:0 chmod u+x script.sh0 chmod o-w arq.c0 chmod a-x arquivo.q
26
COMPILAÇÃO DE PROGRAMAS
0Em Linux/Unix , a compilação de programas é feita da seguintes forma:0 Programaas em C:
cc fonte.c –o fonte.ogcc fonte.c –o fonte.o
0 Programas em Fortrangfortran fonte.f –o fonte.o