280 likes | 429 Views
Introdução ao Linux. Prof. André Leon S. Gradvohl, Dr. Agenda. Por que Unix/Linux? Estrutura do sistema Unix/Linux O Shell Nomes de arquivos especiais Comandos Estrutura dos comandos Comados básicos Arquivos padrão Combinação de comandos Permissões dos arquivos
E N D
Introdução ao Linux Prof. André Leon S. Gradvohl, Dr.
Agenda • Por que Unix/Linux? • Estrutura do sistema Unix/Linux • O Shell • Nomes de arquivos especiais • Comandos • Estrutura dos comandos • Comados básicos • Arquivos padrão • Combinação de comandos • Permissões dos arquivos • Compilação de programas
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.
O Shell • O shellé o interpretador da linha de comandos. É a interface entre o usuário o kernel. • Os shells mais comuns são os seguintes • BourneAgain Shell (/bin/bash) • C Shell (/bin/csh) • Turbo C Shell (/bin/tcsh) • Korn Shell (/bin/ksh)
Alguns nomes de arquivos especiais • Alguns nomes de arquivos são especiais: • / Diretório raiz • . Diretório atual • .. Diretório pai (diretório anterior) • ~ Diretório home • Exemplos: • ./a mesmo que a • ../jane/x volta um nível, depois entra no diretório jane e em seguida no diretório x
Arquivos especiais • /home – Os diretórios dos usuários são armazenados no home. • /bin, /usr/bin – Comandos de sistema • /sbin, /usr/sbin – Comandos usados pelos administradores do sistema • /etc – Contém arquivos de configuração • /var - logs, diretórios de spool etc. • /dev – arquivos de dispositivos. • /proc – arquivos especiais de sistema
Estrutura dos comandos em Linux • Para executar um comando, digite seu nome e os argumentos na linha de comando. ls -l /etc Comando Argumentos Opções (flags)
Comandos Básicos do Linux • cd • Mudança de Diretório • Ex: cd / • Ir para o diretório raiz • ls • Listar os arquivos e diretório do local corrente • Ex: ls • Variações • ls –a • ls –l
Comandos Básicos do Linux • pwd • Mostra a localização atual • Ex: pwd • mkdir • Cria um Diretório • Ex: mkdiraula11
Comandos Básicos do Linux • cat • Exibe o Conteúdo de um Arquivo • Ex: cat aula.txt • Ex: cat –n aula.txt • cp • Copia de arquivos • Ex: cp aula.txt aula2.txt • Ex: cp aula.txt /tmp
Comandos Básicos do Linux • date • Exibe e altera a data e hora do computador • Ex: date • Ex: date +%d/%m/%Y • mv • Mover ou renomear arquivos • Ex: mv aula.txt aula3.txt • Ex: mv aula3.txt /aula/aula2
Comandos Básicos do Linux • clear • Limpar a tela • Ex: clear • df • Saber a quantidade de disco ocupada • Ex: df –H • free • Verificar a utilização da memória RAM • Ex: free -m
Comandos Básicos do Linux • rm ou rmdir • apagar arquivos e diretórios • Ex: rm aula2.txt • Ex: rm –d aula2 • man • Manual on-line dos comando do linux • Ex: man date • Ex: mancp
Arquivos Padrão • O conceito UNIX de arquivos padrão • standard input (stdin) onde um comando obtém seus dados de entrada. • standard output (stdout) onde um comando escreve seu resultado. • standard error (stderr) onde um comando escreve os erros da sua execução.
Redirecionamento de saídas • É possível redirecionar as saídas de programas com >. • Exemplo: ao invés de mostrar os resultados na tela, pode-se gravar o resultado em um arquivo. • ls –la > listaArquivos • Cuidado, com o >, se o arquivo existir o conteúdo será sobrescrito. Para evitar o problema, use >> (append).
Redirecionamento de Entradas • É possível redirecionar as entradas de programas com <. • Exemplo: suponha que queiramos contar as linhas de um arquivo. • wc < arquivo
Redirecionamento de saídas de erro • As saídas de erro são redirecionadas com 2>. • Exemplo: suponha que queiramos contar as linhas de um arquivo. • ls –l arquivo 2> erro.log
Combinação de comandos • Os comandos podem ser combinados através do pipe. • O pipe ‘|’ permite que a saída de um comando seja a entrada de outro. • Exemplo: • ls –la | less • Nesse exemplo, a saída do comando ls serve como entrada para o comando less.
Permissões de Arquivos • Todo arquivo • É de propriedade de alguém • Pertence a um grupo • Tem algumas permissões de acesso para o usuário, para o grupo e para os outros.
Permissões de arquivos • Todo usuário … • Tem um uid (id de usuário), gid (id de grupo) e uma lista de grupos dos quais é membro: • O uid é quem você é (nameandnumber) • O gid é seu grupo inicial • A lista de grupos são os grupos que você pertence.
Permissões de arquivos • Linux/Unix proveem três tipos de permissão: • Read – permissão para ler o arquivo/diretório • Write – permissão para escrever no arquivo/diretório • EXecute – permissão para executar o arquivo (script ou programa).
Permissões de arquivos • Ao usar o comando (ls -l) será mostrada uma lista de arquivos e suas permissões: -rwxrwxr-x 1 gradvohlgradvohl5224 Dec 30 03:22 hello -rw-rw-r-- 1 gradvohlgradvohl221 Dec 30 03:59 hello.c -rw-rw-r-- 1 gradvohlgradvohl1514 Dec 30 03:59 hello.s drwxrwxr-x 7 gradvohlgradvohl1024 Dec 31 14:52 posixu Grupo Permissões Dono
Permissões de arquivos -rwxrwxrwx Permissões dos outros • Permissões do grupo • Permissõesdo usuário • flag de Diretório (d=diretório; l=link)
Alterar Permissões de arquivos • Use o comando chmod para mudar as permissões dos arquivos. • Exemplos: • chmodu+x script.sh • chmod o-w arq.c • chmoda-xarquivo.q
Compilação de programas • Em Linux/Unix , a compilação de programas é feita da seguintes forma: • Programaas em C: ccfonte.c –o fonte.o gccfonte.c –o fonte.o • Programas em Fortran gfortranfonte.f –o fonte.o