Olá, galera.
Vou mostrar para vocês como acessar um servidor remoto através do SSH,
passando a senha como parâmetro pela linha de comando, ou no shell
script, sem que seja necessário registrar uma chave pública.
Para poder fazer isso, primeiro você precisa baixar/instalar um programinha chamado sshpass.
Em distribuições baseadas no Debian, você pode instalar com:
# aptitude install sshpass
Agora, cada vez que você quiser passar a senha como parâmetro, é só você colocar o sshpass antes do comando.
Exemplo:
$ sshpass -p "seu_password" scp root@seu_ip:/etc/hosts /root
Ou:
$ sshpass -p "seu_password" ssh root@seu_ip
Também dá pra passar uma variável como parâmetro:
$ sshpass -p "$PASS_SERVER" scp -P52000 root@$IP_SERVER:/etc/hosts /root
Abraço a todos!
quarta-feira, 26 de junho de 2013
OpenVPN no Ubuntu Server - Instalação e configuração
OpenVPN no Ubuntu Server - Instalação e configuração
Ambiente na Matriz:
# apt-get install openvpn liblzo2-dev
Criar chave de segurança:
# cd /etc/openvpn
# openvpn --genkey --secret /etc/openvpn/chave
Verificar se a chave foi criada:
# cat /etc/openvpn/chave
Criar arquivo de configuração na matriz:
# vi /etc/openvpn/matriz.conf
Incluir o texto abaixo no arquivo: "/etc/openvpn/matriz.conf"
# touch /var/log/openvpn/filial-status.log
# touch /var/log/openvpn/filial.log
# vim rotas.up
# vim rotas.down
Agora é só iniciar a VPN:
Executar comando para iniciar o OpenVPN:
# openvpn --config /etc/openvpn/matriz.conf -daemon &
Verificar se a conexão VPN na matriz está OK:
# ifconfig tun0
# apt-get install openvpn liblzo2-dev
Copiar a chave de segurança da matriz para a filial:
# scp /etc/openvpn/chave ip_filial:/etc/openvpn
Criar o arquivo de configuração na filial:
# vi /etc/openvpn/filial.conf
Incluir o texto abaixo no arquivo: "/etc/openvpn/filial.conf"
Iniciar o serviço OpenVPN na filial:
# openvpn --config /etc/openvpn/filial.conf -daemon &
Verificar se a conexão VPN na matriz está OK:
# ifconfig tun0
# ping 10.0.0.2
Na filial, pingar a matriz:
# ping 10.0.0.1
# echo 1 > /proc/sys/net/ipv4/ip_forward
Para adicionar a rota com destino à rede da filial, execute de dentro do servidor da matriz, o seguinte comando:
# route add -net 192.168.2.0/24 gw 10.0.0.2
Para adicionar a rota com destino à rede da matriz, execute de dentro do servidor da filial, o seguinte comando:
# route add -net 192.168.1.0/24 gw 10.0.0.1
Fonte: VPN em Linux com OpenVPN [Artigo]
- ADSL com IP: 200.217.222.222
- LAN com a classe: 192.168.1.0/24
- ADSL com IP: 200.141.64.33
- LAN com a classe: 192.168.2.0/24
Instalações e configurações
Instalar o pacote openvpn e biblioteca lzo:# apt-get install openvpn liblzo2-dev
Criar chave de segurança:
# cd /etc/openvpn
# openvpn --genkey --secret /etc/openvpn/chave
Verificar se a chave foi criada:
# cat /etc/openvpn/chave
Criar arquivo de configuração na matriz:
# vi /etc/openvpn/matriz.conf
Incluir o texto abaixo no arquivo: "/etc/openvpn/matriz.conf"
# Usar como interface o driver TUN
dev tun
# 10.0.0.1 IP que será assumido na matriz
# 10.0.0.2 IP remoto, ou seja, esse será o IP da filial
ifconfig 10.0.0.1 10.0.0.2
# Entra no diretório onde se encontram os arquivos de configuração
cd /etc/openvpn
# Indica que esse túnel possui uma chave de criptografia
secret chave
# OpenVPN usa a porta 5000/UDP por padrão.
# Cada túnel do OpenVPN deve usar
# uma porta diferente.
# O padrão é a porta 5000
port 5000
# Usuário que rodará o daemon do OpenVPN
user nobody
# Grupo que rodará o daemon do OpenVPN
group nobody
Usa a biblioteca lzo
comp-lzo
# Envia um ping via UDP para a parte
# remota a cada 15 segundos para manter
# a conexão de pé em firewall statefull
# Muito recomendado, mesmo se você não usa
# um firewall baseado em statefull.
ping 15
# Nível de log
verb 3
--script-security 3 system
# Informações de status da conexão
status /var/log/openvpn/matriz-staus.log
# Arquivo de log
log-append /var/log/openvpn/matriz.log
# Criando rotas
up /etc/openvpn/rotas.up
# Apagando rotas
down /etc/openvpn/rotas.down
# mkdir /var/log/openvpndev tun
# 10.0.0.1 IP que será assumido na matriz
# 10.0.0.2 IP remoto, ou seja, esse será o IP da filial
ifconfig 10.0.0.1 10.0.0.2
# Entra no diretório onde se encontram os arquivos de configuração
cd /etc/openvpn
# Indica que esse túnel possui uma chave de criptografia
secret chave
# OpenVPN usa a porta 5000/UDP por padrão.
# Cada túnel do OpenVPN deve usar
# uma porta diferente.
# O padrão é a porta 5000
port 5000
# Usuário que rodará o daemon do OpenVPN
user nobody
# Grupo que rodará o daemon do OpenVPN
group nobody
Usa a biblioteca lzo
comp-lzo
# Envia um ping via UDP para a parte
# remota a cada 15 segundos para manter
# a conexão de pé em firewall statefull
# Muito recomendado, mesmo se você não usa
# um firewall baseado em statefull.
ping 15
# Nível de log
verb 3
--script-security 3 system
# Informações de status da conexão
status /var/log/openvpn/matriz-staus.log
# Arquivo de log
log-append /var/log/openvpn/matriz.log
# Criando rotas
up /etc/openvpn/rotas.up
# Apagando rotas
down /etc/openvpn/rotas.down
# touch /var/log/openvpn/filial-status.log
# touch /var/log/openvpn/filial.log
# vim rotas.up
route add -net 192.168.0.0 netmask 255.255.255.0 gw 10.6.0.2 dev tun0
# vim rotas.down
route del -net 192.168.0.0 netmask 255.255.255.0 gw 10.6.0.2 dev tun0
Agora é só iniciar a VPN:
Executar comando para iniciar o OpenVPN:
# openvpn --config /etc/openvpn/matriz.conf -daemon &
Verificar se a conexão VPN na matriz está OK:
# ifconfig tun0
Configuração da filial
Instalar o pacote openvpn e biblioteca lzo:# apt-get install openvpn liblzo2-dev
Copiar a chave de segurança da matriz para a filial:
# scp /etc/openvpn/chave ip_filial:/etc/openvpn
Criar o arquivo de configuração na filial:
# vi /etc/openvpn/filial.conf
Incluir o texto abaixo no arquivo: "/etc/openvpn/filial.conf"
# Usar como interface o driver TUN
dev tun
# 10.0.0.1 IP que será assumido na matriz
# 10.0.0.2 IP remoto, ou seja, esse será o IP da filial
ifconfig 10.0.0.2 10.0.0.1
# Indica onde está o IP da Matriz (essa é a única linha que acrescentamos
# no arquivo de configuração da filial), o resto é tudo igual.
remote 200.217.222.222
# Entra no diretório onde se encontram os arquivos de configuração
cd /etc/openvpn
# Indica que esse túnel possui uma chave de criptografia
secret chave
# OpenVPN usa a porta 5000/UDP por padrão.
# Cada túnel do OpenVPN deve usar
# uma porta diferente.
# O padrão é a porta 5000
port 5000
# Usuário que rodará o daemon do OpenVPN
user nobody
# Grupo que rodará o daemon do OpenVPN
group nobody
# Usa a biblioteca lzo
comp-lzo
# Envia um ping via UDP para a parte
# remota a cada 15 segundos para manter
# a conexão de pé em firewall statefull
# Muito recomendado, mesmo se você não usa
# um firewall baseado em statefull.
ping 15
# Nível de log
verb 3
dev tun
# 10.0.0.1 IP que será assumido na matriz
# 10.0.0.2 IP remoto, ou seja, esse será o IP da filial
ifconfig 10.0.0.2 10.0.0.1
# Indica onde está o IP da Matriz (essa é a única linha que acrescentamos
# no arquivo de configuração da filial), o resto é tudo igual.
remote 200.217.222.222
# Entra no diretório onde se encontram os arquivos de configuração
cd /etc/openvpn
# Indica que esse túnel possui uma chave de criptografia
secret chave
# OpenVPN usa a porta 5000/UDP por padrão.
# Cada túnel do OpenVPN deve usar
# uma porta diferente.
# O padrão é a porta 5000
port 5000
# Usuário que rodará o daemon do OpenVPN
user nobody
# Grupo que rodará o daemon do OpenVPN
group nobody
# Usa a biblioteca lzo
comp-lzo
# Envia um ping via UDP para a parte
# remota a cada 15 segundos para manter
# a conexão de pé em firewall statefull
# Muito recomendado, mesmo se você não usa
# um firewall baseado em statefull.
ping 15
# Nível de log
verb 3
Iniciar o serviço OpenVPN na filial:
# openvpn --config /etc/openvpn/filial.conf -daemon &
Verificar se a conexão VPN na matriz está OK:
# ifconfig tun0
Testando conexão
Na matriz, pingar a filial:# ping 10.0.0.2
Na filial, pingar a matriz:
# ping 10.0.0.1
Criando as rotas
Ativar o roteamento no kernel em ambas as pontas (matriz e filial):# echo 1 > /proc/sys/net/ipv4/ip_forward
Para adicionar a rota com destino à rede da filial, execute de dentro do servidor da matriz, o seguinte comando:
# route add -net 192.168.2.0/24 gw 10.0.0.2
Para adicionar a rota com destino à rede da matriz, execute de dentro do servidor da filial, o seguinte comando:
# route add -net 192.168.1.0/24 gw 10.0.0.1
Fonte: VPN em Linux com OpenVPN [Artigo]
segunda-feira, 24 de junho de 2013
Redundância de PtP usando bonding com Mikrotik
Hoje falaremos sobre bonding,
que resumidamente sua função é de utilizar duas placas de rede ou mais,
para redundância ou soma de banda aumentando o limite de tráfego.
Hoje utilizaremos como redundância, no caso
de PtP e tambem de placa de rede, caso o link principal fique down (
não importando de quem foi a culpa, se foi do rádio ou da porta de rede )
ele vai passar automaticamente para o link secundário ( slave ).
Teremos o seguinte cenário, imagine que
temos um duplo ponto-a-ponto em dois pontos específicos, e o objetivo de
ambos no mesmo roteador em cada um dos pontos é que caso um PtP trave, o
outro entra em ação instantaneamente.
A ideia deste post é criar exatamente isso, uma redundância de PtP para o seu cliente com o minimo dificuldade.
Primeiro vamos as informações sobre os roteadores e os rádios.
Mikrotik 1ether1: 192.168.1.1/24radio1(link1): 192.168.1.2/24ether2: 192.168.2.1/24radio1(link2): 192.168.2.2/24bonding1: 192.168.100.1/24 ( essa interface ainda não existe )Mikrotik 2ether1: 192.168.1.4/24radio2(link1): 192.168.1.3/24ether2: 192.168.2.4/24radio2(link2): 192.168.2.3/24bonding2: 192.168.100.2/24 ( essa interface ainda não existe )
Como já expliquei como adicionar IPs nas
portas nos meus posts anteriores, vou presumir que você já saiba fazer
isso, agora vamos criar as interfaces bonding.
Mikrotik1Interfaces -> + ( adicionar ) -> Bonding
Irá aparecer a seguinte tela:
O Name você manterá bonding1 e logo após irá para a tela Bonding que veremos na foto abaixo:
Em Slaves colocaremos a
lista das portas podendo colocar quantas for possível, porém só iremos
colocar a ether1 e após clique na seta para baixo e irá aparecer um novo
campo para colocar a ether2.
Agora vem o segredo, em Mode escolheremos
a opção Active Backup, em que ela que fará todo o trabalho de verificar
o link principal ( que está selecionado na opção abaixo do Mode, Primary, você selecionará a ether1 ) se está de pé ou não e caso não esteja ele vai alterar automaticamente para o link secundário.
Caso você queira saber mais sobre as outras opções ( até mesmo de somar a banda dos dois links ) veja a Wiki da Mikrotik sobre a bouding.
Agora na lista de Interfaces, você irá ver que a sua bonding foi criada e basta você adicionar IP a essa nova porta.
Fazendo exatamente a mesma coisa no
Mikrotik 2, alterando apenas o Name da bonding para bonding2 e
adicionando o IP descrito a cima para o Mikrotik 2, está pronto a sua
redundância.
Você consegue pingar 192.168.100.2 do
Mikrotik 1 para o Mikrotik 2 sem problemas agora você basta alterar a
rota da sua rede interna da matriz para poder pingar a rede interna da
sua filial.
Rede Interna Matriz192.168.150.0/24Rede Interna Filial192.168.200.0/24
Acesse o seguinte menu
IP -> Routes -> + ( adicionar )
e criaremos a seguinte regra para o Mikrotik 1:
e para o Mikrotik 2 será:
pronto com isso sua rede Matriz pinga diretamente a rede da filial.
Com isso sua empresa estará segura caso um dos links de PtP caia, qualquer dúvida só comentar. Espero que tenha sido útil.
quarta-feira, 19 de junho de 2013
Ubuntu SC: Desabilitando a janela de relatório de erro no Ubuntu
Desde o Ubuntu 11.10 os relatórios de erros do Apport
– que até então permaneciam habilitados somente nas versões de testes –
estão ativados por padrão também na versão final, o que acaba
incomodando depois de um tempo.
Apesar do relatório quase nunca ser exibido para quem usa apenas os aplicativos nativos do sistema, o erro aparece sempre que alguma exceção é detectada visando relatar os problemas para os desenvolvedores do aplicativo.
Com base nisso, resolvi publicar uma simples solução para desabilitar este aviso na versão 12.04 do Ubuntu.
Apesar do relatório quase nunca ser exibido para quem usa apenas os aplicativos nativos do sistema, o erro aparece sempre que alguma exceção é detectada visando relatar os problemas para os desenvolvedores do aplicativo.
Aviso de relatório de erros do Apport no Ubuntu 12.04
No
entanto, como nem tudo são flores, muitas vezes aplicativos -
basicamente – mal desenvolvidos, desatualizados e/ou incompatíveis com o
sistema acabam gerando exceções repetidamente e, consequentemente,
vários avisos de relatório de erros do Apport, oferecendo desconforto para quem está utilizando o sistema.Com base nisso, resolvi publicar uma simples solução para desabilitar este aviso na versão 12.04 do Ubuntu.
Desabilitando o Apport
Para desabilitar o Apport é simples: basta digitar a linha de comando abaixo via terminal.sudo sed -i 's/enabled=1/enabled=0/' /etc/default/apport && sudo service apport stopFeito isso, o Apport estará desativado permanentemente em seu sistema. Se preferir, também pode desinstalar o pacote apport através da Central de programas do Ubuntu :)
sexta-feira, 14 de junho de 2013
bash - Dica simples para aumentar o tamanho do histórico
Essa dica é um complemento desta:
O que fazer para estender o histórico de 500 para 1000 linhas:
Adicione no arquivo ~/.bashrc:
Não se esqueça de atualizar o terminal:
$ source ~/.bashrc
Mas, frequentemente, é necessário limpar o terminal:
$ reset
Como disse, é uma dica bem simples, mas é sempre bom agrupar várias dicas úteis.
Espero ter ajudado.
O que fazer para estender o histórico de 500 para 1000 linhas:
Adicione no arquivo ~/.bashrc:
export HISTSIZE=1000
export HISTFILESIZE=$HISTSIZE
export HISTFILESIZE=$HISTSIZE
Não se esqueça de atualizar o terminal:
$ source ~/.bashrc
Mas, frequentemente, é necessário limpar o terminal:
$ reset
Como disse, é uma dica bem simples, mas é sempre bom agrupar várias dicas úteis.
Espero ter ajudado.
quinta-feira, 13 de junho de 2013
MiniDLNA - Servidor de mídia descomplicado
Introdução
Esse é meu primeiro artigo aqui no VOL, então, decidi abordar um tema que me deu algumas dores de cabeça durante um tempo.
Há muito tempo sou viciado em séries de TV, filmes, etc, mas às vezes, cansa e tal, até por questão de qualidade mesmo.
Mas, enfim, já tem um bom tempo que venho buscando uma maneira de montar um media center. Já busquei na Internet, já vim aqui no VOL, mas nenhuma das soluções que encontrei foi totalmente satisfatória. Entre elas, estavam:
Porém, há alguns meses atrás, um monstro de 29" CRT que tinha aqui em casa finalmente morreu... Então, junto com a nova 'moradora', uma SmartTV Samsung com Wi-Fi e tudo mais, um amigo me apresentou um programinha muito simples, mas com um potencial incrível, de fácil instalação e manutenção, além de leve e estável. E é justamente sobre essa 'benção' que venho compartilhar com vocês.
P.S.: antes de irmos para a parte interessante, deixe-me apresentar o material usado nesse processo:
Apresento-lhes: MiniDLNA
MiniDLNA é um servidor objetivo, compatível com clientes DLNA/UPnP. O daemon MiniDLNA compartilha arquivos de mídia (músicas, imagens e vídeos) com clientes numa rede.
Esses clientes incluem aplicações, tais como VLC e XMBC, além de dispositivos, como por exemplo, smartphones, TVs e consoles de jogos (PS3 e Xbox 360).
O MiniDLNA é um alternativa leve ao MediaTomb, por exemplo. Ele não possui uma interface WEB para configuração, as poucas necessárias devem ser feitas editando um arquivo de texto.
Há muito tempo sou viciado em séries de TV, filmes, etc, mas às vezes, cansa e tal, até por questão de qualidade mesmo.
Mas, enfim, já tem um bom tempo que venho buscando uma maneira de montar um media center. Já busquei na Internet, já vim aqui no VOL, mas nenhuma das soluções que encontrei foi totalmente satisfatória. Entre elas, estavam:
- XMBC
- PS3MediaServer
- MediaTomb
- uShare
Porém, há alguns meses atrás, um monstro de 29" CRT que tinha aqui em casa finalmente morreu... Então, junto com a nova 'moradora', uma SmartTV Samsung com Wi-Fi e tudo mais, um amigo me apresentou um programinha muito simples, mas com um potencial incrível, de fácil instalação e manutenção, além de leve e estável. E é justamente sobre essa 'benção' que venho compartilhar com vocês.
P.S.: antes de irmos para a parte interessante, deixe-me apresentar o material usado nesse processo:
- Notebook STI IS1462 com Slackware 14
- Roteador Intelbras WRN240
- SmartTV Samsung - SERIES 5 - 5300
Apresento-lhes: MiniDLNA
MiniDLNA é um servidor objetivo, compatível com clientes DLNA/UPnP. O daemon MiniDLNA compartilha arquivos de mídia (músicas, imagens e vídeos) com clientes numa rede.
Esses clientes incluem aplicações, tais como VLC e XMBC, além de dispositivos, como por exemplo, smartphones, TVs e consoles de jogos (PS3 e Xbox 360).
O MiniDLNA é um alternativa leve ao MediaTomb, por exemplo. Ele não possui uma interface WEB para configuração, as poucas necessárias devem ser feitas editando um arquivo de texto.
Instalação / Configuração
Instalação
Em primeiro lugar, o MiniDLNA depende diretamente apenas do pacote ffmpeg.Debians-like e RPMs-likes: os repositórios oficiais já contém os pacotes já compilados. Além do que, também podem ser encontrados no site:
Slackware: os pacotes podem ser obtidos no SlackBuilds:
E para as demais distribuições, a página oficial do projeto é:
Se você baixar os arquivos binários ".deb", ".rpm", basta iniciá-lo normalmente com dois cliques ou pelo terminal, usando o gerenciador de pacotes da sua distribuição.
Se você, assim como eu, prefere compilar o código, o procedimento é o padrão:
$ ./configure
$ make
# make install
Configuração
O MiniDLNA não possui uma manpage, para acessar a ajuda, use:$ minidlna -h
Mas, tome isso apenas como um complemento, porque a maior parte do que é mostrado, pode ser definido do arquivo "minidlna.conf".
O arquivo de configuração do programa é criado no diretório "/etc", o caminho completo para o arquivo é: "/etc/minidlna.conf"
No arquivo a seguir, mostrarei as configurações básicas para o uso do servidor:
#network_interface=eth0 # Se estiver comentada, ela é auto configurada, porém, por vezes, é
necessário definir manualmente.
media_dir=/home/usuario/midia # Nesta área são definidos os diretórios de
media_dir=A,/home/usuario/musicas #origens dos arquivos de mídia.
media_dir=P,/home/usuario/imagens
media_dir=V,/home/usuario/videos
friendly_name= # Esse item é opcional, mas bem útil, é aqui que será definido o nome pelo qual seu servidor será reconhecido.
db_dir=/var/cache/minidlna # Essa linha não pode estar comentada, ela mostra o caminho para o banco de dados.
log_dir=/var/log # Essa linha não pode estar comentada.
inotify=yes # Use 'no', se você tem poucas fontes de dados, será necessário o servidor se um novo arquivo de mídia for inserido.
media_dir=/home/usuario/midia # Nesta área são definidos os diretórios de
media_dir=A,/home/usuario/musicas #origens dos arquivos de mídia.
media_dir=P,/home/usuario/imagens
media_dir=V,/home/usuario/videos
friendly_name= # Esse item é opcional, mas bem útil, é aqui que será definido o nome pelo qual seu servidor será reconhecido.
db_dir=/var/cache/minidlna # Essa linha não pode estar comentada, ela mostra o caminho para o banco de dados.
log_dir=/var/log # Essa linha não pode estar comentada.
inotify=yes # Use 'no', se você tem poucas fontes de dados, será necessário o servidor se um novo arquivo de mídia for inserido.
A linha "media_dir=/home/usuario/midia", mostra que ele vai buscar os arquivos no diretório descrito, porém, sem distinção de tipo, isso é viável em alguns casos (poucos arquivos para serem exibidos).
Porém, se assim como eu, o seu objetivo for manter um mini cinema em casa (hoje tenho uns 160 GB de filmes, 393 GB de séries e 124 GB de músicas), aí a coisa complica um pouco, pois manter tudo isso misturado é impensável.
Para isso, temos basicamente três marcadores, que dizem ao servidor que tipo de arquivo ele vai buscar em determinado diretório:
- A → para áudio (e.g.: media_dir=A,/home/usuario/musicas)
- P → para imagens (e.g.: media_dir=P,/home/usuario/imagens)
- V → para vídeos (e.g.: media_dir=P,/home/usuario/videos)
Em funcionamento
Após a instalação e as configurações já devidamente efetuadas, a operação propriamente dita, é a parte mais trivial de todo o processo.Depois de inserir o caminho para os diretórios onde estarão armazenados os arquivos de mídia, precisamos apenas executar o seguinte comando no terminal:
# minidlna -d -R
Ou, para quem preferir, pode-se criar um lançador ou um pequeno script para iniciar o serviço.
O parâmetro "-d" (opcional) faz com que o MiniDLNA rode em modo debug. Nesta opção, ele não ficará em segundo plano, em compensação, será mostrado todo e qualquer evento durante a execução do servidor.
Já o parâmetro "-R" (recomendo) força o MiniDLNA para que faça o rescan completo dos diretórios cada vez que ele for iniciado com esse parâmetro, buscando por novos itens.
As imagens abaixo representam dois clientes distintos para o serviço do MiniDLNA: Nos testes, foi o usado o player VLC, mas nada impede de usar outro. Podemos ver aqui que ele listou quatro diretórios dentro do TsUrIu_DLNA_Server, que, por sua vez, é o nome do meu servidor, (Browse Folders, Music, Pictures e Video), sendo que no meu arquivo conf, só estão marcados Music e Video, se eu tentar acessar os outros, estarão obviamente vazios. Como a TV é Samsung, ela possui o AllShare que usa o mesmo protocolo DLNA, então, acabou por identificar o servidor como sendo AllShare. Logo em seguida, vemos novamente o nome que identifica o servidor.
Conclusão
Como vocês puderam conferir, o MiniDLNA é um programa poderoso, cumpre plenamente o que promete.O serviço pode ser acessado de qualquer dispositivo e/ou sistema que possua suporte ao protocolo DLNA, sendo assim, Tablets e Smartphones também estão inclusos.
Além do que, existem aplicativos para Android que possuem a mesma função do MiniDLNA.
Referências
- MiniDLNA « ArchWiki
- MiniDLNA « OpenWrt Wiki
- DLNA Linux « OPPOwiki
- DLNA - miniDLNA on Debian « ID's blog
- https://www.youtube.com/watch?v=hxL3CRYlJPE&t=613s
Comandos grep, fgrep e egrep
Procuram em um ou mais arquivos por linhas que contém um padrão de busca (expressão regular simples ou estendida).
Sintaxe:
grep [opções] padrão arquivos
fgrep [opções] padrão arquivos
egrep [opções] padrão arquivos
Opções:
Observação: recomenda-se que o padrão esteja entre apóstrofos ('), pois alguns caracteres tem significado especial para o shell e podem ser interpretados erroneamente.
Exemplos:
Procura a palavra "tee" dentro do arquivo /etc/info-dir e exibe o número da linha onde ela ocorre:
$ grep -n tee /etc/info-dir
$ grep -r mouse /etc/*
Outros exemplos:
$ grep -n root /etc/passwd
$ grep -v bash /etc/passwd | grep -v nologin
$ grep -c false /etc/passwd
Até mais, pessoal. =D
Sintaxe:
grep [opções] padrão arquivos
fgrep [opções] padrão arquivos
egrep [opções] padrão arquivos
Opções:
- -F :: O mesmo que fgrep. Interpreta padrão como uma expressão regular sem metacaracteres.
- -E :: Similar a egrep. Interpreta padrão como uma expressão regular estendida.
- -r :: Faz procura recursiva.
- -e expr :: Procura pela expressão regular expr.
- -n :: Exibe o número de linhas que contém o padrão.
- -c :: Exibe apenas o número de linhas que contém o padrão de busca.
- -f arquivo :: Lê o padrão a partir do arquivo especificado.
- -i :: Não diferencia maiúsculas de minúsculas na procura.
- -l :: Exibe os nomes de arquivos que contém o padrão.
- -v :: Exibe as linhas que não contém o padrão.
- -w :: Procura apenas palavras inteiras.
Observação: recomenda-se que o padrão esteja entre apóstrofos ('), pois alguns caracteres tem significado especial para o shell e podem ser interpretados erroneamente.
Exemplos:
Procura a palavra "tee" dentro do arquivo /etc/info-dir e exibe o número da linha onde ela ocorre:
$ grep -n tee /etc/info-dir
70:* tee: (sh-utils) tee invocation. Redirect to multiple filesProcura todos os arquivos abaixo de /etc que possuem a palavra mouse:
$ grep -r mouse /etc/*
Outros exemplos:
$ grep -n root /etc/passwd
$ grep -v bash /etc/passwd | grep -v nologin
$ grep -c false /etc/passwd
Até mais, pessoal. =D
Synapse, uma alternativa ao Dash do Unity?
O propósito aqui não é comparar o Synapse ao Dash do Unity, mas sim
mostrar uma forma de ter o mesmo tipo de produtividade que se tem com o
Dash, mas sem o Unity. O Synapse tem muitos plugins semelhantes às
lentes do Dash, e mesmo o Dash tendo mais funções, o Synapse ainda é uma
boa alternativa.
http://www.youtube.com/watch?feature=player_embedded&v=y7TvNrLiwHs
Synapse: http://synapse.zeitgeist-project.com/wiki (Off no momento desta publicação)
Synapse (launchpad): https://launchpad.net/synapse-project
Zeitgeist: http://zeitgeist-project.com/ (Off no momento desta publicação)
Zeitgeist (launchpad): https://launchpad.net/zeitgeist-project
Como instalar o Synapse:
sudo add-apt-repository ppa:synapse-core/ppa
sudo apt-get update
sudo apt-get install synapse
http://www.youtube.com/watch?feature=player_embedded&v=y7TvNrLiwHs
Synapse (launchpad): https://launchpad.net/synapse-project
Zeitgeist: http://zeitgeist-project.com/ (Off no momento desta publicação)
Zeitgeist (launchpad): https://launchpad.net/zeitgeist-project
Como instalar o Synapse:
sudo add-apt-repository ppa:synapse-core/ppa
sudo apt-get update
sudo apt-get install synapse
Instalando o SimpleScreenRecorder no Ubuntu
SimpleScreenRecorder
é um gravador de tela Qt para Linux que, apesar do nome, vem com mais
recursos do que outras ferramentas semelhantes. A aplicação é muito fácil
de usar e as configurações padrão devem ser suficientes para a maioria
dos casos, pois dnormalmente não é necessário alterar as configurações.
Com ele, você pode gravar a tela inteira (com suporte multi-monitor),
gravar um retângulo fixo, siga o cursor ou gravar aplicativos OpenGL,
(que pode ser usado para gravar jogos).
Características do SimpleScreenRecorder:
- grava a tela inteira ou parte dela, ou grava aplicativos OpenGL diretamente (semelhante ao Fraps no Windows);
- sincroniza o áudio e o vídeo corretamente (um problema comum com VLC e ffmpeg/avconv);
- mais rápido do que o VLC e ffmpeg/avconv;
- reduz a taxa de quadros de vídeo se o computador estiver muito lento (em vez de usando todos os seus RAM como o VLC);
- totalmente multithread: pequenos atrasos em qualquer um dos componentes nunca irão bloquear os outros componentes, resultando em um vídeo mais suave e melhor desempenho em computadores com vários processadores;
- pausar e continuar a gravação a qualquer momento (ou clicando em um botão ou usando uma tecla de atalho);
- mostra estatísticas durante a gravação (tamanho de arquivo, taxa de bits, tempo de gravação total, taxa de quadros reais,…);
- pode mostrar uma visualização durante a gravação, para que você não perca tempo gravando alguma coisa só para descobrir depois que alguma configuração estava errada;
É importante lembrar que o suporte OpenGL é
atualmente experimental e ele pode falhar ou ele pode nem mesmo
funcionar em tudo para você. Além disso, o
aplicativo tenta capturar os quadros antes que eles sejão exibidos na
tela e isso pode ser considerado um hack em alguns jogos e você pode ser
banido para verificar se você tem permissão para gravar um jogo antes
de utilizar este recurso.
Iniciando o aplicativo, você verá uma interface simples que permite que você selecione a entrada de vídeo, escolha
se você deseja gravar o cursor ou se você quer gravar o microfone e
definir a taxa de quadros (vide imagem na introdução desse texto). Ao
clicar em “Continuar”, você pode selecionar o recipiente para o seu
screencast (MP4, Matroska, WebM, OGG ou “Outros”, que você pode usar
para selecionar qualquer recipiente apoiado por Libav), nome do arquivo,
codec de vídeo (H.264, VP8 , ou Theora, assim como o container,
selecione “Outros”, que permite que você use qualquer codec suportado
pelo Libav), defina a qualidade do vídeo ou preset (padrão predefinido):
Na próxima tela, você pode iniciar a gravação, permitir a gravação
hotkeys que você pode pausar / retomar a gravação através de um atalho
de teclado e muito mais.
Instalando o SimpleScreenRecorder
Usuários do Ubuntu podem instalar o SimpleScreenRecorder usando seu PPA oficial. Para adicionar o PPA e instalar o aplicativo, faça o seguinte:
Passo 1. Abra um terminal (Usando o Dash ou pressionando as teclas CTRL+ALT+T);
Passo 2. Adicione o repositório do aplicativo com o seguinte comando:
Passo 2. Adicione o repositório do aplicativo com o seguinte comando:
sudo add-apt-repository ppa:maarten-baert/simplescreenrecorder
Passo 3. Atualize o Apt digitando o comando:sudo apt-get update
Passo 4. Agora instale o programa com o comando:sudo apt-get install simplescreenrecorder
Passo 5. Se você quer gravar jogos de 32 bits, certifique-se também instalar simplescreenrecorder-lib:i386 com o comando:sudo apt-get install simplescreenrecorder-lib:i386
Pronto. Diga como foi sua experiência com esse aplicativo nos comentários para que os outros leitores também se informem.
Assinar:
Postagens (Atom)