fasulinux - profjefer

Transcrição

fasulinux - profjefer
QUEM DEVE FAZER ESTE CURSO?
Todos
PORQUE FAZER ESTE CURSO?
Conhecimento
NÍVEL DO CURSO:
Alfabetização
FASUL GNU/LINUX
Prof. Jefer
www.profjefer.wordpress.com
QUEM DEVE FAZER ESTE CURSO?
Todos
PORQUE FAZER ESTE CURSO?
Conhecimento
NÍVEL DO CURSO:
Alfabetização
PRÉ REQUISITOS:
Alunos:
Ser usuário de computador
Infra:
Internet BOA
Virtual Box
Repositório local das ISOs
PRÉ REQUISITOS:
Alunos:
Ser usuário de computador
Infra:
Internet BOA
Virtual Box
Repositório local das ISOs
CONTEÚDO
*1 - Conhecendo um Novo Mundo
1.1 - Comunidade e Movimento OpenSource
1.2 - Licença GPL e suas Liberdades
1.3 - A Evolução do GNU/Linux
1.4 - Distribuições GNU/Linux (Famílias)
1.5 - Principais Aplicações OpenSource
*2 - Profissional Linux
2.1 - Porque se tornar um profissional Linux
2.2 - Certificação Linux
2.3 - Mercado Linux
CONTEÚDO
*2 - Profissional Linux
2.1 - Porque se tornar um profissional Linux
2.2 - Certificação Linux
2.3 - Mercado Linux
2.4 – Eventos da Área
*3 - Linux Mão na Massa
3.1 - Sistemas de Arquivos
3.2 - Estrutura de Diretórios
3.3 - Instalação Desktop (Debian like and RH
family)
3.4 - Interfaces Gráficas
3.5 - Instalação Complexa de Programas
3.6 - Programas Equivalentes
3.7 - Linha de Comando Básica
3.8 - Shellzin
1 Parte
CONTEÚDO
*1 - Conhecendo um Novo Mundo
1.1 - Comunidade e Movimento OpenSource
1.2 - Licença GPL e suas Liberdades
1.3 - A Evolução do GNU/Linux
1.4 - Distribuições GNU/Linux (Famílias)
1.5 - Principais Aplicações OpenSource
1 - Conhecendo um Novo Mundo
Linux é parte de um todo, mais precisamente, é um kernel de
código-fonte aberto, que foi - e é desenvolvido - ao longo do
tempo graças à colaboração voluntária de desenvolvedores de
várias partes do mundo.
História
A história do Linux começa no ano de 1991, pelas mãos de
um estudante universitário finlandês chamado Linus Torvalds.
O Linux foi criado por ele, não totalmente do "zero", mas sim
como uma variação do MINIX.
Linus Torvalds, então com quase 20
anos, começou a estudar ciência da
computação na Universidade de
Helsinki, na Finlândia, em 1988. Cerca
de dois anos depois, aproveitando o
conhecimento que tinha e estava
adquirindo sobre a linguagem C, decidiu
criar a sua própria implementação de
um terminal em seu recém obtido
computador 80386, principalmente para
acessar o servidor UNIX da instituição
de ensino. Isso porque ele já havia
testado o MINIX para esta finalidade,
mas não estava satisfeito com os seus
recursos.
Kernel
Kernel pode ser entendido como o núcleo do sistema
operacional, isto é, como a parte essencial deste. Cabe ao kernel
fazer o intermédio entre o hardware e os programas executados
pelo computador. Isso significa que a junção do kernel mais os
softwares que tornam o computador usável (drivers, protocolos
de comunicação, entre outros), de acordo com a sua aplicação, é
que formam o sistema operacional em si.
Kernel
MINIX
O MINIX é um sistema operacional simples, criado por Andrew S.
Tanenbaum, um renomado professor de computação que é
conhecido pelos diversos livros que escreveu para a área.
Tanenbaum disponibilizou o MINIX principalmente para servir de
auxílio no ensino de computação. Trata-se de um sistema
operacional simples, que exige poucos recursos de hardware e
cuja primeira versão foi lançada em 1987
O MINIX também não foi escrito do "zero". Trata-se, na verdade,
de um projeto baseado em um sistema operacional que tem
grande participação na história da computação: o UNIX.
UNIX
O surgimento do UNIX se deu em 1969, como um projeto da
Bell Labs, laboratório pertencente à AT&T. Mas somente em
meados da década seguinte tornou-se um sistema
efetivamente disponível no meio acadêmico, o que permitiu a
sua evolução e o surgimento de variações.
O UNIX, na verdade, começou em meados dos anos 1960
como um projeto a ser desenvolvido por um grupo de
habilidosos programadores, entre eles, Ken Thompson e
Dennis Ritchie: um sistema operacional de nome Multics.
Multics
O Multics era um projeto ambicioso, mas enfrentou vários
problemas, entre eles, falta de recursos computacionais.
Assim, no mesmo ano, Ken Thompson decidiu criar algo mais
"realista", chamando o novo projeto de Unics. Tempos depois,
o nome foi mudado para UNIX, denominação que permanece
até hoje.
Multics
C é uma criação de Dennis Ritchie, daí o seu
comprometimento com o trabalho envolvendo a linguagem e o
UNIX. Por causa de seus recursos, a linguagem passou a ser
utilizada em vários outros projetos mais complexos, inclusive
no desenvolvimento de outros sistemas operacionais, fazendo
com que o seu criador fosse reconhecido mundialmente como
um dos grandes nomes da computação (infelizmente, Dennis
Ritchie faleceu eum outubro de 2011).
Multics
C é uma criação de Dennis Ritchie, daí o seu
comprometimento com o trabalho envolvendo a linguagem e o
UNIX. Por causa de seus recursos, a linguagem passou a ser
utilizada em vários outros projetos mais complexos, inclusive
no desenvolvimento de outros sistemas operacionais, fazendo
com que o seu criador fosse reconhecido mundialmente como
um dos grandes nomes da computação (infelizmente, Dennis
Ritchie faleceu eum outubro de 2011).
*nix
O UNIX teve grande aceitação não somente em universidades,
mas também em ambientes corporativos, resultando no
surgimento de variações diversas do sistema, como as versões
BSD e o Solaris.
1.1 - Comunidade e Movimento OpenSource
From: [email protected] (Linus Benedict Torvalds)
Newsgroups: comp.os.minix
Subject: What would you like to see most in minix?
Summary: small poll for my new operating system
Keywords: 386, preferences
Message-ID: <[email protected]>
Date: 25 Aug 91 20:57:08 GMT
Organization: University of Helsinki
Lines: 20
Hello everybody out there using minix -
1.1 - Comunidade e Movimento OpenSource
I'm doing a (free) operating system (just a hobby, won't be big and
professional like gnu) for 386(486) AT clones. This has been brewing
since april, and is starting to get ready. I'd like any feedback on
things people like/dislike in minix, as my OS resembles it somewhat
(same physical layout of the file-system (due to practical reasons)
among other things).
I've currently ported bash(1.08) and gcc(1.40), and things seem to work
This implies that I'll get something practical within a few months, and
I'd like to know what features most people would want. Any suggestions
are welcome, but I won't promise I'll implement them :-)
1.1 - Comunidade e Movimento OpenSource
Linus ([email protected])
PS. Yes - it's free of any minix code, and it has a multi-threaded fs.
It is NOT protable (uses 386 task switching etc), and it probably never
will support anything other than AT-harddisks, as that's all I have :-(.
1.1 - Comunidade e Movimento OpenSource
USENET:
"um
Minix melhor que o Minix" ("a better Minix than Minix"). E
depois de algum tempo de trabalho no projecto, sozinho, enviou
a seguinte mensagem para comp.os.minix:
Você suspira pelos bons tempos do Minix-1.1, quando os
homens eram homens e escreviam seus próprios "device
drivers"? Você está sem um bom projecto em mãos e deseja
trabalhar num S.O. que possa modificar de acordo com as suas
necessidades? Acha frustrante quando tudo funciona no Minix?
1.1 - Comunidade e Movimento OpenSource
Chega de noite ao computador para conseguir que os
programas funcionem? Então esta mensagem pode ser
exactamente para você. Como eu mencionei há um mês atrás,
estou trabalhando numa versão independente de um S.O. similar
ao Minix para computadores AT-386. Ele está, finalmente,
próximo do estado em que poderá ser utilizado (embora possa
não ser o que você espera), e eu estou disposto a disponibilizar
o código-fonte para ampla distribuição. Ele está na versão 0.02...
contudo eu tive sucesso ao executa bash, gcc, gnu-make, gnused, compress etc. nele.
Nome Linux
o nome Linux foi criado por Ari Lemmke, administrador do site
ftp.funet.fi que deu esse nome ao diretório FTP onde o núcleo Linux
estava inicialmente disponível. Linus inicialmente tinha-o batizado
como "Freax".
O Linux, por si só, é um kernel. Sozinho, um kernel não tem muita
utilidade. É necessário "juntá-lo" a um conjunto de softwares para que
tenhamos, efetivamente, um sistema operacional em condições de
uso. É aí que o projeto GNU entra.
GNU
GNU é a sigla para um nome curioso: "GNU is Not UNIX (GNU Não é
UNIX)". Trata-se de um projeto que teve início em 1984, pelas mãos
de Richard Stallman, que queria criar um sistema compatível com
UNIX, mas sem utilizar código deste.
1.2 - Licença GPL e suas Liberdades
GNU General Public License (Licença Pública Geral), GNU
GPL ou simplesmente GPL, é a designação da licença
para software livre idealizada por Richard Matthew
Stallman em 1989, no âmbito do projeto GNU da Free
Software Foundation (FSF).
GNU FDL, a Licença de Documentação Livre GNU.
GNU LGPL, a Licença Pública Geral Menor GNU.
Liberdades
liberdade de executar o programa, para qualquer propósito (liberdade zero);
liberdade de estudar como o programa funciona e adaptá-lo às suas
necessidades (liberdade 1), sendo o acesso ao código-fonte um prérequisito para esta aspecto;
liberdade de distribuir cópias de forma que você possa ajudar ao seu
próximo (liberdade 2);
liberdade de melhorar o programa e liberar os seus aperfeiçoamentos, de
modo que toda a comunidade se beneficie (liberdade três). Novamente,
aqui o acesso ao código-fonte é um pré-requisito.
Stallman
Richard Matthew Stallman, ou simplesmente "rms"
(Manhattan, 16 de março de 1953) é um ativista, fundador
do movimento software livre, do projeto GNU, e da FSF. Um
aclamado programador e Hacker, seus maiores feitos
incluem Emacs (e o GNU Emacs, mais tarde), o GNU Compiler
Collection e o GNU Debugger. É também autor da GNU General
Public License (GNU GPL ou GPL), a licença livre mais usada
no mundo, que consolidou o conceito de copyleft.
http://stallman.org/
http://opensource.org/
Open Source
A Open Source Initiative (OSI) - Iniciativa pelo código aberto - é uma organização
dedicada a promover o software de código aberto ou software livre.
FSF
A Free Software Foundation (FSF, Fundação para o Software Livre)
é uma organização sem fins lucrativos, fundada em 04 de Outubro
de1985 por Richard Stallman e que se dedica a eliminação de
restrições sobre a cópia, redistribuição, estudo e modificação de
programas de computadores – bandeiras do movimento
do software livre, em essência. Faz isso promovendo o
desenvolvimento e o uso de software livre em todas as áreas da
computação mas, particularmente, ajudando a desenvolver o
sistema operacional GNU e suas ferramentas.
Copyleft
Copyleft é uma forma de usar a legislação de proteção dos
direitos autorais com o objetivo de retirar barreiras à utilização,
difusão e modificação de uma obra criativa devido à aplicação
clássica das normas de propriedade intelectual, exigindo que as
mesmas liberdades sejam preservadas em versões
modificadas.
a única exigência de se poder copiar e distribuir uma
obra.1 O copyleft também não proíbe a venda da obra pelo
autor, mas implica a liberdade de qualquer pessoa fazer a
distribuição não comercial da obra.
Creative Commons
http://www.ojornalista.com/2011/03/voce-sabe-o-que-e-creative-commons/
Há seis grandes licenças da Creative Commons :
Atribuição - CC-BY
Atribuição - Partilha nos termos da mesma licença CC BY-SA
Atribuição - Proibição de realização de Obras Derivadas CC
BY-ND
Atribuição - Uso Não-Comercial CC-BY-NC
Atribuição - Uso Não-Comercial-Partilha nos termos da mesma
licença CC BY-NC-SA
Atribuição - Uso Não-Comercial-Proibição de realização de
Obras Derivadas CC BY-NC-ND
https://creativecommons.org/
Creative Commons
Apache
A licença Apache (versões 1.0, 1.1 e 2.0) exige a inclusão do aviso
de copyright e disclaimer, mas não é uma licença copyleft - ela
permite o uso e distribuição do código fonte tanto no software open
source como no proprietário.
BSD
A licença BSD permite que o software distribuído sob
a licença, seja incorporado a produtos proprietários.
Alguns exemplos notáveis são: o uso de código do BSD (funções
de rede de computadores) em produtos da Microsoft, e o uso de
muitos componentes do FreeBSD no sistema Mac OS X daApple
Computer.
The Linux Foundation
http://www.linuxfoundation.org/
A Linux Foundation (LF) é uma organização sem fins
lucrativos tecnologia consórcio fretado para fomentar
o crescimento do Linux .
Linux Internacional
http://www.li.org/
Linux International, também conhecida como LI, é uma
associação mundial sem fins lucrativos de corporações e outros
que trabalham rumo a promoção do crescimento do Linux e
do FOSS. Ela é chefiada por Jon "maddog" Hall.
Free and Open Source Software (FOSS)
Maddog
Jon "Maddog" Hall é o Diretor Executivo da Linux International, uma
associação sem fins lucrativos de empresas de grande relevância
internacional na área de TI que desejam promover sistemas operacionais
baseados em Linux. O apelido lhe foi dados por seus alunos na Hartford
State Technical College, onde ele era Chefe do Departamento de Ciência
da Computação. Segundo o próprio, ele prefere ser chamado pelo nome
"maddog". O próprio Hall afirma que o apelido "vem de um tempo em que
eu tinha pouco controle sobre o meu temperamento".
Jon trabalha com informática desde 1969, trabalhou para a Western
Electric Corporation, Aetna Life and Casualty, Bell Laboratories, Digital
Equipment Corporation, VA Linux Systems, e SGI. Atualmente, ele é
o CTO e embaixador da Koolu.
1.3 - A Evolução do GNU/Linux
1.4 - Distribuições GNU/Linux (Famílias)
https://upload.wikimedia.org/wiki
pedia/commons/1/1b/Linux_Distribu
tion_Timeline.svg
Evolução
http://distrowatch.com/
Principais Distros
Distrowatch
http://distrowatch.com/dw
res.php?resource=major
Debian
http://www.debian.org
KNOPPIX
http://www.knoppix.org/
Kurumin
Ubuntu
http://www.ubuntu.com/
Red Hat
http://br.redhat.com/
CentOS
http://www.centos.org/
https://fedoraproject.org/
Fedora
Gentoo
https://www.gentoo.org/
https://www.archlinux.org/
Arch
Pacman (Package
manager - gerenciador de
pacotes)
Arch é uma
distribuição rolling
release,
Slackware
http://www.slackware.com/
Slackware Linux é o nome da mais antiga e
conhecida distribuição GNU/Linux mantida ainda em evidência. Seu criador
e mantenedor, Patrick Volkerding
Suse
Yet another Setup Tool (YaST)
Conectiva
https://www.mandriva.com/br/
Mandrake
URPMI
Mandriva
https://www.mandriva.com/br/
1.5 - Principais Aplicações OpenSource
Apache
Samba
Iptables
Bacula
Ssh
Ftp
Dns
LDAP
Squid
Postgres
Mysql
Nubuntu
http://www.backtrack-linux.org/
Backtrack
Ubuntu Studio
Edubuntu
http://www.edubuntu.org/
Famelix
http://www.puppylinux.com/
Puppy / Dizinha ...
A distribuição foi desenvolvida do zero, não é baseada em
nenhuma outra distribuição.
http://www.stoq.com.br/
Stoq
Interfaces Gráficas
X Window System
X.Org Server
GDM
KDE
GNOME
XFCE
LXDE
http://www.enlightenment.org/
Enlingthment
https://unity.ubuntu.com/
UNITY
http://www.enlightenment.org/
Enlingthment
Blackbox
3D – Compiz Fusion
https://www.youtube.com/watch?v=8q-eteqArdI
https://www.youtube.com/watch?v=4QokOwvPxrE
2 Parte
CONTEÚDO
*2 - Profissional Linux
2.1 - Porque se tornar um profissional Linux
2.2 - Certificação Linux
2.3 - Mercado Linux
2.4 – Eventos da Área
*2 - Profissional Linux
Atenção, mercado de Linux está com empregos em alta
Linux Foundation mostra com pesquisas recentes que a adoção do
sistema operacional aberto está maior e criando oportunidades de
trabalho
http://www.linuxfoundation.org/publications/linux-foundation/2013-linux-jobs-report
http://idgnow.uol.com.br/ti-pessoal/2013/02/21/empresas-estao-aflitas-por-talentos-em-linux-diz-relatorio/
2.1 - Porque se tornar um profissional Linux
2.2 - Certificação Linux
http://www.lpi.org/
exame 101 cobre os temas:
LPI1
Junior Level Linux Certification
GNU e comandos Unix
Dispositivos, Sistemas de Arquivos e
Padrões de Hierarquia de Filesystem (FHS)
Boot, Inicialização, Shutdown e Runlevels
Documentação
Tarefas administrativas
exame 102:
Arquitetura e Hardware
Instalação e
Gerenciamento de
Pacotes
Kernel
Impressão
Shells, Scripts,
Programação e
Compilação
Ambiente X
Teoria sobre Redes
Serviços de Rede
Segurança
http://www.lpi.org/
LPI2
Advanced Level Linux Certification
http://www.lpi.org/
LPI3
Senior Level Linux Certification
301 Core (retires end of 2013)
302 Mixed Environment (still requires LPI-301
until the exam retires at the end of 2013)
Existing Specialties:
303 Security
304 High Availability and Virtualization
LPI
http://www.lpibrasil.com.br/simulados
Novel CLA
https://www.novell.com/training/testinfo/objectives/CLA11tobj.html
Access and Use man Pages
Use info Pages
Understand the File System Hierarchy Standard (FHS)
Manage Directories with Nautilis and CLI
Create and View Files
Work with Files and Directories
Find Files on Linux
Search File Content
Get to Know the Command Shells
Execute Commands at the Command Line
Work with Variables and Aliases
Understand Command Syntax and Special Characters
Use Piping and Redirection
Get to Know YaST
Manage the Network Configuration Information from YaST
Manage Users and Group Accounts with YaST
Describe Basic Linux User Security Features
Manage User and Group Accounts from the Command Line
Manage File Permissions and Ownership
Ensure File System Security
Use the Editor vi to Edit Files
Manage RPM Software Packages
Manage RPM Software Repositories with zypper
Perform a SLES 11 Installation
Describe the Linux Load Procedure
Manage GRUB (Grand Unified Bootloader)
Manage Runlevels
Describe How the Linux Processes Work
Manage Linux Processes
Select the Linux File System
Configure Linux File System Partitions
Manage Linux File Systems
Configure Logical Volume Manager (LVM) and Software Raid
Set Up and Configure Disk Quotas
Set Up Network Interfaces with the ip Tool
Set Up Routing with the ip Tool
Test the Network Connection with the Command Line Tool
Configure Host Name and Name Resolution
Manage RPM Software Packages
Verify and Update Software Library Access
Provide Secure Remote Access with OpenSSH
COMPTIA LINUX
certificação CompTIA Linux+ prova que o candidato pode
explicar recursos fundamentais de código aberto, demonstrar
conhecimento de gerenciamento de usuários, entender
permissões de arquivo/configurações de software e manejar
dispositivos de armazenamento local e protocolos de sistemas
de redes.
Red Hat
Red Hat Certified Architect – RHCA
A RHCA é a credencial máxima entre administradores de sistema e
foi criada para líderes técnicos que trabalham em ambientes
corporativos exigentes.
Red Hat
Red Hat Certified System Administrator ― RHCSA
Uma certificação RHCSA é obtida quando um profissional de TI
demonstra as habilidades em administrar os sistemas exigidas
em ambientes do Red Hat® Enterprise Linux®.
Um Engenheiro Certificado Red Hat® (RHCE®) com uma
certificação RHCA, possui um conhecimento aprofundado e
está pronto para os maiores desafios em TI. A certificação
RHCA une o conhecimento de um Red Hat Certified Datacenter
Specialist (RHCDS) ao conhecimento sobre segurança de
serviços de redes, monitoramento de sistema e otimização do
desempenho.
Red Hat
Red Hat Certified Engineer ― RHCE
Um Red Hat® Certified Engineer (RHCE®) é um Red Hat Certified
System Administrator (RHCSA) que possui as habilidades, os
conhecimentos e as capacidades adicionais exigidas de um
administrador do sistema sênior responsável por sistemas Red Hat
Enterprise Linux®.
Um RHCE é capaz de:
Configurar rotas estáticas, filtragem de pacotes e tradução de endereço de rede.
Configurar parâmetros de tempo de execução de kernel.
Configurar um iniciador Internet Small Computer System Interface (iSCSI).
Criar e entregar de relatórios sobre a utilização do sistema.
Utilizar scripts shell para automatizar as tarefas de manutenção do sistema.
Configurar log do sistema, incluindo log remoto.
Configurar um sistema para fornecer serviços de rede, incluindo HTTP/HTTPS,
protocolo FTP (FTP), sistema de arquivos de rede (NFS), protocolo SMB (SMB),
protocolo SMTP (SMTP), secure shell (SSH) e protocolo NTP (NTP).
Red Hat
Red Hat Certified Datacenter Specialist (RHCDS)
Um Red Hat® Certified Datacenter Specialist (RHCDS) é o
profissional cujo status de certificação na Red Hat é válido,
tendo recebido as seguintes certificações e Certificates of
Expertise da Red Hat:
2.3 - Mercado Linux
2.4 – Eventos da Área
X Conferência Latinoamericana de Software
Livre
http://softwarelivre.org/fisl14
de 16 a 18 de outubro de
2013 - Foz do Iguaçu | PR
| Brasil
http://2013.latinoware.org/
pt/
*3 - Linux Mão na Massa
3.1 - Sistemas de Arquivos
3.2 - Estrutura de Diretórios
3.3 - Instalação Desktop (Debian like and RH
family)
3.4 - Interfaces Gráficas
3.5 - Instalação Complexa de Programas
3.6 - Programas Equivalentes
3.7 - Linha de Comando Básica
3.8 - Shellzin
*3 - Linux Mão na Massa
*3 - Linux Mão na Massa
3.1 - Sistemas de Arquivos
ReiserFS: O ReiserFS foi criado por Hans Reiser e pela equipe de
desenvolvimento da Namesys. Ele provou ser uma alternativa
robusta ao Ext2. Seus bens mais importantes são a melhor
utilização do espaço em disco, o melhor desempenho do acesso
ao disco e uma recuperação de falhas mais rápida
Ext2: tornou-se o sistema de arquivos Linux mais popular por
muitos anos
Ext3: foi criado por Stephen Tweedie. Confiabilidade e
desempenho.
# mkfs -t ext3 /dev/hda4
Reiser4: Conceito de segurança refinado
3.1 - Sistemas de Arquivos
XFS: Com intenção original de ser um sistema de arquivos para o
sistema operacional IRIX, a SGI iniciou o desenvolvimento do XFS no
começo de 1990.
Alta escalabilidade por meio do uso de grupos de alocação.
Alto desempenho por meio de um eficiente gerenciamento de espaço em
disco
Pré-alocação para evitar a fragmentação do sistema de arquivos
JFS (Journaling FileSystem) é um sistema de arquivos desenvolvido pela
IBM, disponível em licença open source.
SWAP: espaço reservado para troca de dados com a memória RAM.
3.2 - Estrutura de Diretórios
VirtualBox
ISO
3.3 - Instalação Desktop (Debian like and RH
family)
3.5 - Instalação Complexa de Programas
APT
http://www.debian.org/doc/manuals/apt-howto/index.pt-br.html
O APT busca em /etc/apt/sources.list por sua lista de origens (sources)
Atualizando seu cachê de pacotes local
Toda vez que você quiser instalar ou atualizar um aplicativo, você primeiramente, deverá
atualizar seu cachê de pacotes. Isso assegura que você tenha as últimas informações
sobre o aplicativo que você está instalando.
prompt$ apt-get update
Vendo os pacotes disponíveis
O utilitário apt-cache permite a você buscar no cachê de pacotes local por pacotes que
contém certos textos.
prompt$ apt-cache search apache
Este comando retornou 119 pacotes na minha máquina. Em vez de ler todas as entradas,
pode-se filtrar os resultados usando o comando grep
prompt$ apt-cache search apache | grep "^apache"
APT
http://www.debian.org/doc/manuals/apt-howto/index.pt-br.html
Vendo informações de um pacote
prompt$ apt-cache show nomedopacote
Instalando um pacote
prompt$ apt-get install nomedopacote
Removendo um pacote
prompt$ apt-get remove nomedopacote
Mantendo seu sistema atualizado
prompt$ apt-get update
prompt$ apt-get upgrade
Synaptic
DPKG
O dpkg complementa o apt-get, permitindo instalar pacotes .deb
baixados manualmente. Digamos que você tenha baixado, por
exemplo, o arquivo "skype_1.2.0.18-1_i386.deb", o pacote com o
Skype, disponível no http://skype.com.
Para instalá-lo, você usaria o comando:
# dpkg -i skype_1.2.0.18-1_i386.deb
YUM
# vi /etc/yum.conf
Yum update
Yum install pacote
RPM
# rpm -ivh yum-2.3.2-7.noarch.rpm
3.4 - Interfaces Gráficas Extras
3.6 - Programas Equivalentes
http://wiki.ubuntu-br.org/ProgramasEquivalentes
3.7 - Linha de Comando Básica
http://wiki.ubuntu-br.org/ComandosBasicos
cal: exibe um calendário;
cat arquivo: mostra o conteúdo de um arquivo.
cd diretório: abre um diretório.
chmod: comando para alterar as permissões de arquivos e
diretórios.
clear: elimina todo o conteúdo visível
3.7 - Linha de Comando Básica
cp origem destino: copia um arquivo ou diretório para outro
local.
date: mostra a data e a hora atual;
df: mostra as partições usadas;
diff arquivo1 arquivo2: indica as diferenças entre dois
arquivos,
du diretório: mostra o tamanho de um diretório;
3.7 - Linha de Comando Básica
file arquivo: mostra informações de um arquivo;
find diretório parâmetro termo: o comando find serve para
localizar informações. Para isso, deve-se digitar o comando
seguido do diretório da pesquisa mais um parâmetro (ver
lista abaixo) e o termo da busca. Parâmetros:
name - busca por nome
type - busca por tipo
size - busca pelo tamanho do arquivo
mtime - busca por data de modificação
Exemplo: find /home name tristania
finger usuário: exibe informações sobre o usuário indicado;
free: mostra a quantidade de memória RAM disponível;
3.7 - Linha de Comando Básica
halt: desliga o computador;
history: mostra os últimos comandos inseridos;
id usuário: mostra qual o número de identificação do usuário
especificado no sistema;
kill: encerra processados em andamento. Saiba mais no
artigo Processos no Linux;
ls: lista os arquivos e diretórios da pasta atual;
w: mostra os usuários logados atualmente no computador
(útil para servidores);
who: mostra quem está usando o sistema.
3.7 - Linha de Comando Básica
lpr arquivo: imprime o arquivo especificado;
lpq: mostra o status da fila de impressão;
lprm: remove trabalhos da fila de impressão;
lynx: abre o navegador de internet de mesmo nome;
mv origem destino: tem a mesma função do comando cp, só que
ao invés de copiar, move o arquivo ou o diretório para o destino
especificado;
mkdir diretório: cria um diretório, por exemplo, mkdir infowester
cria uma pasta de nome infowester;
passwd: altera sua senha. Para um administrador mudar a senha
de um usuário, basta digitar passwd seguido do nome deste;
3.7 - Linha de Comando Básica
top: exibe a lista dos processos, conforme os recursos de memória
consumidos;
uname: mostra informações do sistema operacional e do
computador. Digite uname -a para obter mais detalhes;
useradd usuário: cria uma nova conta usuário, por exemplo,
useradd marvin cria o usuário marvin;
userdel usuário: apaga a conta do usuário especificado;
uptime: mostra a quantas horas seu computador está ligado;
vi: inicia o editor de textos vi. Saiba mais aqui;
whereis nome: procura pelo binário do arquivo indicado, útil para
conhecer seu diretório ou se ele existe no sistema;
3.7 - Linha de Comando Básica
ps: mostra os processos em execução. Saiba mais no artigo
Processos no Linux;
pwd: mostra o diretório em que você está;
reboot: reinicia o sistema imediatamente (pouco
recomendável, preferível shutdown -r now);
rm arquivo: apaga o arquivo especificado;
rmdir diretório: apaga o diretório especificado, desde que
vazio;
shutdown: desliga ou reinicia o computador, veja:
shutdown -r now: reinicia o computador
shutdown -h now: desliga o computador
3.7 – Permissão de Arquivos
http://www.infowester.com/linuxpermissoes.php
drwx------ ... 2 wester ............. 512 Jan ... 29 23:30 .. Arquivos/
-rw-rw-r-- ... 1 wester ....... 280232 Dec .. 16 22:41... notas.txt
Permissão Binário Decimal
r => significa permissão de leitura (read);
---
000
0
w => significa permissão de gravação (write);
--x
001
1
x => significa permissão de execução (execution);
-w-
010
2
- => significa permissão desabilitada.
-wx
011
3
r--
100
4
R-x
101
5
rw-
110
6
Rwx
111
7
3.7 – Permissão de Arquivos
http://www.infowester.com/linuxpermissoes.php
A ordem em que as permissões devem aparecer é rwx.
Sendo assim, vamos entender a string do nosso exemplo
dividindo-a em 4 partes:
Drwx------ é um diretório (d);
- o proprietário pode alterá-lo, gravá-lo e executá-lo (rwx);
- o grupo não pode pode alterá-lo, gravá-lo, nem executá-lo (- - -);
- os demais usuários não podem alterá-lo, gravá-lo, nem executá-lo (- - -).
Gerenciamento de Processos
http://www.infowester.com/linprocessos.php
Comandos nice e renice
nice -n -5 ntpd
No exemplo, o ntpd recebe prioridade -5. Trata-se de uma prioridade
alta, afinal, como já dito, quanto menor o número menor sua gentileza.
3.8 - Shellzin
jefer@acer:~$ cor=azul
jefer@acer:~$ echo cor
Cor
jefer@acer:~$ echo $cor
azul
3.8 - Shellzin
#!/bin/bash
echo 'Nossa!
Estou vivo!'
3.8 - Shellzin
Tornemos então o arquivo executável:
chmod +x arquivo.sh
Ou chmod 755 arquivo.sh
Para executar: ./arquivo.sh
3.8 - Shellzin
Prompt$ HOJE=$(date)
echo "Hoje é: $HOJE"
Sáb Abr 24 18:40:00 BRT 2004
unset HOJE
echo $HOJE
Parametros.sh
!/bin/bash
# "basename" serve para eliminar o caminho do arquivo e
mostrar
# somente o último nome dele. Neste caso: parametros.sh
echo "Nome do script: `basename $0`"
echo "Número total de parâmetros: $#"
echo "Primeiro parâmetro: $1"
echo "Segundo parâmetro: $2"
echo "Décimo quinto parâmetro: ${15}"
echo "Todos os parâmetros: $*"
Parametros.sh
$ ./parametros.sh a b c d e f g h i j l m n o p q r s t u v x
z
Nome do script: parametros.sh
Número total de parâmetros: 23
Primeiro parâmetro: a
Segundo parâmetro: b
Décimo quinto parâmetro: p
Todos os parâmetros: a b c d e f g h i j l m n o p q r s t u
vxz
Shellzin Gráfico
Xdialog --title "Exemplo número 2!" --center --stdout --yesno \
"Neste exemplo, vamos ver o que você quer fazer. Você deseja
continuar com o programa?" \
00
if [ $? = "0" ]; then
echo "Que bom! Você continuou o programa! Parabéns!"
elif [ $? = "1" ]; then
echo "Você saiu do programa..."
fi
Shellzin Gráfico
Xdialog --title "Exemplo de Menu" --center --stdout --menubox \
"Qual sua distribuição Linux favorita?" \
20 50 0 \
1 "Slackware" \
2 "Debian" \
3 "Red Hat" \
4 "Conectiva Linux" \
5 "Eu tenho minha própria distribuição"
Gráfico
#!/bin/bash
kdialog --msgbox "Olá, tudo bem?"
kdialog --inputbox "Canal a gravar (ex: 12)" 10 60 "12" 2> /tmp/resposta.tmp
canal=`/tmp/resposta.tmp`
kdialog --passivepopup "Esta janela some sozinha depois de 6 segundos." 6 &
arquivo=`kdialog --getsavefilename "/home/kurumin/Desktop" \
"*.txt |Arquivos de texto"`
Python
$ vim helloworld.py
#!/usr/bin/python
# Hello world python program
print "Hello World!";
$ python helloworld.py
Hello World!
Java
$ vim helloworld.java
/* Hello World Java Program */
class helloworld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
$ javac helloworld.java
$ java helloworld
Fontes
http://www.dimensaotech.com/2010/03/conhecendo-o-linux-%E2%80%93-parte-1/
http://www.top500.org/statistics/details/osfam/1
http://www.infowester.com/historia_linux.php

Documentos relacionados