Reflexões de Monte Gasppa e Giulia C.: 201002
Este artigo aborda a instalação do servidor em ambiente Slackware e Ubuntu. Para uso veja artigo no Kodumaro.
No momento em que escrevi este artigo, não havia pacote APT do MongoDB, mas a instalação foi bastante simples e comum a ambos os sistemas em questão.
Primeiro obtenha o binário para sua arquitetura da página de download:
x86_64bits
bash$ sudo mkdir -p \
/srv/mongodb/etc /srv/mongodb/sbin \
/srv/mongodb/var/data /srv/mongodb/var/log
Descompate o binário do MongoDB em /srv/mongodb:
bash$ sudo tar xzvf mongodb-linux-*.tgz -C /srv/mongodb/
Crie o arquivo de configuração do servidor em /srv/mongodb/etc/mongodb.conf com o seguinte conteúdo:
dbpath = /srv/mongodb/var/data
logpath = /srv/mongodb/var/log/mongo.log
Crie o script de inicialização do servidor /srv/mongodb/sbin/rc.mongodb-server:
MONGO_HOME=/srv/mongodb
MONGOD="$MONGO_HOME/current/bin/mongod"
CONF_FILE="$MONGO_HOME/etc/mongodb.conf"
PID_FILE="$MONGO_HOME/var/log/mongo.pid"
function start_mongo() {
if [[ -e "$PID_FILE" ]]
echo "MongoDB daemon seems to be running, PID $(cat $PID_FILE)" >&2
echo "if the daemon is not running, remove the PID file: $PID_FILE" >&2
echo "$MONGOD -f $CONF_FILE"
"$MONGOD" -f "$CONF_FILE"  | head -n1 | cut -d: -f2 > "$PID_FILE"
function stop_mongo() {
if [[ ! -e "$PID_FILE" ]]
echo "MongoDB daemon seems not to be running, killing it anyway" >&2
pkill -2 mongod && rm -f "$PID_FILE"
function status_mongo() {
echo "MongoDB daemon seems to be running with PID $(cat $PID_FILE)"
echo "MongoDB daemon seems not to be running"
"$MONGOD" --sysinfo
status_mongo
echo "options: [start|stop|restart|status]" >&2
E dê permissão de execução ao arquivo:
bash$ sudo chmod +x /srv/mongodb/sbin/rc.mongodb-server
Crie um link simbólico para o diretório do binário do MongoDB:
bash$ cd /srv/mongodb/
bash$ sudo ln -s mongodb-linux-* current
Crie um link simbólico para o script de inicialização para o diretório de rc-scripts. No Ubuntu é assim:
bash$ cd /etc/init.d/
bash$ sudo ln -s /srv/mongodb/sbin/rc.mongodb-server mongodb-server
bash$ cd /etc/rc.d/
bash$ sudo ln -s /srv/mongodb/sbin/rc.mongodb-server
Para tornar o serviço inicializável é bastante diferente em cada sistema, mas são procedimentos padrão, portanto não vou descrevê-los aqui.
Crie um apelido (alias) para o cliente (a chamada pode ficar em um script executável em /etc/profile.d/):
bash$ alias mongo='/srv/mongodb/current/bin/mongo'
Usuário alternativo
É possível não usar o superusuário para rodar o MongoDB. Para isso crie um usuário:
bash$ sudo useradd \
-c 'MongoDB Server' \
-d /srv/mongodb \
-g daemon \
-s /usr/bin/false \
-u 29 mongodb
Altere o rc-script para executar os processos como usuário mongodb. A linha 18 vira:
sudo -u mongodb "$MONGOD" -f "$CONF_FILE"  | head -n1 | cut -d: -f2 > "$PID_FILE"
E a linha 27:
sudo -u mongodb pkill -2 mongod && rm -f "$PID_FILE"
Mude as permissões do diretório de dados:
bash$ sudo chown -R mongodb /srv/mongodb/var/data
bash$ sudo /srv/mongodb/sbin/rc.mongodb-server start
Se tudo correr bem, já estará no ar. Precisamos criar um usuário administrador:
{ "user": "admin", "pwd": "2167016d7d6c88bcc8029ad2b1a7f1ff" }
Saia do prompt e edite o arquivo de configuração /srv/mongodb/etc/mongodb.conf, descomente a primeira linha:
bash$ sudo /srv/mongodb/sbin/rc.mongodb-server restart
Agora o banco de dados vai pedir autenticação:
assert: assert failed : listDatabases failed
Sat Feb 27 13:04:51 JS Error: uncaught exception: assert failed : listDatabases failed
Habilitar o serviço para conexões externas
Caso você queira permitir conexões externas, altere em /srv/mongodb/etc/mongodb.conf a linha sobre bind_ip:
Espero que este artigo tenha sido útil. Para mais informações, continue lendo o artigo no Kodumaro.
Postado por ℭacilhας, ℒa ℬatalema às 2:33 PM
Nosso amigo Aurélio Heckert destacou a posição desinformante da Revista Veja:
#WTF #Ridículo!!! Pela primeira vez um governador é preso e a #Veja coloca «efeito sanfona» na capa! http://3.ly/XlX (Valeu @pitanga!)
Depois, quando dizemos que Veja é golpista, dizem que não somos imparciais e acham-se no direito de sentirem-se ofendidos.
Estão aí os fatos, provando a imparcialidade da acusação de imprensa golpista e a parcialidade do PiG.
Mas para o PiG imparcialidade é defender os interesses dos poderosos…
Postado por ℭacilhας, ℒa ℬatalema às 8:40 PM
Durante muito tempo a única alternativa séria para um servidor web era o Apache HTTPd – para uns poucos loucos havia também o IIS, mas sempre foi um tiro no pé. Esse tempo acabou.
Já há alguns anos surgiu o Lighttpd (pronuncia-se como lighty), um servidor leve capaz de fazer tudo – no sentido prático, não técnico – que o o Apache faz, só que mais leve.
Agora surge uma alternativa russa, o Nginx (pronuncia-se como engine X), que me surpreende mais e mais a cada dia.
Além da leveza e da velocidade assustadora para servir arquivos estáticos, a configurabilidade do Nginx é surpreendente: ao contrário de outros daemons – não só servidores web e certamente não só em ambiente Posix –, não há mágica nem truques: você faz uma configuração e ele responde fazendo exatamente o que você quer.
Costuma-se dizer que em Informática o software não faz o que você quer, mas o que você manda. No caso do Nginx as duas coisas são uma coisa só.
Essa configuração simples e direta permite uma capacidade de otimização e maximização de resultados muito superior a de qualquer outro servidor.
Além de servidor web, HTTP e HTTPS, Nginx também pode atuar como proxy para serviço web ou correio eletrónico, SMTP, IMAP ou POP3.
A única ressalva que faço contra o Nginx é o fato de alguns módulos addons terem se tornado obsoletos, como por exemplo SCGI e WSGI, sendo suportados apenas até a versão 0.5 do Nginx. No caso específico dos dois addons citados não há problema, pois o módulo FastCGI satisfaz plenamente sua falta, porém tenho um certo receio de precisar de algum addon obsoleto.
Ainda assim, como conclusão, recomendo Nginx como servidor web para adminstradores responsáveis, conscientes e cansados das peculiaridades e frescuras de configuração dos servidores tradicionais.
Declev Dib-Ferreira, do blog Diário do Professor, publicou o incrível texto do professor Geraldo Ramos, reproduzido aqui, sobre a falsa culpabilidade do professor e a responsabilidade rejeitada de pedagogos, diretores, políticos e pais.
O artigo original pode ser lido aqui. Boa leitura!
O senhor Júlio Groppa foi escolhido pela secretaria de educação da cidade onde leciono para apresentar uma palestra intitulada «A indisciplina na sala de aula». Na ocasião, deixou os docentes revoltados com sua arrogância e colocou toda a culpa da desobediência dos alunos nas costas do professorado. Se levarmos em consideração que as palestras deste profissional são muito requisitadas pelas secretarias de educação pelo Brasil afora, trata-se de afirmar que é um discurso comprado (ou assumido) pelo Estado.
Em uma de suas entrevistas, o «professor» Júlio Groppa afirma que a questão da violência na escola é tratada com alarde pela imprensa e pelos professores. A situação é bem menos grave do que parece. Quando questionado sobre a posição dos docentes em falar que o problema está na (falta de) educação familiar do aluno, o referido autor é categórico ao dizer que o professor deveria «se silenciar» ao abordar questões que estão fora da sua alçada. Sem comentários!
Em outra ocasião, num artigo intitulado «da palavra e o professor: notas sobre pregar, narrar e democratizar», o senhor Júlio Groppa busca no século XVII um texto referencial para defender suas teses. Trata-se de um sermão do Padre Antônio Vieira discorrendo sobre o fracasso das pregações do seu tempo. Desprovido de qualquer análise do contexto histórico de Vieira, o «educador» Júlio Groppa faz suas as conclusões do padre: o fracasso é culpa do pregador.
O discurso que aqui entendemos ser dominante na educação brasileira acabou por trazer uma triste consequência para o trabalho do professor. Diante da realidade (alunos semi-analfabetos chegando ao Ensino Médio), muitos colegas sucumbem e apesar de saber que seu aluno não tem condições de seguir adiante não querem conviver com o rótulo de fracassado. No final do ano, arruma-se sempre um «jeitinho» para que o «aproveitamento» seja «satisfatório». Alimenta-se, desta forma, um circulo vicioso. Mas este mesmo discurso, bancado pelo Estado (viva Júlio Groppa!), está ajudando o Brasil a melhorar os seus números (viva Maquiavel!). Que coisa linda ver aquela mulher do comercial subindo as escadas do desenvolvimento na educação do país! O Ideb só melhora! Escolas e prefeituras pulam de alegria quando veem seus cofres mais cheios por cumprirem a meta do Ideb. O contraditório é que isso tudo contrasta com aquilo que os professores percebem no dia a dia do seu trabalho: a cada ano que passa o «nível» fica pior. Qual é o segredo?
Se você pensar um pouco mais, com calma, vai perceber o quanto de podre se encontra a educação brasileira. O país quer mostrar para o mundo que investe na educação, para isso precisa melhorar os índices de escolaridade. Uma das primeiras iniciativas foi a tão conhecida universalização da educação, garantindo a todas as crianças o acesso à escola. Para garantir lugar para toda esta demanda, era comum os governantes criarem escolas, assunto corriqueiro nas campanhas políticas. Com o passar do tempo, achou-se que não precisava de mais unidades, afinal, seguindo a linha do «coração de mãe», quem dá aula pra 20 pode muito bem se virar com 40. E, afinal de contas, como já testemunhei uma educadora dizer, «não há nenhuma pesquisa comprovando que numa turma menor há melhor aprendizado».
Há pouco tempo li um texto de um colega professor, Declev Dib-Ferreira, que aborda, entre outras coisas, esta discussão. O autor dizia que recebemos, salvo algumas exceções, um aluno extremamente carente. Primeiro é o Estado, que desde os seus primórdios dias quase sempre não cumpre com que prometeu. Coisas «pequenas» como o que a constituição do país ordena: saneamento básico, saúde, segurança, habitação etc. Com isso, temos a criança e sua família desprovida de elementos básicos para se viver dignamente. E por falar em família, além de sofrer toda a falta do Estado, o aluno, antes de chegar até você, professor, ainda passa pela experiência de ser criado em ambientes tão desestruturados como os lares atuais. Poderia aqui falar da ausência de limites imposta às crianças, da falta de exemplos, da violência doméstica etc. Mas assim estaria desobedecendo às ordens do mestre Groppa.