Arquivo da categoria: Dicas Linux

Executando o serviço ffserver como daemon.

ffmpeg-logo

No pacote ffmpeg, encontramos o  programa  ffserver. Hoje esbarrei  com a necessidade de executá-lo como um serviço.  Constatei, que no rpm  do OpenSuse  11.1, o script para iniciar  a encerrar o  serviço  não esta  disponível. Sendo assim, a seguir o script que devemos armazenar na pasta /etc/inid.d :

Em primeiro lugar, comente a linha  a seguir no arquivo /etc/ffserver.conf:

#NoDaemon

Agora copie e salve  na  pasta /etc/init.d o arquivo ffserver com o conteúdo a seguir:

#! /bin/sh
# Author: Alessandro de Oliveira Faria (A.K.A. CABELO) <alessandrofaria@netitec.com.br>
#
# /etc/init.d/ffserver
#   and its symbolic link
# /usr/sbin/rcffserver
#
### BEGIN INIT INFO
# Provides:       ffserver
# Required-Start:
# X-UnitedLinux-Should-Start:
# Required-Stop:
# Default-Start:  3 5
# Default-Stop:
# Description:   Video streaming service.
### END INIT INFO
. /etc/rc.status
rc_reset
FFSERVER=/usr/bin/ffserver
CONFFILE=/etc/ffserver.conf
PID_FILE=/var/run/ffserver.pid
case "$1" in
 start)
 echo -n "Starting ffserver daemon "
 checkproc -p ${PID_FILE}  ${FFSERVER}
 case $? in
 0) echo -n "- Warning: daemon already running. " ;;
 1) echo -n "- Warning: ${PID_FILE} exists. " ;;
 esac
 $FFSERVER -f $CONFFILE 1> /dev/null 2> /dev/nul
 echo `pidof ffserver` > ${PID_FILE}
 rc_status -v
 ;;
 stop)
 echo -n "Shutting ffserver daemon "
 checkproc -p ${PID_FILE} ${FFSERVER} || \
 echo -n " Warning: daemon not running. "
 killproc -p ${PID_FILE} ${FFSERVER}
 rc_status -v
 ;;
 restart)
 $0 stop
 $0 start
 rc_status
 ;;
 status)
 echo -n "Checking for ffserver daemon "
 checkproc -p ${PID_FILE} ${FFSERVER}
 rc_status -v
 ;;
 *)
 echo "Uso: rcffserver {start|stop|restart|status}"
 exit 1
esac
exit 0

Mais  informações sobre o assunto, visite o Viva O Linux. Yes!

Qemu: Montando imagens.

Para montar  uma image  do QEMU  no filesystem,  devemos calcular  o [offset] da  partição. Ou seja multiplicar o setor inicial por 512 (quantiade de  bytes por setor). Veja o simples exemplo abaixo:

# sfdisk -luS hda1DB91.img
Disco hda1DB91.img: não foi possível obter a geometria

Disco hda1DB91.img: 248 cilindros, 255 cabeças, 63 setores/trilha
Unidades = setores de 512 bytes, contando a partir de 0

 Device Boot    Start       End   #sectors  Id  System
hda1DB91.img1            63    530144     530082  82  Linux swap / Solaris
hda1DB91.img2   *    530145   3984119    3453975  83  Linux
hda1DB91.img3             0         -          0   0  Vazia
hda1DB91.img4             0         -          0   0  Vazia

Efetue  o seguinte cálculo (setor inicial*512):

530145*512= 271434240

Agora  utilize o comando mount.

# mount -o loop,ro,noexec,offset=271434240 hda1DB91.img /mnt/suse9.1

Simples não…

Como copiar o seu CD do Playstation 1 no HD?

playstationGosto e muito dos  jogos do playstation 1.   Sendo assim, acho que não  preciso nem mencionar que utilizo o emulador ePSXe Yes!.

A seguir, os passos para criar uma imagen do seu jogo preferido no HD.  Vale a  pena ressaltar que esta imagen além de servir como backup, podemos utiliza-la no emulador ePSXe   ( Viva  \o/).

Em  primeiro lugar,  devemos detectar o ID do device (  no meu caso 3,0,0).

$ cdrecord -scanbus
scsibus3:
 3,0,0   300) 'TEAC    ' 'DVD+-RW DVW28SLC' 'A.06' Removable CD-ROM
 3,1,0   301) *
 3,2,0   302) *
 3,3,0   303) *
 3,4,0   304) *
 3,5,0   305) *
 3,6,0   306) *
 3,7,0   307) *

Em seguida,  insira  o Cd do game no driver  e execute o comando cdrdao como  no exemplo  a seguir.

$ cdrdao read-cd --read-raw --datafile spiderman.bin --device 3,0,0 --driver generic-mmc-raw spiderman.toc
Cdrdao version 1.2.2 - (C) Andreas Mueller <andreas@daneb.de>
 SCSI interface library - (C) Joerg Schilling
 Paranoia DAE library - (C) Monty

Check http://cdrdao.sourceforge.net/drives.html#dt for current driver tables.

WARNING: the deprecated pseudo SCSI syntax found as device specification.
Support for that may cease in the future versions of wodim. For now,
the device will be mapped to a block device file where possible.
Run "wodim --devices" for details.
Using libscg version 'Cdrkit-1.1.8'

3,0,0: TEAC DVD+-RW DVW28SLC    Rev: A.06
Using driver: Generic SCSI-3/MMC (raw writing) - Version 2.0 (options 0x0000)

Reading toc and track data...

Track   Mode    Flags  Start                Length
------------------------------------------------------------
 1      DATA    4      00:00:00(     0)     68:10:35(306785)
Leadout DATA    4      68:10:35(306785)

PQ sub-channel reading (data track) is supported, data format is BCD.
Raw P-W sub-channel reading (data track) is supported.
Copying data track 1 (MODE2_RAW): start 00:00:00, length 68:10:35 to "spiderman.bin"...
00:13:00

Para gravar o CD  a  partir  da  imagen,  basta  utilizar o comando a seguir…

$ cdrdao write –eject –speed 4 –device 3,0,0 –driver generic-mmc spiderman.toc

Fonte:  www.linuxnarede.com.br

Download único dos pacotes multimídia para diversas máquinas.

ympbuttonPara  instalar os pacotes multimídia no OpenSuse (Yes !!!), basta clicar nos links codecs-kde.ymp ou codecs-gnome.ymp disponíveis AQUI!.  Porém diversos pacotes RPM  não presente no DVD,  são baixados na internet.  Para dispensar  a  tarefa de downloads  repetitivos, basta modificar  a opção keeppackages=1 do arquivos de repositórios localizado em /etc/zypp/repos.d

Após a instalação na primeira máquina, basta copiar os  pacotes salvos na pasta /var/cache/zypp/packages/ para todos os  outros equipamentos  e executar o comado rpm  -ivh …

Gravando conversas no Skype (em Linux CLARO!)

No portal  Viva o Linux,  existe um artigo explicando como gravar conversas no  Skype com o pacote Skype Call Recorde. Vale a  pena conferir…

Testei o  pacote, compilando  o código fonte e  funcionou bem…

$ wget http://atdot.ch/scr/files/0.8/skype-call-recorder-0.8.tar.gz
$ cmake .
$ make

Para instalar, logado como root:

# make install

Mais detalhes no Viva  O Linux e no site do  projeto.

Matroska: Container de audio e vídeo.

mkvBaseado na Wikipédia, Matroska é o nome de uma iniciativa ousada para a criação de formatos universais de containers de audio e video digitais. O nome é derivado da grafia romana matrioska – bonecas típicas russas, no qual uma boneca grande contém outra menor, que contém outra, e assim sucessivamente.

Sendo  assim, os  formatos  ligados ao Matroska permitem conter dados resultantes de diferentes tipos de codificações (ou codecs) de vídeo (DivX, Xvid, RV9, etc.)  e som (MP3, MP2, AC3, Ogg, AAC, DTS, PCM).  Para criar  arquivos de vídeo MKV  (Matroska) a  partir  de vídeos de  diversos codecs junto ao arquivo  de legenda  (SRT, ÁS, SEU, USF, etc.),  sugiro ler  este artigo no Viva O Linux.

Resumidamente, Matroska é um container que trabalha em cruz, sem patente, com um formato de código aberto  (CLARO). Matroska não é um codec (como MPEG-1, XviD, DivX, ou VP3), e sim um container onde podemos pode colocar video(s) + audio(s) + legenda(s).  Para os usuários Windows  (CREDO), sugiro este link para download.

Script para download de arquivos no rapidshare.

rslogoRapidShare é um serviço de compartilhamento de arquivos muito utilizado na internet. Geralmente ao clicarmos no link para download de um determinado arquivo, é muito comum o redirecionado para o RapidShare. Este serviço de hospedagem permite o upload do arquivo para posteriormente compartilharmos o link fornecido pelo serviço.

É muito comum, surgir a necessidade para efetuar o download de um único arquivo ou múltiplos no servidor ao final do expediente. Assim no dia seguinte, restando apenas a tarefa de conferir a presença de todos os arquivos baixados sequencialmente durante a madrugada no HD do server.

Assim que o serviço Rapidshare desabilitou o captcha para usuarios free, tornou-se possível o download automático com shell script. O projeto rapidshare-dl.sh permite esta tarefa. A seguir uma receita de bolo passo-a-passo de como  utiliza-lo.

Download  e  Instalação:

$ wget http://tokland.googlecode.com/svn/trunk/rapidshare/rapidshare-dl.sh
$ sudo cp rapidshare-dl.sh /usr/local/bin/rapidshare-dl
$ sudo chmod +x /usr/local/bin/rapidshare-dl

Download  de  um único  arquivo:

$ rapidshare-dl http://link_rapidshare http://outro_link_rapidshare

Download utilizanto um  arquivo  texto  contendo uma  lista de links:

$ rapidshare-dl nome_do_arquivo.txt

Download  de todo  o site  com links Rapidshare (cuidado hehehe) :

$ rapidshare-dl http://link_do_servidor

Mais informaões em http://code.google.com/p/megaupload-dl/wiki/RapidShare.

Nostalgia:XTRS emulando o CP500 da Prológica no Linux.

T_CP-500_Operacao_e_Linguagem_BASICBons tempos … meu primeiro emprego “NOVA ERA – LIVRARIA E PAPELARIA – 1986”.  Naquele tempo, eu aprendia na linguagem BASIC  a programar  baseando-se  nas orientações do Odair Tostes e do meu sócio Alexandre  de Castro (Indio). O equipamento que utilizávamos  naquele  época era  nada mais, nada menos que o  CP 50o da Prológia (TRS-80).

Para quem desconhece, baseado na wikipédia,” o TRS-80 foi o nome dado à linha de microcomputadores produzidos pela Tandy Corporation e vendidos nas lojas RadioShack da Tandy, de fins da década de 1970 até meados da década de 1980. Hobbistas, usuários domésticos e pequenas empresas eram os consumidores visados.”

cp500_02No site  do Miguel Dutra, encontraremos diversos links, manuais  em pdf,  inclusive programas emuladores e muito mais . Porém, navegando na internet, encontrei  e instalei o xtrs. Um projeto open-source para Unix, Linux e derivados, cujo o objetivo é emular  os equipamentos da linha TRS-80. Por enquanto , disponibilizo apenas o vídeo  logo a seguir.

Em breve,  publicarei  um tutorial/dica no Viva O Linux  de como compilar e instalar este  emulador. Para efetuar o download dos fontes, abaixo o link com o  comando wget.

$ wget http://www.tim-mann.org/trs80/xtrs-4.9d.tar.gz


 Sobre o CP 500
Fabricante: Prológica Ind. e Com. de Microcomputadores Ltda País: Brasil Linha: TRS-80 Compatibilidade: TRS-80 Modelo III Ano de lançamento: Abr/1982 Processador: Z 80A Clock: 2 MHz Memória RAM: 48 Kbytes Memória ROM: 16 Kbytes Tela: 16 linhas x 64 colunas Modelos: CP 500, CP 500/M80, CP 500/M80C, CP 500 Turbo 

Outros links sobre o assunto: