SlideShare une entreprise Scribd logo
1  sur  39
Como migrar seu ambiente de
desenvolvimento
para Linux
Marcelo Sabadini
@marcelosabadini
2
Índice
 
Apresentação
O que não tem nesta apresentação
O que você precisa para começar
Ubuntu
Não tenha medo do prompt
Alguns comandos básicos
Instalação do ambiente
Produtividade na linha de comando
Dois exemplos de script (casos reais)
Dúvidas
Links
3
Apresentação
 
• Desenvolvedor web;
• Trabalho com PHP a 4 anos;
• Viciado em internet e música;
• Atualmente em uma empresa de TELECOM
trabalhando com PHP/CakePHP.
4
O que não tem nesta apresentação
• Um Xiita tentando converter
tudo mundo a usar Linux;
• Um palestrante falando mal
de outro sistema operacional;
• Alguém querendo mostrar
que é melhor por estar aqui
na frente;
5
O que você precisa para começar?
• Ter uma máquina com Linux; 
o Dual boot;
o Wubi;
o Máquina virtual;
• Aprender meia duzia de comandos;
• Não ter preguiça de fazer pesquisas no Google;
• Instalar o Apache, PHP, Mysql, PhpMyAdmin,
Subversion, IDE...;
• Não copiar e colar comandos dos exemplos;
6
Ubuntu / Desktop
7
Ubuntu / Pasta pessoal
8
Ubuntu / A raiz
9
Ubuntu / ...
10
Ubuntu / Synaptic
System / Administration / Synaptic Package Manager
11
Não tenha medo do prompt!
Application / Accessories / Terminal
12
Não tenha medo do prompt!
13
Alguns comandos básicos para
começar
• ls: lista os arquivos da pasta
• cd: entra em uma pasta
• mkdir: cria uma pasta
• cp: copia uma pasta/arquivo
• mv: move uma pasta/arquivo
• rm: remover pasta/arquivo
• chmod: muda a permissão da pasta/arquivo
• ln: cria um link(atalho)
• tail: examinar linhas de um arquivo
• apt-get: gerenciador de pacotes
14
sudo?
O comando 'sudo' serve para executar comando com a
permissão de root.
root = super usuário, administrador.
Sudo é equivalente ao 'Executar como...' do XP
15
Instalando o Apache
16
Instalando o Apache
17
Instalando o Apache
Arquivo de configuração:
/etc/apache2/sites-enabled/000-default
Document Root:
/var/www
Comandos para manipular o Apache:
$ sudo service apache2 start
$ sudo service apache2 stop
$ sudo service apache2 reload
18
Instalando o PHP
19
Instalando o PHP
20
Instalando o PHP
Arquivo de configuração:
/etc/php5/apache2/php.ini
PHP na linha de comando:
$ sudo apt-get install php5-cli
21
Instalando o Mysql
22
Instalando o Mysql
23
Instalando o Mysql
24
Instalando o Mysql
Arquivo de configuração:
/etc/mysql/my.cnf
Comandos para manipular o Mysql:
$ sudo service mysql status
$ sudo service mysql stop
$ sudo service mysql start
$ sudo service mysql restart
25
Instalando o Subversion
26
Instalando o Netbeans
27
Instalando o Netbeans
28
Instalando o Netbeans
29
Instalando o Netbeans
Applications / Programming / Netbeans 6.7.1
30
Produtividade na linha de comando
• Controle de todo os sistema operacional;
• Automatizar tarefas;
• Você sabe exatamente o que esta fazendo;
• Menos risco de errar;
• Documentação na mão;
“comando --help”
“man comando”
31
Existe vida além do browser!
 Exemplo de um DUMP via PhpMyAdmin de um banco de
dados Mysql hospedado na Localweb.
- Aprox 332.000 registros
Primeira tentativa
Gerar gzip: 4 minutos
Compactado: 3Mb
Descompactado: ?
Ao abrir o arquivo:
'gzip: ~/tabela.sql.gz: not in gzip format'
32
 Exemplo de um DUMP via PhpMyAdmin de um banco de
dados Mysql hospedado na Localweb.
- Aprox 332.000 registros
Segunda tentativa
Gerar bzip: 3 minutos
Compactado: 4Mb
Descompactado: 42Mb
Ao abrir o arquivo: OK
Subir o arquivo:
PhpMyAdmin só permite arquivos até 8Mb
Existe vida além do browser!
33
 Exemplo de um DUMP via PhpMyAdmin de um banco de
dados Mysql hospedado na Localweb.
- Aprox 332.000 registros
Linha de comando via SSH
Gerar gz: 40 segundos
Compactado: 5Mb
Descompactado: 42Mb
Ao abrir o arquivo: OK
Subir o arquivo:
Via linha de comando SSH. 1 minuto.
Existe vida além do browser!
34
O poder da linha de comando
 
Projeto com dezenas de classes e centenas de métodos
escrito em CakePHP. Todo codificado em ISO-8859-1.
Como converter TUDO para UTF-8?
35
O poder da linha de comando
 
Projeto com dezenas de classes e centenas de métodos
escrito em CakePHP. Todo codificado em ISO-8859-1.
Como converter TUDO para UTF-8?
Três comando para resolver:
find: procura arquivos;
iconv: converte codificações de arquivos;
sed: encontra e substitui expressões em arquivos;
36
O poder da linha de comando
 
A solução foi juntar os comandos em um arquivo no qual
recebe por parâmetro o nome do arquivo que será
convertido de ISO-8859-1 para UTF-8.
Exemplo de chamada:
find ~/fonte/ -type f -name *.php -exec ~/iso8859toUtf8.sh {} ;
find ~/fonte/ -type f -name *.ctp -exec ~/iso8859toUtf8.sh {} ;
37
--help
38
Marcelo Sabadini
@marcelosabadini
marcelosabadini@gmail.com
http://marcelosabadini.com.br
http://meadiciona.com.br/marcelosabadini
39
Alguns links para quem esta
começando
http://pt.wikipedia.org/wiki/LINUX_Guia_de_Comandos
Foca: http://focalinux.cipsga.org.br/guia/iniciante/index.htm
Comandos: http://www.devin.com.br/comandos_linux/
Wubi:http://wubi-installer.org/
Dual Boot: http://pt.wikipedia.org/wiki/Multi_boot
Vmware Player: http://wiki.ubuntu-br.org/VMwarePlayer

Contenu connexe

Tendances

Gerenciamento de endereços ip com php ipam
Gerenciamento de endereços ip com php ipamGerenciamento de endereços ip com php ipam
Gerenciamento de endereços ip com php ipamPietro Scherer
 
Instalação de um servidor debian
Instalação de um servidor debianInstalação de um servidor debian
Instalação de um servidor debianEduardo Mendes
 
Sistemas operacionais1
Sistemas operacionais1Sistemas operacionais1
Sistemas operacionais1Nauber Gois
 
Rodando e instalandosistemas operacionaispela rede - Nasser Othman Rahman - ...
Rodando e instalandosistemas operacionaispela rede - Nasser Othman Rahman  - ...Rodando e instalandosistemas operacionaispela rede - Nasser Othman Rahman  - ...
Rodando e instalandosistemas operacionaispela rede - Nasser Othman Rahman - ...Tchelinux
 
Temperatura Zabbix Procedimento Temper Usb
Temperatura Zabbix Procedimento Temper UsbTemperatura Zabbix Procedimento Temper Usb
Temperatura Zabbix Procedimento Temper UsbThiago Santos
 
Alta Performance de Aplicações Web em PHP - Nginx
Alta Performance de Aplicações Web em PHP - NginxAlta Performance de Aplicações Web em PHP - Nginx
Alta Performance de Aplicações Web em PHP - NginxThiago Paes
 
Gerenciamento de Backups PostgreSQL com pgbarman
Gerenciamento de Backups PostgreSQL com pgbarmanGerenciamento de Backups PostgreSQL com pgbarman
Gerenciamento de Backups PostgreSQL com pgbarmanJuliano Atanazio
 
Instalando um servidor virtual Linux on z (Red hat ou SUSE) no emulador z pdt
Instalando um servidor virtual Linux on z (Red hat ou SUSE) no emulador z pdtInstalando um servidor virtual Linux on z (Red hat ou SUSE) no emulador z pdt
Instalando um servidor virtual Linux on z (Red hat ou SUSE) no emulador z pdtAnderson Bassani
 
Automatizar backup no pf sense [dica]
Automatizar backup no pf sense [dica]Automatizar backup no pf sense [dica]
Automatizar backup no pf sense [dica]João Augusto
 
FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca
FLISOL 2014 - Banco de dados Firebird rodando em CentOS - FacecaFLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca
FLISOL 2014 - Banco de dados Firebird rodando em CentOS - FacecaMárcio Henrique da Silva
 
AIX - Gerência de Memória
AIX - Gerência de MemóriaAIX - Gerência de Memória
AIX - Gerência de MemóriaJean Pimentel
 

Tendances (20)

Gerenciamento de endereços ip com php ipam
Gerenciamento de endereços ip com php ipamGerenciamento de endereços ip com php ipam
Gerenciamento de endereços ip com php ipam
 
MigraçãO
MigraçãOMigraçãO
MigraçãO
 
Drupal + Rex
Drupal + RexDrupal + Rex
Drupal + Rex
 
Instalação de um servidor debian
Instalação de um servidor debianInstalação de um servidor debian
Instalação de um servidor debian
 
Sistemas operacionais1
Sistemas operacionais1Sistemas operacionais1
Sistemas operacionais1
 
Gnome no FreeBSD
Gnome no FreeBSDGnome no FreeBSD
Gnome no FreeBSD
 
I educar-manual-de-instalaao
I educar-manual-de-instalaaoI educar-manual-de-instalaao
I educar-manual-de-instalaao
 
Rodando e instalandosistemas operacionaispela rede - Nasser Othman Rahman - ...
Rodando e instalandosistemas operacionaispela rede - Nasser Othman Rahman  - ...Rodando e instalandosistemas operacionaispela rede - Nasser Othman Rahman  - ...
Rodando e instalandosistemas operacionaispela rede - Nasser Othman Rahman - ...
 
Zabbix livro para ubuntu
Zabbix livro para ubuntuZabbix livro para ubuntu
Zabbix livro para ubuntu
 
Iniciando com django
Iniciando com djangoIniciando com django
Iniciando com django
 
Temperatura Zabbix Procedimento Temper Usb
Temperatura Zabbix Procedimento Temper UsbTemperatura Zabbix Procedimento Temper Usb
Temperatura Zabbix Procedimento Temper Usb
 
Replicação PostgreSQL com RepManager
Replicação PostgreSQL com RepManagerReplicação PostgreSQL com RepManager
Replicação PostgreSQL com RepManager
 
Alta Performance de Aplicações Web em PHP - Nginx
Alta Performance de Aplicações Web em PHP - NginxAlta Performance de Aplicações Web em PHP - Nginx
Alta Performance de Aplicações Web em PHP - Nginx
 
Postgres Big data
Postgres Big dataPostgres Big data
Postgres Big data
 
Apache
ApacheApache
Apache
 
Gerenciamento de Backups PostgreSQL com pgbarman
Gerenciamento de Backups PostgreSQL com pgbarmanGerenciamento de Backups PostgreSQL com pgbarman
Gerenciamento de Backups PostgreSQL com pgbarman
 
Instalando um servidor virtual Linux on z (Red hat ou SUSE) no emulador z pdt
Instalando um servidor virtual Linux on z (Red hat ou SUSE) no emulador z pdtInstalando um servidor virtual Linux on z (Red hat ou SUSE) no emulador z pdt
Instalando um servidor virtual Linux on z (Red hat ou SUSE) no emulador z pdt
 
Automatizar backup no pf sense [dica]
Automatizar backup no pf sense [dica]Automatizar backup no pf sense [dica]
Automatizar backup no pf sense [dica]
 
FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca
FLISOL 2014 - Banco de dados Firebird rodando em CentOS - FacecaFLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca
FLISOL 2014 - Banco de dados Firebird rodando em CentOS - Faceca
 
AIX - Gerência de Memória
AIX - Gerência de MemóriaAIX - Gerência de Memória
AIX - Gerência de Memória
 

Similaire à Como migrar para Linux e ser mais produtivo

Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory gigadrop
 
Programação Multiplataforma em Ambiente Web
Programação Multiplataforma em Ambiente WebProgramação Multiplataforma em Ambiente Web
Programação Multiplataforma em Ambiente WebIsrael Messias
 
Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2PrinceGuru MS
 
Curso PHP - 1a. Aula (2013.2)
Curso PHP - 1a. Aula (2013.2)Curso PHP - 1a. Aula (2013.2)
Curso PHP - 1a. Aula (2013.2)Jonata Weber
 
Construção e provisionamento de ambientes de desenvolvimento virtualizados
Construção e provisionamento de ambientes  de desenvolvimento virtualizadosConstrução e provisionamento de ambientes  de desenvolvimento virtualizados
Construção e provisionamento de ambientes de desenvolvimento virtualizadosThiago Rodrigues
 
Introdução ao Linux
Introdução ao LinuxIntrodução ao Linux
Introdução ao LinuxTzveDyor
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linuxeliezer
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linuxeliezer
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linuxguest7a481e8
 
PW01 - Introdução a programação em PHPv7
PW01 - Introdução a programação em PHPv7PW01 - Introdução a programação em PHPv7
PW01 - Introdução a programação em PHPv7Silvano Oliveira
 
Redis um banco chave valor
Redis um banco chave valorRedis um banco chave valor
Redis um banco chave valorKinn Julião
 
Otimizacao de websites em PHP
Otimizacao de websites em PHPOtimizacao de websites em PHP
Otimizacao de websites em PHPFelipe Ribeiro
 
Aula - Comandos Linux - Parte 1
Aula - Comandos Linux - Parte 1Aula - Comandos Linux - Parte 1
Aula - Comandos Linux - Parte 1Leo Amorim
 
Comandos Linux Parte 1
Comandos Linux Parte 1Comandos Linux Parte 1
Comandos Linux Parte 1Leo Amorim
 
Nodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis terNodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis terEmerson Macedo
 

Similaire à Como migrar para Linux e ser mais produtivo (20)

Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory Tutorial servidor debian linux ocs invetory
Tutorial servidor debian linux ocs invetory
 
Programação Multiplataforma em Ambiente Web
Programação Multiplataforma em Ambiente WebProgramação Multiplataforma em Ambiente Web
Programação Multiplataforma em Ambiente Web
 
Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2
 
Curso PHP - 1a. Aula (2013.2)
Curso PHP - 1a. Aula (2013.2)Curso PHP - 1a. Aula (2013.2)
Curso PHP - 1a. Aula (2013.2)
 
Aula de Linux
Aula de LinuxAula de Linux
Aula de Linux
 
Construção e provisionamento de ambientes de desenvolvimento virtualizados
Construção e provisionamento de ambientes  de desenvolvimento virtualizadosConstrução e provisionamento de ambientes  de desenvolvimento virtualizados
Construção e provisionamento de ambientes de desenvolvimento virtualizados
 
Introdução ao Linux
Introdução ao LinuxIntrodução ao Linux
Introdução ao Linux
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linux
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linux
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linux
 
PHP com Docker
PHP com DockerPHP com Docker
PHP com Docker
 
PW01 - Introdução a programação em PHPv7
PW01 - Introdução a programação em PHPv7PW01 - Introdução a programação em PHPv7
PW01 - Introdução a programação em PHPv7
 
Docker para maiores
Docker para maioresDocker para maiores
Docker para maiores
 
Redis um banco chave valor
Redis um banco chave valorRedis um banco chave valor
Redis um banco chave valor
 
Cygwin
CygwinCygwin
Cygwin
 
Otimizacao de websites em PHP
Otimizacao de websites em PHPOtimizacao de websites em PHP
Otimizacao de websites em PHP
 
Puppet webcast 4linux
Puppet webcast 4linuxPuppet webcast 4linux
Puppet webcast 4linux
 
Aula - Comandos Linux - Parte 1
Aula - Comandos Linux - Parte 1Aula - Comandos Linux - Parte 1
Aula - Comandos Linux - Parte 1
 
Comandos Linux Parte 1
Comandos Linux Parte 1Comandos Linux Parte 1
Comandos Linux Parte 1
 
Nodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis terNodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis ter
 

Como migrar para Linux e ser mais produtivo

  • 1. Como migrar seu ambiente de desenvolvimento para Linux Marcelo Sabadini @marcelosabadini
  • 2. 2 Índice   Apresentação O que não tem nesta apresentação O que você precisa para começar Ubuntu Não tenha medo do prompt Alguns comandos básicos Instalação do ambiente Produtividade na linha de comando Dois exemplos de script (casos reais) Dúvidas Links
  • 3. 3 Apresentação   • Desenvolvedor web; • Trabalho com PHP a 4 anos; • Viciado em internet e música; • Atualmente em uma empresa de TELECOM trabalhando com PHP/CakePHP.
  • 4. 4 O que não tem nesta apresentação • Um Xiita tentando converter tudo mundo a usar Linux; • Um palestrante falando mal de outro sistema operacional; • Alguém querendo mostrar que é melhor por estar aqui na frente;
  • 5. 5 O que você precisa para começar? • Ter uma máquina com Linux;  o Dual boot; o Wubi; o Máquina virtual; • Aprender meia duzia de comandos; • Não ter preguiça de fazer pesquisas no Google; • Instalar o Apache, PHP, Mysql, PhpMyAdmin, Subversion, IDE...; • Não copiar e colar comandos dos exemplos;
  • 10. 10 Ubuntu / Synaptic System / Administration / Synaptic Package Manager
  • 11. 11 Não tenha medo do prompt! Application / Accessories / Terminal
  • 12. 12 Não tenha medo do prompt!
  • 13. 13 Alguns comandos básicos para começar • ls: lista os arquivos da pasta • cd: entra em uma pasta • mkdir: cria uma pasta • cp: copia uma pasta/arquivo • mv: move uma pasta/arquivo • rm: remover pasta/arquivo • chmod: muda a permissão da pasta/arquivo • ln: cria um link(atalho) • tail: examinar linhas de um arquivo • apt-get: gerenciador de pacotes
  • 14. 14 sudo? O comando 'sudo' serve para executar comando com a permissão de root. root = super usuário, administrador. Sudo é equivalente ao 'Executar como...' do XP
  • 17. 17 Instalando o Apache Arquivo de configuração: /etc/apache2/sites-enabled/000-default Document Root: /var/www Comandos para manipular o Apache: $ sudo service apache2 start $ sudo service apache2 stop $ sudo service apache2 reload
  • 20. 20 Instalando o PHP Arquivo de configuração: /etc/php5/apache2/php.ini PHP na linha de comando: $ sudo apt-get install php5-cli
  • 24. 24 Instalando o Mysql Arquivo de configuração: /etc/mysql/my.cnf Comandos para manipular o Mysql: $ sudo service mysql status $ sudo service mysql stop $ sudo service mysql start $ sudo service mysql restart
  • 29. 29 Instalando o Netbeans Applications / Programming / Netbeans 6.7.1
  • 30. 30 Produtividade na linha de comando • Controle de todo os sistema operacional; • Automatizar tarefas; • Você sabe exatamente o que esta fazendo; • Menos risco de errar; • Documentação na mão; “comando --help” “man comando”
  • 31. 31 Existe vida além do browser!  Exemplo de um DUMP via PhpMyAdmin de um banco de dados Mysql hospedado na Localweb. - Aprox 332.000 registros Primeira tentativa Gerar gzip: 4 minutos Compactado: 3Mb Descompactado: ? Ao abrir o arquivo: 'gzip: ~/tabela.sql.gz: not in gzip format'
  • 32. 32  Exemplo de um DUMP via PhpMyAdmin de um banco de dados Mysql hospedado na Localweb. - Aprox 332.000 registros Segunda tentativa Gerar bzip: 3 minutos Compactado: 4Mb Descompactado: 42Mb Ao abrir o arquivo: OK Subir o arquivo: PhpMyAdmin só permite arquivos até 8Mb Existe vida além do browser!
  • 33. 33  Exemplo de um DUMP via PhpMyAdmin de um banco de dados Mysql hospedado na Localweb. - Aprox 332.000 registros Linha de comando via SSH Gerar gz: 40 segundos Compactado: 5Mb Descompactado: 42Mb Ao abrir o arquivo: OK Subir o arquivo: Via linha de comando SSH. 1 minuto. Existe vida além do browser!
  • 34. 34 O poder da linha de comando   Projeto com dezenas de classes e centenas de métodos escrito em CakePHP. Todo codificado em ISO-8859-1. Como converter TUDO para UTF-8?
  • 35. 35 O poder da linha de comando   Projeto com dezenas de classes e centenas de métodos escrito em CakePHP. Todo codificado em ISO-8859-1. Como converter TUDO para UTF-8? Três comando para resolver: find: procura arquivos; iconv: converte codificações de arquivos; sed: encontra e substitui expressões em arquivos;
  • 36. 36 O poder da linha de comando   A solução foi juntar os comandos em um arquivo no qual recebe por parâmetro o nome do arquivo que será convertido de ISO-8859-1 para UTF-8. Exemplo de chamada: find ~/fonte/ -type f -name *.php -exec ~/iso8859toUtf8.sh {} ; find ~/fonte/ -type f -name *.ctp -exec ~/iso8859toUtf8.sh {} ;
  • 39. 39 Alguns links para quem esta começando http://pt.wikipedia.org/wiki/LINUX_Guia_de_Comandos Foca: http://focalinux.cipsga.org.br/guia/iniciante/index.htm Comandos: http://www.devin.com.br/comandos_linux/ Wubi:http://wubi-installer.org/ Dual Boot: http://pt.wikipedia.org/wiki/Multi_boot Vmware Player: http://wiki.ubuntu-br.org/VMwarePlayer