Editor vi

Comandos de Arquivo
:q Sai do VI
:w Salva alteraçoes feitas
:wq Salva aterações e sai do VI
:q! Sai sem salvar
:w abc Grava arquivo com o nome ‘abc’
:r abc Insere o conteúdo do arquivo ‘abc’
:e abc Edita o arquivo ‘abc’
Modo de Inserção
i Entra no modo de Inserção
a Entra no modo de Inserção, após o cursor
o Entra no modo de Inserção, em uma nova linha
<ESC> Sai do modo de Inserção
Copiar, Cortar e Colar
yy Copia a linha inteira
5yy Copia as 5 próximas linhas
dd Apaga a linha
5dd Apaga 5 linhas
x Apaga uma letra
5x Apaga 5 letras
p Cola o trecho copiado ou apagado
V Seleção visual de linhas
Pulos
gg Pula para a primeira linha
G Pula para a última linha
44G Pula para a linha número 44
w Pula para a próxima palavra
b Pula para a palavra anterior
{ Pula para o parágrafo anterior
} Pula para o próximo parágrafo
( Pula para a frase anterior
) Pula para a próxima frase
f. Pula até o próximo ponto (.), na mesma linha
Desfaz o pulo, volta
Apagando com esperteza
dgg Apaga até o início do arquivo
d0 Apaga até o início da linha atual
dw Apaga a palavra
d4b Apaga as quatro palavras anteriores
df. Apaga até o próximo ponto
d) Apaga até o fim da frase
Outros
J Junta a próxima linha com a atual
u Desfaz o último comando
Ctrl+R Refaz o último comando desfeito
. Repete o comando anterior
hjkl Movimenta o cursor
/ Pesquisa um texto
n Vai para o próximo resultado da pesquisa
:%s/a/b/g Troca ‘a’ por ‘b’ em todo o texto
:!cmd Executa o comando externo ‘cmd’
:r!cmd Insere o resultado do comando externo ‘cmd’

Entrar e Sair

  • vi arquivo.txt <ENTER>
  • :q <ENTER>

Entrar, Inserir Texto, Salvar e Sair

  • vi arquivo.txt <ENTER>
  • i
  • Minha primeira frase no VI.
  • <ESC>
  • :wq <ENTER>

Entrar, Alterar Texto e Sair sem Salvar

  • vi arquivo.txt <ENTER>
  • dd
  • :q! <ENTER>

Entrar, Alterar Texto, Salvar em Outro Arquivo e Sair

  • vi arquivo.txt <ENTER>
  • yy
  • p
  • :w arquivo-novo.txt <ENTER>
  • :q <ENTER>

Configurar o VI

  • vi ~/.vimrc <ENTER>
  • i
  • set vb ru nu <ENTER>
  • set ic is hls scs
  • <ESC>
  • :wq <ENTER>

Repetir a Primeira Linha 2 Vezes e Apagar a Última

  • vi arquivo.txt <ENTER>
  • gg
  • yy
  • p
  • p
  • G
  • dd

Repetir Comandos

  • vi arquivo.txt <ENTER>
  • A
  • FIM
  • <ESC>
  • j
  • .
  • j
  • .

Abrir Dois Arquivos Simultaneamente

  • vi arquivo.txt <ENTER>
  • :split ~/.vimrc <ENTER>
  • Ctrl+W
  • Ctrl+W
  • :q <ENTER>
  • :q <ENTER>

Obter Ajuda

  • vi arquivo.txt <ENTER>
  • :help <ENTER>

Fonte:

http://aurelio.net/curso/material/vim-ref.html

Monitorar Trafego da rede pelo terminal

Para ver em tempo real, ifTop e ipTraf:

# apt-get install iftop

# apt-get install iptraf

e ainda o ntop que serve mais para monitoramento:

# apt-get install ntop

coloque a senha de admin, depois disso pare o processo com Ctrl+C:

# ntop

Inicialize o processo:

# /etc/init.d/ntop start

depois

http://endereco_servidor:3000

Fontes:

http://pt.kioskea.net/faq/8352-linux-trafico-que-entra-sai-em-tempo-real

http://www.vivaolinux.com.br/dica/Usando-o-ntop-para-monitorar-a-rede

http://www.hardware.com.br/livros/servidores-linux/monitorando-com-ntop.html

http://www.vivaolinux.com.br/artigo/NTop-Configuracoes-gerais?pagina=1

Subversion

Entendendo o versionamento: http://pt.wikipedia.org/wiki/Sistema_de_controle_de_vers%C3%A3o

Instalação no debian:

http://www.howtoforge.com/debian_subversion_websvn

http://www.reviewingit.com/index.php/content/view/62/2/

http://www.vivaolinux.com.br/artigo/Subversion-Controle-de-versao-de-documentos?pagina=4

http://t5redes.com.br/forum/topic/54-instalando-e-configurando-subversion-no-debian/

http://www.flaviotorres.com.br/fnt/artigos/svn.php

http://www.dicas-l.com.br/arquivo/criar_e_usar_um_servidor_svn.php

http://www.slideshare.net/lekitamura/controlando-projetos-com-netbeans-e-subversion

Colocando o SVN com o Netbeans:

Eu gosto de fazer assim, primeiro enviar o projeto para lá:

# svn import /tmp/projeto http://servidor/svn/projeto

depois no NetBeans instalar o svn dai ir em equipe > checkout ,

ali você já adiciona o endereço do server, repositório, usuário e senha.

pronto! agora você terá o svn+netbeans!

http://netbeans.org/kb/docs/ide/subversion.html

Fontes:

livro online: http://svnbook.red-bean.com/

Converter .TOD para mpeg2

Para quem algum dia se deparar com o formato .TOD que é um formato de alta qualidade da JVC, provavelmente vai ter muita dor de cabeça com conversão. Pois são poucos os softwares que convertem desse formato para outro editável. Então fica aqui a dica para quem quer converter o .tod mantendo a alta qualidade em um mpeg2. Utilizando linha de comando e a biblioteca FFMPEG:

$ ffmpeg -i video-original.tod -acodec copy -vcodec copy video-convetido.mpeg

Com isso mantemos a qualidade. Mas você pode utilizar outras opções para alterar a qualidade e tamanho do vídeo.

Ou ainda usar uma interface gráfica do ffmpeg como o WinFF que converte em vários formatos.

Script legal:

#!/bin/bash
video="$1"
newvideo="${video/%tod/mpg}"
ffmpeg -i "$1" -acodec copy -vcodec copy "$newvideo"
mv "$video" "$video.done"

Fontes:

http://www.mattgrill.com/2009/03/convert-jvc-tod-to-mpeg-video-tod2mpeg/

http://forum.videohelp.com/threads/273031-Anyone-having-JVC-GZ-HD7-TOD-file-conversion-problems-compatibility

Autenticação com chaves Publica/Privada no SSH

Autenticação com chaves Publica/Privada no SSH

Para que não seja mais necessário colocar senha toda vez que você conecta a um servidor ou para viabilizar backups automaticos que utilizam conexão SSH. Você pode utilizar a autenticação por PublicKey com chaves privadas e publicas!

Geramos no host as chaves publica e privada:

$ ssh-keygen -t rsa

isso irá gerar as chaves id_rsa (privada) e id_rsa.pub (publica) ambas em ~/.ssh

Agora vamos copiar a chave publica para o servidor com um comando só:

$ ssh-copy-id -i ~/.ssh/id_rsa.pub login@servidor

Pronto! Agora vamos aplicar algumas permissões no servidor:

$ chmod 600 ~/.ssh/authorized_keys

$ chmod 700 /home/usuario/.ssh

$  chmod 700 /home/usuario

Agora, configure o arquivo /etc/ssh/sshd_conf para usar as chaves de autenticação. Certifique-se de que as linhas a seguir estão descomentadas:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
Reinicie o servidor caso faça essas auterações.
Para verificar o que acontece durante a conexao:

ssh -v login@servidor (para ver as mensagens)

ssh -vvv login@servidor (para ver TODAS as mensagens)

# rsync -Pav -e "ssh -i $HOME/.ssh/somekey" username@hostname:/from/dir/ /to/dir/
Fontes:

https://unix.stackexchange.com/questions/127352/specify-identity-file-id-rsa-with-rsync

http://blogdonerd.com.br/2010/09/estabelecendo-relacao-de-confianca-ssh-entre-servidores-linux/
http://www.hardware.com.br/tutoriais/dominando-ssh/pagina5.html
http://www.dicas-l.com.br/arquivo/logando_com_seguranca_num_servidor_ssh_sem_uso_de_senha.php
http://segurancalinux.com/artigo/Dicas-avancadas-de-seguranca-para-SSH
http://focalinux.cipsga.org.br/guia/avancado/ch-s-ssh.htm
http://www.zago.eti.br/ssh/ssh-sem-senha.txt
http://www.debian.org/doc/manuals/debian-reference/ch-tune.pt-br.html
https://www.cs.indiana.edu/Facilities/FAQ/Security/openssh.html
http://atitudereflexiva.wordpress.com/2011/02/13/ssh-com-chave-publica/
http://www.debian.org/doc/manuals/debian-reference/ch-tune.pt-br.html
fontes de configuração:
http://www.hugoazevedo.eti.br/html/sshd.html
http://www.hugoazevedo.eti.br/html/ssh.html