Posts Tagged ‘open’

Una-se a Revolução (de Pablo Lorenzzoni)

Wednesday, June 29th, 2011

Una-se à Revolução

Pablo Lorenzzoni

Desde que os softwares livres e abertos apareceram, muita coisa tem acontecido. Novas escolhas vêm sendo feitas, tanto pela indústria do software, que agora pode optar por modelos alternativos de desenvolvimento, quanto pelo usuário, para quem um novo (e aberto) mundo é apresentado. Mas e o usuário não técnico? Sim… aquele que comprou o computador pronto na loja e nem sabia que o Windows não era necessário. Aquele que, quando enfrentava um erro que acabava travando o computador, exclamava “Maldito computador” ao invés de “Maldito Windows”. Foi pensando nesse usuário que esse documento foi escrito: apresentar-lhe essa revolução para que, de expectador atônito, ele passem a agente da sua própria revolução pessoal. Vamos lá….


1. Pré-História da Revolução

Nos anos 60 e 70, em meio à revolução hippie, a pré-história da revolução atual começou. Quase paralelamente se desenvolveram o que hoje conhecemos como cultura hacker, Unix e linguagem de programação C.

O hacker é, fundamentalmente, um especialista, um solucionador de problemas. Seus primeiros representantes, provavelmente, foram os estudantes do MIT, que, com apenas o horário noturno para estudar os circuitos eletrônicos dos primeiros computadores, passavam a noite descobrindo cada esquina e cada curva na intrincada arquitetura daquelas máquinas.

Hoje existem várias definições para hacker e para cultura hacker, mas a idéia principal é a de que existe uma comunidade, uma cultura compartilhada de programadores experts e magos da conectividade cujo passado histórico começa há décadas, com os primeiros computadores compartilhados e as primeiras experiências com a ARPAnet (a precursora da Internet). Os membros dessa cultura (os hackers) construíram a Internet. Os hackers fizeram do Unix o sistema operacional que ele é hoje. Os hackers construíram a Usenet. Os hackers fizeram a World Wide Web funcionar. Esqueça o que a mídia tem publicado a respeito deles. É lógico que, com tanto conhecimento e sendo composto por indivíduos tão heterogêneos, alguns usariam esses conhecimentos para invadir computadores de bancos, roubar dinheiro, bisbilhotar no computador dos outros. Mas chamar Ken Thompson, Dennis Ritche, Linus Torvalds, Richard Stallman, Eric Raymond e Alan Cox de criminosos é, no mínimo, leviano. A verdade é que a maioria dos hackers está interessado em resolver os próprios problemas e contribuir para a comunidade com a solução que encontrou.

O Unix é o produto da mente de um hacker da Bell Labs: Ken Thompson. Seu precursor foi o Multics, um sistema operacional de tempo compartilhado. O Multics foi a base de testes para a idéia de Thompson de que a complexidade do sistema operacional pudesse ser ocultado do usuário e da maioria dos programadores de modo que as operações fossem transparentes. A idéia era construir um sistema mais simples para que mais trabalho real fosse feito. O Multics acabou morrendo, mas Thompson continuou a desenvolver suas idéias em outra base de hardware, no que, mais tarde, acabou sendo conhecido por Unix.

Um outro hacker conhecido como Dennis Ritche inventou uma nova linguagem chamada “C” para ser utilizada no Unix de Thompson. O nome “C” deve-se ao fato de Ritche ter baseado seu trabalho na linguagem conhecida por BCPL (ainda em uso em alguns lugares da Europa). Sua primeira (e infrutífera) reimplementação recebeu o nome de “B”, logo, parecia lógico que a segunda reimplementação fosse denominada “C”.

A grande sacada da associação de Thompson e Ritche era a portabilidade. Acreditando que um sistema operacional completo pudesse ser desenvolvido em C (uma linguagem de médio nível), ao invés de Assembly (uma linguagem de baixo nível), o Unix foi escrito em C e portado para inúmeras arquiteturas, apresentando a mesma “cara” seja qual for o computador utilizado. O próprio nome Unix reflete isso numa das primeiras ironias da computação aberta: Unix – único versus Multics – múltiplo.

Além da portabilidade, tanto Unix como C tinham outras importantes características. Ambos foram construídos com a filosofia do mais simples (conhecido, em inglês, como KISS – Keep It Simple, Stupid), de forma que um programador poderia facilmente conhecer toda a estrutura lógica do C de cabeça, sem precisar recorrer aos pesados manuais de antigamente. O Unix, por sua vez, foi estruturado em pequenos blocos com funções simples que se combinavam para aumentar a complexidade das operações. Nem mesmo os próprios programadores desses blocos seriam capazes de prever a multiplicidade de maneiras como eles são utilizados em conjunto.

Estava formado o caldo inicial no qual se desenvolveria a grande revolução que presenciamos hoje.


2. A Revolução Começa

Em 1984, outro hacker saído do MIT, tornou-se pai de uma filosofia que, sustentada por uma forte base na comunidade hacker, no Unix e na linguagem C, acabou por começar uma revolução digital. Seu nome é Richard M. Stallman (ou RMS, como ele mesmo prefere).

A filosofia do software livre se baseia em uma definição de liberdade. Por causa da ambigüidade em inglês da palavra “free”, tornou-se necessário esclarecer que Free Software não se refere a preços, mas à liberdade dos usuários de executar, copiar, distribuir, estudar, modificar e melhorar o software. Mais precisamente, refere-se à quatro tipos de liberdades:

  1. A liberdade de executar programas para qualquer propósito.
  2. A liberdade de estudar como o programa funciona e adaptá-lo às suas necessidades (o acesso ao código fonte é essencial para isso).
  3. A liberdade para redistribuir cópias do programa de modo que seu vizinho se beneficie.
  4. A liberdade de melhorar o programa e distribuir o seu aperfeiçoamento para o público, de modo que toda a comunidade se beneficie (novamente o código fonte é necessário)

Em torno dessa filosofia, a Fundação do Software Livre (Free Software Foundation – FSF) foi criada para fomentar projetos com a mesma filosofia. O primeiro projeto da FSF foi o projeto GNU, inaugurando uma longa série de acrônimos irônicos para denominar projetos de software livre (GNU é um acrônimo recursivo que significa “GNU’s Not Unix”).

Mas além de um acrônimo curioso, o objetivo do projeto GNU era (e ainda é) criar um sistema operacional completo que seja compatível com o Unix, mas desvinculado da imagem comercial que o Unix adquiriu ao longo de sua história. Atualmente o projeto GNU é o responsável por quase todas as ferramentas que tornaram um Unix livre possível. No entanto, o grande objetivo de criar um kernel (núcleo do sistema) ainda não atingiu o mesmo nível que as outras aplicações.

Talvez a maior contribuição que RMS tenha feito não seja no campo do software, mas no campo legal. Através da FSF, RMS desenvolveu ao longo dos anos as famosas licenças de copyleft (mais uma ironia, contrapondo-se à copyright). Essas licenças (fortemente baseadas no direito autoral) deram instrumentos legais para que os hackers pudessem liberar seus trabalhos para o público sem medo que seu código fosse roubado por alguma grande empresa e, ao mesmo tempo, assegurando que ele ficaria livre para sempre.

Basicamente, ao utilizar uma das licenças redigidas e legalmente sustentadas pela FSF em um de seus programas (como a GPL – General Public License – por exemplo), o programador assegura que seu código permanecerá livre pois toda e qualquer modificação nele somente poderá ser liberado se for feito pela mesma licença. Mais tarde, se o programador original decidir fechar o programa [1] quase certamente, alguém continuará mantendo o programa livre por dividir o desenvolvimento começando por uma versão livre anteriormente licenciada [2] .

Pense nas licenças da FSF como uma carta de alforria do software. É como se o software dissesse ao seu programador: “Sim… você me criou, mas tem a obrigação de dizer a todos como fez. Não… não adianta me prender. Se você fizer isso outra pessoa virá me soltar e você não terá nenhum controle sobre mim”.


3. De Helsinki, a peça que faltava

O projeto GNU vinha muito bem, provendo os hackers do mundo inteiro com milhares de linhas de código em C para suas ferramentas compatíveis com o Unix, e com o famoso compilador GCC, que impulsionava centenas de projetos livres em todo o mundo. Mas faltava uma peça, e não qualquer peça, faltava o kernel. O kernel de um sistema operacional é o núcleo do sistema. É completamente invisível para o usuário, mas é o responsável por traduzir as chamadas de sistema dos programas para a linguagem do computador e vice-versa.

O projeto do kernel GNU (conhecido por HURD) estava, lentamente, se desenvolvendo. Não estava, de forma alguma, acompanhando o desenvolvimento do restante do sistema. Como o que se precisava era de algo completamente novo, a maioria dos programadores envolvidos estavam pisando em um terreno desconhecido. Logicamente, o desenvolvimento teria de andar devagar.

A grande virada começou a ocorrer em 1991, quando um hacker de Helsinki conhecido por Linus Torvalds começou um projeto pessoal para desenvolver um kernel de sistema operacional. Todo o trabalho era feito amadoristicamente, como um projeto pessoal típico de um hacker motivado. Mas, a comunidade hacker, que já havia esperado pacientemente o Kernel do projeto GNU aparecer, começou a colaborar intensivamente para o projeto daquele hacker de Helsinki. Esse kernel passou a ser a peça que faltava para o desenvolvimento de um sistema operacional livre quando Linus licenciou seu projeto sob a GPL, chamando-o de Linux.

Em pouco tempo, o Linux tornou-se um dos maiores projetos colaborativos do mundo. Centenas de hackers em todo o mundo começaram a enviar colaborações e aperfeiçoamentos. O Linux começou a integrar o que passou a ser conhecido por sistema GNU/Linux, ou seja, o kernel Linux com as ferramentas GNU (freqüentemente tratado simplesmente por Linux). Logo surgiu o conceito de distribuições, que juntavam um sistema GNU/Linux a um monte de outros softwares livres e eram distribuídas de uma maneira fácil de instalar.

Com a evolução das distribuições, a integração de ambientes gráficos e de pacotes de programas integrados de desktop, o GNU/Linux chegou ao ponto em que qualquer usuário levemente motivado consegue instalar e executar uma de suas variantes. Ou seja, passou de um sistema operacional exclusivo dos hackers para um sistema operacional de usuário final. Vários benefícios são o subproduto dessa passagem: o usuário final acaba com um ambiente estável, confiável, de alta velocidade em que todas as tarefas que antes custavam vários dólares para ser executadas, hoje custam nada além de um pouco de motivação.


4. BSD – O Unix Acadêmico

Dando uma pausa na evolução do GNU/Linux, nenhuma introdução estaria completa sem a menção (e somente uma menção) do BSD. Surgido como um forking dos sistemas Unix originais da AT&T, o BSD (ou, em inglês, Berkeley System Distribution) começou a ser desenvolvido com um modelo diferente do GNU: o modelo universitário baseado na licença BSD.

Uma Universidade (no caso Berkeley) necessitava de fundos para empreender suas pesquisas, e nenhuma empresa estaria interessada a custear o desenvolvimento de um sistema que não pudesse ser aproveitado comercialmente (isso era o que se pensava do Software Livre, o que a história acabou provando ser um equívoco). Então o desenvolvimento do BSD tomou rumos diferentes do que o Linux, ao utilizar uma licença que permitia o fechamento do código (ao contrário da GPL).

O BSD (e seus forks: FreeBSD, OpenBSD e NetBSD) começaram a integrar uma forte base de servidores que, até hoje, acredita-se serem melhores que o GNU/Linux em várias tarefas.

Nesse momento é prudente me abster de continuar com a história do BSD para evitar a parcialidade. Aos que quiserem maiores informações, um bom ponto de início são as páginas dos forks que eu já mencionei.


5. Distribuições GNU/Linux

Bem… chegamos ao momento histórico em que o GNU/Linux começa a ser distribuído em grandes pacotes com vários programas abertos. É instalando uma dessas distribuições que o usuário comum deve entrar nessa Revolução.

Não vou analisar cada uma das distribuições. Existem várias análises e os sites de notícias do Linux publicam análises periodicamente. Vou limitar-me a comentar brevemente cada uma das que eu considero as 4 maiores distribuições no Brasil. O comentário breve é necessário para manter a imparciabilidade, já que sou desenvolvedor de uma delas.


5.1. O Slackware – A primeira grande distribuição

O Slackware foi a primeira distribuição do Linux a se disseminar. Ela começou com Patrick Volkerding no final de 1992, que foi introduzido ao GNU/Linux quando precisava de um interpretador LISP barato para um projeto. Naquela época existiam poucas distribuições e Patrick escolheu o Soft Landing Systems (SLS Linux).

Contudo, a SLS tinha alguns problemas e Patrick decidiu consertá-los. Eventualmente isso acabou se tornando uma distribuição diferente, que, ganhou popularidade rapidamente e ficou conhecida como Slackware.

Ao longo do caminho, Patrick acrescentou alguns aperfeiçoamentos que tornavam sua distribuição mais amigável e introduziam o conceito de gerenciamento de pacotes. Hoje o Slackware tem uma legião de fãs incondicionais que fazem dela uma grande distribuição.


5.2. O RedHat – o mais utilizado sistema de pacotes

A distribuição do chapéu vermelho foi a responsável pela introdução do formato rpm de pacotes (Redhat Package Management), hoje adotado pela LSB (Linux Standard Base) como padrão.

O formato de pacotes e uma instalação amigável fizeram do RedHat a distribuição com o maior número de usuários dentre todas. Os membros da empresa são hackers comprometidos com o software livre e o CTO (Mike Tienemann) é conhecido por suas incisivas críticas ao monopólio da Microsoft.

Além disso, a RedHat é uma empresa comprometida com a comunidade que desenvolve o Linux. Alan Cox, um dos mais reconhecidos integradores do kernel (chegando a liberar até 3-4 versões de aprimoramento por dia) é seu empregado.

Recentemente, em uma decisão muito controversa, a RedHat parou de fornecer suporte para a edição desktop de sua distribuição, transferindo a responsabilidade pelo desenvolvimento deste ramo à comunidade, começando o que é conhecido como Projeto Fedora.


5.3. A Conectiva – o correspondente tupiniquim da RedHat

Inicialmente baseado no RedHat, a distribuição da Conectiva é a alternativa brasileira às grandes distribuições. A empresa tem um bom time de hackers cuidando do desenvolvimento não só da distribuição como do kernel do Linux e de vários projetos de software livre. Um deles, Marcelo Tosatti, ficou famoso recentemente por ter sido escolhido por Alan Cox e Linus Torvalds para ser o responsável pela série 2.4.x do kernel. Hoje Marcelo trabalha para a Cyclades.

Recentemente a Conectiva passou a integrar um joint de distribuições GNU/Linux conhecido por UnitedLinux, que reune a SuSE, a SCO e a TurboLinux.

A instalação é amigável, apesar de nem sempre dar certo, e o fato de prover suporte (pago, é claro) em português ajuda muito. Mas a distribuição da Conectiva tem a fama de ser substituída tão logo o usuário aprenda mais sobre o Linux.


5.4. O Debian – de volta às raízes

O Projeto Debian começou em 1993 com o objetivo de gerar um sistema operacional universal com o mesmo sistema de desenvolvimento aberto do Linux e do Software Livre. O Debian não é uma empresa. É uma organização internacional sem fins lucrativos, mantido pelo idealismo de mais de 900 desenvolvedores.

As principais diferenças com relação as outras distribuições são com relação à portabilidade e à qualidade.

O Debian está, atualmente, disponível em 11 arquiteturas que variam desde o i386 ao PowerPC. Além disso, por ser independente do kernel, está sendo portado para trabalhar com o kernel do projeto GNU (conhecido por HURD), com o kernel BSD e com clusters beowulf.

O sistema de pacotes do Debian é, sem dúvidas, o mais completo e amigável sistema de pacotes dentre as grandes distribuições, sendo, inclusive, parcialmente adotado pela Conectiva a partir da sua versão 6.0. Mas o mais importante a ser notado quanto aos pacotes do Debian é que eles são feitos por desenvolvedores comprometidos em criar o melhor. Somente desenvolvedores aprovados no sistema de seleção do Debian para integrar o time é que podem desenvolver pacotes Debian oficiais. Isso é uma grande diferença quando comparado ao sistema de distribuição dos pacotes rpm.


6. O Software Aberto – A contribuição da novageração

A frente do jovem movimento do software aberto, a Iniciativa do Código Aberto (OSI – Open Source Initiative) é uma organização cuja única finalidade é arrebanhar suporte para o Software Aberto. Isto é o software que é compatível com a definição de Software Aberto provida pela própria OSI (que, por sua vez, é baseada na definição do Debian). Nenhuma licença é oferecida, ao contrário da FSF, mas várias licenças são certificadas para garantir que o projeto que seja licenciado sob ela tenha as mesmas características fundamentais do Software Aberto. A própria GPL é certificada pela OSI.

A idéia por trás da OSI é conseguir com que mais empresas apóiem o Software Aberto por permitir que elas escrevam programas sob a sua própria licença, desde que essas sejam certificadas pela OSI. Muitas empresas querem liberar o código fonte de seus aplicativos, mas não querem usar a GPL, ou por não poderem fazer isso por questões administrativas, ou por desejarem manter o controle sobre o licenciamento do seu software. Para essas a OSI oferece sua certificação.

Enquanto a FSF e a OSI trabalham para ajudar umas às outras, elas não são a mesma coisa. A FSF suporta o uso de suas licenças e somente delas. A OSI não tem licenças próprias, mas certifica as existentes dentro de seus próprios parâmetros de Software Aberto. Pode aparentar que existam duas correntes ideológicas: o Software Livre (da FSF) e o Software Aberto (da OSI), mas o fato é que grupos diferentes estão trabalhando em direção aos mesmos objetivos, cada qual aumentando a credibilidade do outro.

A FSF, portanto, é o braço político ideológico do movimento, pregando que todo o software deve ser livre e oferecendo a GPL como exemplo de licença. A OSI, por outro lado, é o braço conciliador, garantindo que empresas com o modelo comercial de desenvolvimento possam entrar no movimento sem necessariamente adotar as licenças da FSF. Eventualmente todo o software será livre, de acordo com a ideologia da FSF. Mas para as empresas que não querem mudar o modelo comercial utilizado, a OSI oferece uma alternativa intermediária.


7. Conclusão

Bem… acredito que isso conclui nosso breve tour pela história dessa revolução que há apenas poucos anos começou e que ainda está longe de terminar. Espero que os links que eu citei acima sejam úteis para alguma coisa.

Para você, usuário não técnico, espero que este documento tenha tido algum valor. Como instalar uma ou outra distribuição, como fazer para funcionar a impressora ou o modem, ou como conectar-se a internet, existem vários documentos que ensinam. Mas um que conte como tudo começou…. isso estava faltando. Espero que este documento tenha suprido essa falta.

Agora é só começar. Escolha uma distribuição, assine algumas listas de discussão, leia os manuais e conte com a comunidade para ajudar nas suas dúvidas. Mãos a obra.

Notes

[1] Como detentor do direito autoral, o autor do trabalho licenceado sob a GPL, por exemplo, pode mudar a licença. Mas fica legalmente impedido de incluir o código que recebeu como contribuição de outros autores licenceados sob a mesma licença. Na prática, isso acaba por assegurar que o código fique sob a licença livre
[2] Num processo conhecido por “forking”. O forking é uma das maiores forças do software livre, no entanto é atacado constantemente por empresas que estão começando a perder o monopólio para esse novo paradigma.

Como instalar o CLICK BE, How to install click be no CPANEL/WHM

Friday, November 27th, 2009

Abaixo ensino como instalar o clickbe em um ambiente CPANEL/WHM, siga os passos logando-se como root:

mkdir -p /var/netenberg/click_be/installer/
cd /var/netenberg/click_be/
wget http://www.netenberg.com/files/click_be/free/click_be_installer.bz2
tar -xjpf click_be_installer.bz2
cd /var/netenberg/click_be/installer/
php click_be.php status

pico /var/netenberg/click_be/settings/private_settings.ini
pico /var/netenberg/click_be/settings/public_settings.ini
cd /var/netenberg/click_be/installer
php click_be.php install

Nos arquivos INI procure deixar de acordo com seu server, ou seja, Se suexec estiver on, na linha de suexec diga On, se o Open_Basedir tiver on no server, diga On e assim por diante. Tome cuidado com maiúsculas e minúsculas (o trosso é case sensitive).

Em tese, é isto aqui:

/var/netenberg/click_be/settings/private_settings.ini
wget -> O caminho do wget (cuidado com o bug da Netenberg em cima do wget)

/var/netenberg/click_be/settings/public_settings.ini
Others -> User_Name (não mexa)
Others -> Group_Name (não mexa)
suEXEC -> Status (ajuste caso esteja ON)

—————–

Com os passos acima tudo deve ficar ok, mas abaixo complemento com mais informações:

Normal Update:
cd /var/netenberg/click_be/installer
php click_be.php update

Forced Update:
cd /var/netenberg/click_be/installer
php click_be.php update force

Run a cron job for automatic updates:
cd /var/netenberg/click_be/installer
php click_be.php cron install

Remove the cron job for automatic updates:
cd /var/netenberg/click_be/installer
php click_be.php cron uninstall

Part IV – How to install sites

cd /var/netenberg/click_be/installer
php click_be.php sites install $USER $GROUP $HOME $WWW $DOMAIN $DIRECTORY
$USER = name of the user
$GROUP = name of the group
$HOME = home directory (trailing slash is absolutely neccessary)
$WWW = www (public_html) directory (trailing slash is absolutely neccessary)
$DOMAIN = domain name
$DIRECTORY = the directory where you want to install it (optional)

Example:

Code:
cd /var/netenberg/click_be/installer
php click_be.php sites install joe joe /home/joe/ /home/joe/public_html/ joesdomain.com site/new/

This will install the site at http://joesdomain.com/site/new/

Code:
cd /var/netenberg/click_be/installer
php click_be.php sites install user user /home/user/ /var/www/html/ user.com

This will install the site at http://user.com/

If you leave the $DIRECTORY variable as empty, the site will be installed in the root (http://joesdomain.com/)

How to login?
It is simple, just use your FTP Username and Password.

Alternatively, you can create a file called demo.php inside the folder $WWW/.click_be/:
The contents of demo.php should be as follows:
<?php
$Username = ‘user’ ;
$Password = ‘pass’ ;
?>
Now you can login with “user” as your username and “pass” as your password.
A demo installation of Click Be! does not need FTP login data (and in the final version it will not send out any emails, ie Newsletter).

Part V – How to uninstall sites?

cd /var/netenberg/click_be/installer
php click_be.php sites uninstall $USER $DOMAIN $DIRECTORY
$USER = name of the user
$DIRECTORY = the directory where you had installed it

Part VI – Help Me! I still do not understand!

cd /var/netenberg/click_be/installer
php click_be.php usage

Primeiro Festival de Software Livre de BH

Thursday, September 10th, 2009

Boa tarde Galera, para quem curte eventos sobre Software Livre e Open Source chegou a hora de participar de um evento bacana que está vindo por aí, e o melhor, 100% gratuito.
Dia: No dia 26 de Setembro

Localização:
Av. Augusto de Lima, 2061 – Barro Preto
Belo Horizonte/MG – CEP: 30.190-002
Referência: Av. Augusto de Lima (Prédio Azul na Esquina), entrada pela Rua Uberaba, ao lado do Instituto São Rafael.

Para quem está tentando fazer sua inscrição e não conseguiu, ou se deseja inscrever-se basta acessar o link abaixo:

http://softwarelivre.esp.mg.gov.br/inscricao/new

como Meu servidor não requer autenticação whm cpanel como forçar autenticação de email how to force mail authentication

Friday, September 4th, 2009

Nada de pânico, entre no console como root e digite o seguinte comando:

/usr/local/cpanel/bin/tailwatchd –enable=Cpanel::TailWatch::Antirelayd

😀

fonte: http://littleoak.wordpress.com/2009/08/01/meu-servidor-nao-requer-autenticacao-whm-cpanel-como-forcar-autenticacao-de-email-how-to-force-mail-authentication/

how to configure network on red hat Configurando interfaces de rede manualmente no Centos Fedora ou Red Hat

Monday, April 13th, 2009

Boa noite,

Estou usando o CentOs 5.3 (na realidade era o 5.1 e o maravilhoso yum fez a upgrade tranquilamente) e necessitei configurar a interface de rede manualmente.
Supondo que sua interface seja a eth0 (a primeira) você deve acessar seu arquivo assim:

vim /etc/sysconfig/network-scripts/ifcfg-eth0

O vim não é obrigação, entretanto gosto dele.

Observe a sintaxe abaixo:

DEVICE=eth0
BOOTPROTO=static
DHCPCLASS=
HWADDR=00:30:48:56:A6:NE
IPADDR=192.168.1.101
NETMASK=255.255.255.0
ONBOOT=yes

Fazendo isto (tornando sua sintaxe semelhante) você estará:

colocando o ip da interface estaticamente como sendo 192.168.1.101 e dizendo que isto será feito no momento do boot do sistema.

Em seguida entre aqui:

vim /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=libphp1
GATEWAY=192.168.1.1

Aqui definimos a rede como sendo o hostname libphp1 e o gateway 192.168.1.1

Após isto somente faça isto:

/etc/init.d/network restart

Depois podemos até setar um dns para acesso a web:

vim /etc/resolv.conf

Dentro dele eu coloquei assim:

nameserver 200.165.132.148
nameserver 200.165.132.155

Este é o modo simples de definir o dns da velox.

Abração e tenham uma semana excelente e abençoada por Deus.

S1 Ponto: Sistema de controle de ponto Open Source para Linux

Sunday, February 8th, 2009

Nesse artigo abordarei a instalação do programa S1 Ponto na distribuição Slackware Linux 12.1. O S1 Ponto é um software de controle de ponto Open Source em fase inicial de desenvolvimento. Atualmente ele contém módulo de cadastro de funcionários, marcações de ponto e e emissão de relatórios.

O S1 Ponto foi iniciado a pedido de minha esposa, que não queria mais gastar dinheiro com cadernos de ponto na empresa onde trabalha. É um projeto em fase inicial, mas que já possui o básico de um sistema de controle de ponto.

O S1 Ponto usa a biblioteca libfprint[1] para reconhecimento de impressões digitais, o que torna o software compatível com mais de 40 leitores de impressão digital.

O cadastro de funcionários e impressão de relatórios usa interface web desenvolvida com framework django.

Página do projeto: http://s1ponto.opens1.com/

1. A biblioteca libfprint já foi matéria de artigo aqui no Viva o Linux: fprint: Biometria livre, completa e total!

Instalando as dependências

O presente artigo abordará a instalação do S1 Ponto na distribuição Slackware Linux 12.1, no entanto nada impede que o mesmo seja instalado em qualquer outra distribuição, uma vez que todas as dependências sejam resolvidas.

Eis a lista de dependências e seu respectivos sites:

Baixando e instalando o Django, framework de desenvolvimento web/python: $ wget ‘http://s1ponto.opens1.com/download/django-1.0-noarch-1_SBo.tgz?attredirects=0’ -O django-1.0-noarch-1_SBo.tgz
# upgradepkg –install-new django-1.0-noarch-1_SBo.tgz

Baixando e instalando o PySqlite2, pacote com os bindings em Python para base de dados SQLite:

$ wget ‘http://s1ponto.opens1.com/download/pysqlite2-2.3.5-i486-1_SBo.tgz?attredirects=0’ -O pysqlite2-2.3.5-i486-1_SBo.tgz
# upgradepkg –install-new pysqlite2-2.3.5-i486-1_SBo.tgz

Baixando e instalando o SQLite, engine de banco de dados padrão do S1 Ponto (por ser desenvolvido em Django, o sistema pode usar opcionalmente outras bases com MySQL, PostgreSQL ou Oracle).

$ wget ‘http://s1ponto.opens1.com/download/sqlite-3.6.2-i486-1_SBo.tgz?attredirects=0’ -O sqlite-3.6.2-i486-1_SBo.tgz
# upgradepkg –install-new sqlite-3.6.2-i486-1_SBo.tgz

Baixando e instalando o mod_python, módulo do Apache para interpretação de scripts Python:

$ wget ‘http://s1ponto.opens1.com/download/mod_python-3.3.1-i486-1_SBo.tgz?attredirects=0’ -O mod_python-3.3.1-i486-1_SBo.tgz
# upgradepkg –install-new mod_python-3.3.1-i486-1_SBo.tgz

Baixando e instalando a LibFprint, biblioteca Open Source de captura e reconhecimento de impressões digitais:

$ wget ‘http://s1ponto.opens1.com/download/libfprint-0.0.6-i486-1_SBo.tgz?attredirects=0’ -O libfprint-0.0.6-i486-1_SBo.tgz
# upgradepkg –install-new libfprint-0.0.6-i486-1_SBo.tgz

Baixando e instalando o Swig, uma interface de compilação que integra C/C++ com linguagens de script:

$ wget ‘http://s1ponto.opens1.com/download/swig-1.3.35-i486-1_SBo.tgz?attredirects=0’ -O swig-1.3.35-i486-1_SBo.tgz
# upgradepkg –install-new swig-1.3.35-i486-1_SBo.tgz

Baixando e instalando o PyFprint, pacote com os bindings em Python para a biblioteca LibFprint.

$ wget -O ‘http://s1ponto.opens1.com/download/pyfprint-0.0-noarch-1_tla.tgz?attredirects=0’ pyfprint-0.0-noarch-1_tla.tgz
# upgradepkg –install-new pyfprint-0.0-noarch-1_tla.tgz


Instalando o S1 Ponto

Para instalar o S1 Ponto faça o download do software:

$ wget ‘http://sites.google.com/a/opens1.com/s1ponto/download/s1ponto-0.0.1.tar.gz?attredirects=0’ -O s1ponto-0.0.1.tar.gz

Descompacte o arquivo:

$ tar -xpzvf s1ponto-0.0.1.tar.gz

Entre na pasta:

$ cd s1ponto

Como super usuário execute o script “install.sh”, ele perguntará em qual usuário o instalador deverá colocar o ícone no Desktop:

$ su
# sh install.sh

Instalando S1 Ponto:

Criar ícone no Desktop do usuário:
1) ftp
2) teste
#? 2

Configurando o sistema para o uso do software:

* Permitindo acesso ao leitor de impressões digitais.

Para que usuários do grupo “plugdev” tenham acesso ao dispositivo será necessário editar o arquivo: /etc/udev/rules.d/50-udev-default.rules

Alterando a linha que contém SUBSYSTEM==”usb” adicionando os parâmetros MODE=”0664″ e GROUP=”plugdev”. Deixe-a assim:

SUBSYSTEM==”usb”, ACTION==”add”, ENV{DEVTYPE}==”usb_device”, NAME=”bus/usb/$env{BUSNUM}/$env{DEVNUM}”, MODE=”0664″, GROUP=”plugdev”

Configurando o Apache:

Edite o arquivo /etc/httpd/httpd.conf, após a linha:

LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so

Adicione a seguinte linha:

LoadModule python_module lib/httpd/modules/mod_python.so

Após o bloco:

<Directory “/srv/httpd/htdocs”>

</Directory>

Adicione o seguinte bloco:

<Directory “/opt”>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>

E por último descomente a linha:

Include /etc/httpd/extra/httpd-vhosts.conf

Edite o arquivo /etc/httpd/extra/httpd-vhosts.conf, remova todo seu conteúdo e adicione o seguinte:

NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /opt/s1ponto/media

<Location “/”>
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE s1ponto.settings
PythonDebug On
PythonPath “[‘/opt’,’/opt/s1ponto’] + sys.path”
</Location>

<Location “/media”>
SetHandler None
</Location>

<Location “/arquivos”>
SetHandler None
</Location>

</VirtualHost>

Após todos estes passos configure o Apache para iniciar automaticamente e inicie o mesmo:

# chmod +x /etc/rc.d/rc.httpd
# /etc/rc.d/rc.httpd start

O programa S1 Ponto está pronto para ser usado!

Para cadastrar os funcionários e emitir os relatórios, use a interface web.

Endereço: http://localhost/
Usuário: s1ponto
Senha: s1ponto

Para cadastrar as impressões digitais, abra o sistema de ponto através do ícone no Desktop e use o atalho Ctrl+Shift+L.
Usuário: s1ponto
Senha: s1ponto

Bom proveito a todos e aguardo contribuições e ideias.

Veja abaixo um pequeno vídeo de demonstração do software:

fonte: http://www.vivaolinux.com.br/artigo/S1-Ponto-Sistema-de-controle-de-ponto-Open-Source-para-Linux?pagina=1