Você está na página 1de 35

Introduo ao Linux

Mdulo 01 Prof. Bruno Nascimento

Agenda

O que o Linux? Que Linux usar!? Um pouco de histria... Algumas caractersticas do S.O. Linux Lembrete: Componentes de um sistema de computao Sobre o Shell Linux Sistemas de arquivos Linux Comandos teis GCC (GNU Compiler Collection) Obtendo ajuda no Linux Prtica!

O que o Linux?
Linux

um sistema operacional de cdigo aberto distribudo gratuitamente pela internet, criado em 1991 por Linus Torvalds na universidade de Helsinki na Finlndia.

Maiores informaes http://pt.wikipedia.org/wiki/Linux

O que o Linux? (kernel, utilitrios, GNU, etc.)

GPL (Gnu Public License) a licena criada por Stallman, que permite a distribuio do cdigo e do programa livremente, e permite a alterao, sob algumas condies (a principal, manter o copyleft original). Somente o kernel realmente o Linux. Ncleo do sistema responsvel pelo funcionamento dos dispositivos e funcionamento do computador (SO). Utilitrios (shell, editores, programas) so a parte visvel ao usurio. Entretanto, so emprestados do projeto GNU, ou so comerciais. GNU (Gnu is Not Unix): Projeto fundado por Richard Stallman, que propunha a criao de um sistema completo (kernel, utilitrios, etc), sob a GPL, e independente de qualquer tipo de UNIX.

Que linux usar!?


Atualmente,

o que chamamos de Linux o kernel + um conjuntos enorme de software. Essa combinao resulta no que chamamos de Distribuies Linux.

Um pouco de histria...

Projeto MULTICS: trabalho da MIT, AT&T, BELL LABs e GE (Dcada de 60);


Sistema operacional experimental Especfico para o computador GE635 Criado para ser flexvel e interativo Alteraram o complexo sistema operacional Criaram um sistema de arquivos simples Denominaram de sistema UNIX

KEN THOMPSON E DENIS RITCHE;


1a .Verso, BELL LABs, PDP-11 (1970); Verso 4, reescrita em C, tornando-se portvel para outras mquinas e de fcil manuteno (1973); Aquisio por Universidades para ensino de Projetos; de Sistemas Operacionais (1973); System V da AT&T e 4.2 BSD Berkeley.

Algumas caractersticas do S.O. Linux

Multitarefa ( Tempo Compartilhado)


executar programas controlar perifricos gerenciar performance compilar programas editar arquivos

Multiusurio Interativo Ambiente Shell Modularizao ...

Lembrete: Componentes de um sistema de computao (SC)

Sobre o Shell Linux


Interpreta e executa comandos Alias (Substituir nome de arquivos ou comandos) Redirecionamento de entrada e sada Filtros (Pipeline ou condutores) Path (Caminho de diretrios) Linguagem de programao Ativado atravs do login pelos arquivos de inicializao: .bashrc e .login Shells mais conhecidos: Bourne again (bash) e C (csh e tcsh).

Sobre o Shell Linux

Formato padro do prompt de comandos do bash


\u@\h:\W\$ Sendo:

\u -> representa o nome do usurio \h -> representa o nome do sistema (hostname) \W -> diretrio corrente uira@notebook:home$ # -> executa comandos como superusurio ou root $ -> executa como usurio comum

Exemplo:

Sendo:

Sobre o Shell Linux

Variveis importantes do Shell

$PS1 (Prompt string 1) -> guarda o contedo do prompt de comandos do bash quando ele est pronto para receber instrues

$ echo $PS1

$PS2 -> guarda o contedo do prompt quando so necessrias mltipas linhas para completar um comando

$ echo $PS2

PATH -> lista dos programas que podero ser executados sem passar na linha de comandos o caminho completo de sua localizao

$ echo $PATH

Uma lista completa das variveis poder ser obtida pelo comando $ set

Sobre o Shell Linux

importante saber que o interpretador bash segue a seguinte ordem para achar e executar comandos digitados:
O comando digitado um comando interno do interpretador? Se no, o comando um programa executvel localizado em algum diretrio listado na varivel PATH? A localizao do comando foi explicitamente declarada?

Sistemas de arquivo Linux


Na

maioria das distribuies Linux os arquivos ficam organizados de forma hierrquica divididos em diretrios e subdiretrios.

Sistemas de arquivo Linux


Subdiretrio

/bin

Contm os arquivos binrios de comandos essenciais de usurios (disponvel a todos os usurios)

Subdiretrio

/boot

Arquivos estticos necessrios carga do sistema. onde fica localizado a imagem do Kernel.

Sistemas de arquivo Linux


Subdiretrio

/dev

Diretrio onde ficam os arquivos para acesso dos dispositivos do sistema, como discos, cdroms, terminais, para citar alguns.

Subdiretrio

/etc
configurao do

Arquivos sistema.

necessrios

Sistemas de arquivo Linux


Subdiretrio

/home

Geralmente neste diretrio que ficam os diretrios locais dos usurios.

Subdiretrio

/lib

Arquivos de bibliotecas essenciais ao sistemas, utilizadas pelos programas em /bin e mdulos do Kernel.

Sistemas de arquivo Linux


Subdiretrio

/mnt
de

Diretrio vazio utilizado como ponto montagem de dispositivos de mquinas.

Subdiretrio

/proc

Sistemas de arquivos virtual de informao de processos do Kernel.

Sistemas de arquivo Linux


Subdiretrio

/root (opcional) /sbin

Diretrio local do superusurio (root). Arquivos essenciais ao sistema, como aplicativos e utilitrios para administrao da mquina. OBS. Normalmente somente o superusurio tem acesso a estes arquivos.

Subdiretrio

Sistemas de arquivo Linux


Subdiretrio

/tmp
gerados por alguns

Arquivos temporrios aplicativos.

Subdiretrio

/usr

Arquivos pertencentes aos usurios e a segunda maior hierarquia de diretrios no Linux.

Sistemas de arquivo Linux


Subdiretrio

/var

O subdiretrio /var contm arquivos com informao varivel. Ele inclui arquivos de diretrios de ordem administrativa, contas de emails, arquivos de log e arquivos temporrios e transitrios.

Comandos e Programas teis


Antes

de Comear:

Linux Case Sensitive A tecla Tab muito til! O Atalho Ctrl + C no copia e nem o v cola! Sua pasta principal a /home/<login>

Ctrl +

ls
Lista

arquivos/pastas de um diretrio opes (argumentos):

Principais

-a: mostra arquivos e pastas ocultas -l: mostrar detalhes dos arquivos e pastas ls la Esse comando vai listar as arquivos/pastas do diretrio atual do terminal

Exemplo

cd
Comando

para se dirigir para uma pasta

Exemplo:

cd /home/arss/public_html Com esse comando o terminal vai para a pasta desejada.

mkdir

Make dir Cria um diretrio ou uma cadeia de diretrios Principais opes (argumentos):

-p : Cria cadeia de diretrios se necessrio

Exemplo:

mkdir p /home/arss/uma/aula/sobre/linux Esse comando vai criar essa pasta

rm
remove Remove

um arquivo ou pasta Principais opes (argumentos):


-r : recursivamente, remova todos os arquivos e pastas rm r /home/arss/uma/ Esse comando vai remover a pasta uma e todos os arquivos e pastas que estiverem dentro dela;

Exemplo

cp

Copy Copia uma pasta ou um arquivo para um determinado destino Sintaxe: cp [args] <origem> <destino> Principais opes (argumentos):

-r : recursivamente, copia todos os arquivos e pastas para o destino cp /home/arss/arquivo.zip /home/arss/Desktop/ Move o arquivo arquivo.zip para o Desktop

Exemplo

mv

Move Move um arquivo ou pasta para um destino Funciona do mesmo jeito que o cp Mas tambm usado para renomear arquivos. Exemplo:

mv nome.zip nomeNovo.zip Isso renomea o arquivo para o nomeNovo.zip

chmod
O

Linux tem um sistema de permisses restrito por default Todos os arquivos tem um dono (o owner) Por default apenas o dono tem permisso para alterar arquivos O chmod pode alterar essas permisses

chmod

Sintaxe: chmod [args] <alterao na permisso> <arquivo> Argumentos So 3 nmeros:


Permisso do dono Permisso do grupo do dono Permisso para todos os usurios

Quanto maior o nmero mais poder o usurio vai ter! O maio nmero 7; Exemplo

Chmod 777 pasta Todos os usurios podero fazer qualquer coisa nessa pasta

vim

Um Editor de texto bem simples 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 alteraes do arquivo Usar a ! (exclamao) fora a execuo de algum comando

vim
Usando

o vim:

Sintaxe:
vim <nome do arquivo> Se o arquivo no existir, o vim criar um se as alteraes no arquivo forem salvas

GCC (GNU Compiler Collection)


Uma

coleo de compiladores C/C++, Java, Ada, Pascal, Fortran Sintaxe: gcc <arquivoFonte> -o <arquivoExecutavel>

Essa a forma mais simples de se compilar um arquivo E para executar um arquivo no linux s digitar:

./<arquivoExecutavel>

Obtendo ajuda no Linux


Duas

formas bsicas:

--help : a maioria dos programas ao receber esse argumento mostram como usar o programa. man <nomePrograma> : mostra o manual do programa, tambm muito til.

Prtica!
Fazer

uma pasta

Criar

um arquivo hello.c (usar o vim)

criar um hello world em C compilar e executar

Depois

Dvidas

Você também pode gostar