Archive for the ‘1’ Category

ERROR 1030 (HY000) at line: Got error -1 from storage engine

Friday, April 29th, 2011

Se receber esta mensagem de erro no seu mysql no momento de tentar restaurar um banco de dados por meio de arquivos (.sql da vida), no problem.
Verifique se no arquivo my.cnf (normalmente fica no /etc) existe uma linha que informa o modo recovery do innodb. Comente-o, reinicie o mysql e o problema estará sanado.

How to install android 2.3 or 3.0 on Milestone2 (droid2) como instalar o android 2.3 ou 3.0 no milestone 2

Wednesday, April 27th, 2011

Gente, se alguém souber por favor comente!
Estou muito triste com a lentidão da Morotola neste quesito.
Abraços.

Como fazer o exim processar emails mesmo com load alto no whm

Wednesday, April 13th, 2011

As vezes o exim pausa o seu envio afim de poupar recursos da máquina, que por default adentra neste estado a partir do load 3.
O único problema dessa brincadeira é que se o load estiver em 4 ele não envia nada com o padrão de velocidade na queue dele.
Como resolver isso?

Entre no conf do exim e procure pela linha:

deliver_queue_load_max = 3

3 é padrão.
Mude para o valor que achar melhor, recomendo algo até 8.
Abraços.

Nginxcp dando erro no momento da instalação

Wednesday, April 13th, 2011

Generating vhosts…
Traceback (most recent call last):
File “/scripts/createvhosts.py”, line 143, in ?
parsedDOC = minidom.parseString(DOC)
File “/usr/local/lib/python2.4/xml/dom/minidom.py”, line 1925, in parseString
return expatbuilder.parseString(string)
File “/usr/local/lib/python2.4/xml/dom/expatbuilder.py”, line 940, in parseString
return builder.parseString(string)
File “/usr/local/lib/python2.4/xml/dom/expatbuilder.py”, line 223, in parseString
parser.Parse(string, True)
xml.parsers.expat.ExpatError: not well-formed (invalid token): line 542, column 23
deploying booster rockets

Se sua mensagem de erro parece com essa, ou linha 152, ou mesmo em plataforma 64 bits, posso lhe dar uma notícia ruim?
NGINXCP só roda em CENTOS!

Se estiver usando redhat será só mais um sonho :’(

Como limpar todo o cache de updates do Cpanel (stable, release, current ou edge) sem problemas

Wednesday, April 13th, 2011

É muito comum na plataforma CPANEL/WHM manter um padrão de arquivos guardados em uma pasta para que, ao tentar rodar uma update você perceba algo veloz no tocante a baixar arquivos, na verdade a maior parte dos arquivos já está em cache :( .

Como resolver este problema?

rm -Rfv /home/.cpcpan /home/.cpan

Se por exemplo eu quiser reparar módulos perl e atualizar o cpanel já poderei perceber a mudança extremamente importante nos novos pacotes baixados em tempo real, faça um teste:

/scripts/checkperlmodules –force –full
/scripts/upcp –force

Os comandos acima foram testados e já estão em uso.
Não causam qualquer instabilidade a máquina ;) .
Abraços.

Como forçar fila de entrega do exim (tricks) comandos úteis do exim

Tuesday, April 12th, 2011

Abaixo descrevo uma pequena lista de comandos bem úteis do cpanel:

exim -bp —-> Este comando recebe os IDs das mensagens relevantes que você precisa enviar (na verdade as que estão na fila de emails),
exim -M IDdoEmaildaFiladeEMAILS —-> Com o id somado a este comando você envia um email em específico em caráter imediato ;) .
exim -qf —-> envia a fila de emails toda,
exim -qff —-> esse comando ordena que emails congelados tenham uma ordem de envio imediato,
exim -Mvl IDdoEmaildaFiladeEMAILS —-> Vê o log da mensagem especificada pelo seu respectivo ID,
exim -Mvb IDdoEmaildaFiladeEMAILS —-> Mostra o corpo da mensagem referenciada por seu ID,
exim -Mvh IDdoEmaildaFiladeEMAILS —-> Mostra o cabeçalho da mensagem ordenada por seu ID,
exim -Mrm IDdoEmaildaFiladeEMAILS —> Remove a mensagem especificada por seu ID,
exim -Mg —> prepara mensagens para o envio usando seu ID (mensagens que falharam).

exim -v -Rff nomedodomínio.com.br —-> Esse comando faz com que o exim processe todas as mensagens de um domínio específico, neste caso nomedodomínio.com.br.

Instalando memcached de maneira simples no CentOs com CPANEL/WHM

Tuesday, March 8th, 2011

E quem disse que precisa de pânico?

Siga os passos como root:

yum update -y && yum install libevent libevent-devel -y
yum install libevent-devel libevent gcc make -y
wget http://memcached.googlecode.com/files/memcached-1.4.5.tar.gz
tar xvf memcached-1.4.5.tar.gz && cd memcached-1.4.5 && ./configure && make && make install

Inserindo valores no conf:

vim /etc/memcached.conf

Dentro do conf informe:

#Memory a usar
-m 16
# default port
-p 11211
# user to run daemon nobody/apache/www-data
-u nobody
# only listen locally
-l 127.0.0.1

criando scripts de inicialização:

touch /etc/init.d/memcached
dando permissões ao script:
chmod +x /etc/init.d/memcached

Abra o script /etc/init.d/memcached e insira nele:

#!/bin/bash
#
# memcached This shell script takes care of starting and stopping
# standalone memcached.
#
# chkconfig: - 80 12
# description: memcached is a high-performance, distributed memory
# object caching system, generic in nature, but
# intended for use in speeding up dynamic web
# applications by alleviating database load.
# processname: memcached
# config: /etc/memcached.conf
# Source function library.
. /etc/rc.d/init.d/functions
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/bin/memcached
DAEMONBOOTSTRAP=/usr/local/bin/start-memcached
DAEMONCONF=/etc/memcached.conf
NAME=memcached
DESC=memcached
PIDFILE=/var/run/$NAME.pid
[ -x $DAEMON ] || exit 0
[ -x $DAEMONBOOTSTRAP ] || exit 0
RETVAL=0
start() {
echo -n $"Starting $DESC: "
daemon $DAEMONBOOTSTRAP $DAEMONCONF
RETVAL=$?
[ $RETVAL -eq 0 ] && touch $PIDFILE
echo
return $RETVAL
}
stop() {
echo -n $"Shutting down $DESC: "
killproc $NAME
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f $PIDFILE
return $RETVAL
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
stop
start
RETVAL=$?
;;
status)
status $prog
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
exit 1
esac
exit $RETVAL

Criando script secundário:
touch /usr/local/bin/start-memcached
Dando permissões ao script:
chmod +x /usr/local/bin/start-memcached

Abra o script /usr/local/bin/start-memcached e dentro dele informe:


#!/usr/bin/perl -w
# start-memcached
# 2003/2004 - Jay Bonci
# This script handles the parsing of the /etc/memcached.conf file
# and was originally created for the Debian distribution.
# Anyone may use this little script under the same terms as
# memcached itself.
use strict;
if ($> != 0 and $< != 0) {
print STDERR "Only root wants to run start-memcached.\n";
exit;
}
my $etcfile = shift || "/etc/memcached.conf";
my $params = [];
my $etchandle;
# This script assumes that memcached is located at /usr/bin/memcached, and
# that the pidfile is writable at /var/run/memcached.pid
my $memcached = "/usr/local/bin/memcached";
my $pidfile = "/var/run/memcached.pid";
# If we don't get a valid logfile parameter in the /etc/memcached.conf file,
# we'll just throw away all of our in-daemon output. We need to re-tie it so
# that non-bash shells will not hang on logout. Thanks to Michael Renner for
# the tip
my $fd_reopened = "/dev/null";
sub handle_logfile {
my ($logfile) = @_;
$fd_reopened = $logfile;
}
sub reopen_logfile {
my ($logfile) = @_;
open *STDERR, ">>$logfile";
open *STDOUT, ">>$logfile";
open *STDIN, ">>/dev/null";
$fd_reopened = $logfile;
}
# This is set up in place here to support other non -[a-z] directives
my $conf_directives = {
"logfile" => \&handle_logfile
};
if (open $etchandle, $etcfile) {
foreach my $line (<$etchandle>) {
$line =~ s/\#.*//go;
$line = join ' ', split ' ', $line;
next unless $line;
next if $line =~ /^\-[dh]/o;
if ($line =~ /^[^\-]/o) {
my ($directive, $arg) = $line =~ /^(.*?)\s+(.*)/;
$conf_directives->{$directive}->($arg);
next;
}
push @$params, $line;
}
}
unshift @$params, "-u root" unless (grep $_ eq '-u', @$params);
$params = join " ", @$params;
if (-e $pidfile) {
open PIDHANDLE, "$pidfile";
my $localpid = ;
close PIDHANDLE;
chomp $localpid;
if (-d "/proc/$localpid") {
print STDERR "memcached is already running.\n";
exit;
} else {
`rm -f $localpid`;
}
}
my $pid = fork();
if ($pid == 0) {
reopen_logfile($fd_reopened);
exec "$memcached $params";
exit(0);
} elsif (open PIDHANDLE,">$pidfile") {
print PIDHANDLE $pid;
close PIDHANDLE;
} else {
print STDERR "Can't write pidfile to $pidfile.\n";
}

Inicie o memcached:
/etc/init.d/memcached restart

Vamos setar o memcached para iniciar com o server:
/sbin/chkconfig memcached on

Agora vamos integrar pecl + memcached (parte do PHP):

wget http://pecl.php.net/get/memcache-2.2.5.tgz
tar xvf memcache-2.2.5.tgz && cd memcache-2.2.5 && phpize && ./configure && make && make install

abra o arquivo php.ini global do server e vamos arrumar a muamba:

vim /usr/local/lib/php.ini

Procure pela parte de Extension e informe o seguinte:

extension=memcache.so

Reinicie o apache:

service httpd restart

Pronto, depois disso é so lazer.

Quer conferir?

vim teste.php
Dentro dele informe



php -f test.php | grep “memcache support”

A saída será:

memcache support => enabled

Fonte? Sim, os caras mais pauleiras de hosting que já vi (tirando Softlayer, é claro):

http://sudomakeinstall.com/linux-systems/install-memcached-to-cpanel

DOMAIN CONFLICT: owned by – the copy failed! Account Restore Failed… Restore failed.

Wednesday, February 16th, 2011

Para resolver este problema em seu Cpanel/WHM não é tão difícil assim.
Um dos fatores principais deste erro sem dúvidas é alguma zona de DNS que o domínio que você tentou restaurar o backup ainda existe.
Para descobrir isso procure na área de DNS (DNS Functions) a opção Delete a DNS zone.
Coloque o nome do domínio que você queria restaurar os backups.
Em seguida delete a zona de DNS confirmando.
O problema deverá estar sanado.

Arquivos tar.gz de backup cpanel apresentando erro sempre que tento extrair com tar -zxvf

Tuesday, February 15th, 2011

Se você tem certeza que os arquivos estão filé faça:

df -h

Se o disco de backup estiver cheio, please, limpe-o para depois trabalhar com os arquivos.
Perceba que a mensagem de que não consegue abrir com o tar só é desmascarada quando você usa o comando “star -acl -x -f conta.tar.gz”
Aí é só lazer ;) .

Depois disso é só preparar o whois no nerdblog.info e mandar aquela caixa de bis ;) .

Cdonts erro 500 quando tento enviar email com ASP classic

Tuesday, February 8th, 2011

NADA de pânico, reveja antes 2 coisas:

1 – se no log de erros do site aparece 800a0046|Permission_denied no momento do uso do CDONTS,
2 – Reveja todos os passos abaixo (Parallels):

[How-To] Installing CDONTS on Windows 2003 Server
Article ID: 560
Last Review: Sep, 23 2010

Popularity:

APPLIES TO:

* Plesk 8.x for Windows
* Plesk 7.x for Windows
* Plesk 9.x for Windows

Resolution

Microsoft Windows Server 2003 does not install Collaboration Data Objects (CDO) for NTS (CDONTS). Therefore, applications using CDONTS do not work on Windows Server 2003-based computers. Windows Server 2003 provides improved alternatives to CDONTS.

For CDONTS to work in a Windows Server 2003-based computers, please do the following:

1. Download the attached CDONTS.ZIP file (you can also get CDONTS.DLL from the installation CD of your Windows 2000). Once downloaded, unzip CDONTS.DLL and put it in

For 32-bit systems:
%systemroot%\system32 folder (by default C:\Windows\system32).

For 64-bit systems:
%windir%\syswow64 (by default C:\Windows\syswow64).

2. Register the CDONTS.DLL component in the server using the following command:

For 32-bit systems:

regsvr32 “%systemroot%\system32\cdonts.dll”

For example:

C:\WINDOWS\system32>regsvr32.exe cdonts.dll

For 64-bit systems:

regsvr32 “%systemroot%\syswow64\cdonts.dll”

For example:

C:\WINDOWS\syswow64>regsvr32.exe cdonts.dll

3. Once the CDONTS.DLL component is registered, you should check if your SMTP service is running.

Go to Administrative tools, IIS and Expand your local machine. If the SMTP service is listed, it means it is already installed, if not you should install this service.

To install SMTP, do the following:

Go to Control Panel, Add/Remove Programs, Add/Remove Windows Components, Application Server, IIS, Select SMTP service, Click OK.

4. Change the port number for the SMTP service. The default port is 25. Use 25 only when no other SMTP service is running. If there is already another SMTP service running on the server, change the SMTP port of IIS, for example to port 8025.

You can make this through IIS management console: Control Panel, IIS, expand `local computer`, SMTP, Properties, General, click Advanced button, Edit.

5. Set up SMTP service. Most important is setting up a fully qualified domain name for the SMTP service: Control Panel, IIS, expand `local computer`, SMTP, Properties, Delivery, click Advanced button and set up Security service for SMTP.

It is required to give permissions to IIS_WPG standard IIS Worker Process Group. Control Panel, IIS , expand `local computer`, SMTP, Properties, Security, click Add button, then click Object types button…, select Groups element, click OK, enter IIS_WPG as object name to add and click OK.

Additional configuration: Select Authentication and check Anonymous Access and Integrated Windows Authentication. Click OK and then click CONNECTION. Set up the RELAY settings. Click DELIVERY tab and then click ADVANCED. Set up the MAX Count hop to the required value, even though we suggest setting it to at least 20.

Now the SMTP service of IIS is already configured.
Additional information
For additional information, please, refer to

http://support.microsoft.com/default.aspx?scid=kb;en-us;324649

Attachments:

* cdonts.zip(172Kb)

—————————–

Depois de seguir os passos assim, caso você perceba que ainda assim não funciona normal o Cdonts faça algo mais interessante, abra o C:\Inetpub\Mailroot
Nesta pasta dê permissão para IUSR_NOMEDOPC (se o pc fosse nerdblog [hostname] seria iusr_nerdblog).
A permissão deve ser completa para ele.
Depois disso reinicie o IIS e prepare a caixa de BIS para minha casa.

:P

Como limpar toda fila de emails (mail queue) do EXIM via SSH (Console)

Saturday, January 29th, 2011

Logue-se como root em seu servidor.

Em seguida digite:

exim -bp | awk '/^ *[0-9]+[mhd]/{print "exim -Mrm " $3}' | bash

Outro comando útil é:
exim -bp | exiqgrep -i | xargs exim -Mrm

Unable to load object of type Skin with id=8: Skin: unable to select: no such row in the table

Friday, January 28th, 2011

Se você está recebendo a mensagem de erro:

Unable to load object of type Skin with id=8: Skin: unable to select: no such row in the table

Ao tentar logar-se no Parallels Plesk 10.x, nada de Pânico, provavelmente a saída ocorre pois a tabela com a Skin do plesk não foi atualizada corretamente.
Normalmente o id dela fica sendo 1, então se o painel (foi o caso do meu cliente) pedia 8 como id na tabela Skins, para corrigir basta fazer o seguinte:

Abra o MS-DOS e digite:

"%plesk_bin%\dbclient.exe" --direct-sql --sql="update Skins set id=8 where id=1"
Antes dê um select na tabela skins para saber se a Skin Default é realmente de id 1, caso seja diferente basta informar no where o id dela.
Espero a caixa de biz, please!

ERROR: Exception The system cannot find the file specified. (Error code 2) at Unable to connect to pipe \\.\pipe\psapipe

Thursday, January 27th, 2011

Erro no parallels plesk:

ERROR: Exception The system cannot find the file specified. (Error code 2) at Unable to connect to pipe \\.\pipe\psapipe

Para sanar este erro você pode reiniciar o plesk (caso esteja iniciado) ou pode inicializar o mesmo caso esteja parado.

Lentidão no login via terminal services ou local em uma 2003 server sem Active Directory

Monday, January 24th, 2011

Em um ambiente Windows Server 2003 (web edition, standard edition, enterprise edition ou datacenter edition), comumente observamos que muitos administradores de sistemas Microsoft sofrem com a lentidão no logon de seu perfil de usuário (ainda que seja o administrador do sistema). Uma das coisas para quem está usando o active directory e percebe uma longa demora no logon do usuário de rede pode sanar o problema muito facilmente com apenas um ajuste:

Informar que o dns da conexão de rede é o servidor de active directory (server de dns, ad  e wins, normalmente).

Mas e quando o sistema não tem active directory e apresenta lentidão no ato do login (ainda que localmente e também logando-se como administrador)? Como resolvê-lo?

Alguns pontos que podemos considerar abaixo para mapear o problema e saná-lo com facilidade:

1 – Em administrative tools -> events, verifique se os logs do windows não estão muito grandes, uma possível rotaçÃo desses logs seria a saída (isto é, quando ajustamos estes logs para armazenarem muitos megas de informação),

2 – Verifique se, ao iniciar o sistema operacional o mesmo não está carregando serviços desnecessários (pode-se usar start->run-> msconfig), ali você estará apto a desativar serviços que você REALMENTE conhece e que precisam ser parados por estarem com problemas ou não estejam com uso em seu sistema (ainda que não resolva, acredite, poupa memória que é uma beleza),

3 – Em services procure por serviços inúteis ou mesmo ultra desnecessários como por exemplo Wifi aonde normalmente se tem cabeamento estruturado,

4 – Observe, dentro das ferramentas administrativas o desempenho do servidor com a ferramenta de desempenho, veja se o load ultrapassa 50% de cpu em tempo corrente, isto não seria bom e estaria na hora de avaliar uma possível upgrade. Paginação e serviços que operam em background podem esfaquea-lo pelas costas no momento em que mais precisa de memória.

5 – Desative o bendito serviço de indexação do Windows, raramente você que usa um servidor Windows Server não saberá aonde os arquivos estão (pelo menos os administradores de sistemas devem pensar assim),

6 – Verifique S.m.a.r.t, badblocks e a rotação constante do disco com HD tune (é grátis, leve e funciona de verdade!),

7 – SE TODOS os pontos acima foram considerados WIN por sua equipe ou você, acredite, o ponto a seguir irá sanar a coisa. Se eu lhe disser que é um mapeamento de unidade de rede que carrega aumenticamente e que está offline, e se eu afirmar que esse danado está ocasionado esta lentidão, vai acreditar? Pois é, se estiver inativo por algum motivo físico (pc queimado, mudança de pc e etc) remova-o, do contrário ative o dispositivo de rede e o problema estará sanado.

Observação: Será que essa dica não vale uma caixa de bis? Whois no domínio, sedex na mão e pls, uma caixa de bis preto!

como economizar na conta de luz com aquecedor solar (dica quente)

Monday, December 6th, 2010

Fazia tempo que não posta algo, e principalmente sem flame para com pessoas/instituições que “plantaram e colheram” aquilo que inflamaram. Desta vez vim discutir algo interessante, plausível e principalmente bom para o bolso e o meio ambiente, vim falar de Solução Ecologicamente Correta!
Não necessariamente irei abranger todos os meios de se ter um lugar ecologicamente e economicamente correto, isto daria livros com muitas páginas, pois nos links abaixo vocês podem acompanhar muito sobre o assunto (isto de forma mais abrangente):

http://bbel.uol.com.br/comportamento/post/cozinha-ecologicamente-correta.aspx

http://www.reacaoambiental.com.br/?p=325

Ao estar adquirindo minha primeira casa, parei para pensar como poderia economizar de maneira que “não apertasse o cinto” dentro de minha própria casa. Ao analisar bem, pude perceber que algo de impacto na vida de um desenvolvedor/sysadmin/envolvido diretamente com TI é o custo de energia elétrica, principalmente se esta energia for do estado de Minas Gerais. Como todos sabem é a energia elétrica mais cara do país (e não se justifica, pois basta uma chuva e pimba, picos de luz, quedas e etc).

Seguindo a linha de raciocínio aonde a economia fica aliada ao conforto e não a privações em termos de luxo/conforto/necessidades básicas, podemos finalizar nosso pensamento da seguinte forma:

1 – Meu computador não poderá ser desligado em um momento de suma importância como o de trabalho,

2 – Minha internet não poderá ser desativada em momento de uso,

3 – meus eletrodomésticos jamais poderiam ser desativados, principalmente geladeira.

O que fazer para economizar? Tomar banho frio?

NEGATIVO!

Quem sabe você não está se perguntando? Quem consome mais energia elétrica em uma casa/apartamento comum?

Respondo depois de pesquisar: Quem consome mais energia é o chuveiro elétrico!

Prestando consultoria em um cliente que vende equipamentos de aquecedor solar, pude perceber que o fluxo de compradores na empresa de revenda de aquecedor solar Tuma que atendente contagem e belo horizonte era muito alto, principalmente em termos de instaladores (bombeiros especializados em aquecimento solar), fui imediatamente atraído a condição de cliente, não mais sendo o consultor da empresa neste instante.

Ao conhecer mais sobre o produto, entender como funcionava o auxiliar elétrico (que tem o termostato), entender sobre a sobra de água para o dia seguinte e etc, ao sondar sobre o equipamento em pesquisa (TUMA SOLAREM), vi o selo do INMETRO (isto tem suma importância na aquisição do seu equipamento), percebi que as placas que cotei tinham eficiência A no INMETRO, assim fiquei mais descansado. Restava saber quanto custaria o equipamento e quanto de economia eu alcançaria se seguisse de modo que não deixasse o auxiliar elétrico automático na minha residência. É de se espantar, mas 60% de economia de energia foi algo maravilhoso aqui para os meus olhos :D .

Eu recomendo, além de politicamente correto, ecologicamente é correto, e o mais gostoso, ECONOMICAMENTE correto.
Investimento?
400L + 2 placas classe A no INMETRO não deram nem 1800 reais!
Vale a pena.
O equipamento dura em média entre 15 e 20 anos, basta fazer a base de cálculo por mês de economia x 240 meses (20 anos), neste ponto o investimento fica como “um trocado para o passado”.

Economizar energia sem dúvidas alguma é muito simples, faça sua escolha :D .

yum: error: no dbpath has been set on Centos VPS

Sunday, September 26th, 2010

Seu erro parece com:

[ root@nomedoserver]# yum clean all
Loaded plugins: fastestmirror
error: no dbpath has been set
error: cannot open Packages database in /%{_dbpath}
Traceback (most recent call last):
File “/usr/bin/yum”, line 29, in ?
yummain.user_main(sys.argv[1:], exit_code=True)
File “/usr/share/yum-cli/yummain.py”, line 229, in user_main
errcode = main(args)
File “/usr/share/yum-cli/yummain.py”, line 84, in main
base.getOptionsConfig(args)
File “/usr/share/yum-cli/cli.py”, line 184, in getOptionsConfig
enabled_plugins=self.optparser._splitArg(opts.enableplugins))
File “/usr/lib/python2.4/site-packages/yum/__init__.py”, line 191, in _getConfig
self._conf = config.readMainConfig(startupconf)
File “/usr/lib/python2.4/site-packages/yum/config.py”, line 754, in readMainConfig
yumvars['releasever'] = _getsysver(startupconf.installroot, startupconf.distroverpkg)
File “/usr/lib/python2.4/site-packages/yum/config.py”, line 824, in _getsysver
idx = ts.dbMatch(‘provides’, distroverpkg)
TypeError: rpmdb open failed

Use:

yum clean all
rm -f /var/lib/rpm/__db*
rpm –rebuilddb
yum update

Se persistir:

rm /dev/urandom
mknod -m 644 /dev/urandom c 1 9

(DEVE RESOLVER)
Caso não resolva pare a vps
mknod –mode 644 /vz/private/100/lib/udev/devices/urandom c 1 9
start VPS

Service Unavailable HTTP Error 503 – Coisas que só o IIS pode “proporcionar” a você

Monday, July 12th, 2010

Das coisas que mais me irritam a mais especial é a falta de logs precisos por parte do sistema operacional. Em se tratando de Microsoft aí é que a coisa pega e pega FEIO!

Um dos erros que me fizeram gastar aproximadamente 8 horas de troubleshooting foi o erro Service Unavailable HTTP Error 503. Das coisas que mais se alegam são:

- Chaves pré-definidas junto aos serviços do IIS:
http://blogs.iis.net/webtopics/archive/2010/02/17/a-not-so-common-root-cause-for-503-service-unavailable.aspx
e
http://blogs.msdn.com/b/drnick/archive/2006/10/16/configuring-http-for-windows-vista.aspx

- Contas sem autoridade junto ao IIS:
http://social.msdn.microsoft.com/Forums/en/mdmsetup/thread/4689da4a-0452-45b6-bbb4-21ccb76d8ff9

- IIS operando com recursos de 32 bits em plataformas 64 bits:
http://forums.asp.net/p/1502755/3560390.aspx

- IIS com “loucuras” que só Deus para não duvidar:
http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/55f71614-ef1b-4015-b9c8-a42c1e700c25.mspx?mfr=true

- Falaram que pode ser algum sysadmin modificando algo, por isso o downtime:
http://www.checkupdown.com/status/E503_pt.html
http://technet.microsoft.com/pt-br/library/cc736325%28WS.10%29.aspx

Caso você tenha “passado” pelos pontos acima e nenhum deles “sanou” seu problema, e além disso, você tem CERTEZA de que sua appweb está 100% depurada, debug 100% ok, tudo filé, e ainda tem CERTEZA que nenhum admin andou fazendo besteira em seu servidor, a saída pode ser alcançada da seguinte forma:

1 – Observe se existe alguma tabela corrompida em suas consultas SQL na appweb (caso consiga – detalhe, foi meu caso com BDs do tipo Mysql).
2 – Permissões em arquivos remotos ou tempo de resposta a tais chamadas.

Perceba que não é erro em nada de configuração, servidor e etc (evite loucuras como as minhas de tuning, pensando que era um erro de alto processamento, i/o e etc).

Normalmente os logs ineficientes (ex: 503 “n/a” nome do POOL_com_paranente_problema) do IIS falam que o pool de aplicativos “XXX” (nome que você deu ao pool) para rodar aplicativos DOTNET expirou/expulso/estuprou/estrangulou e etc a requisição (quer seja por POST ou GET). (na pasta logfiles dentro de windows – aonde o iis guarda seus logs)
O mais top dos erros:

1. “Connection_Dropped DefaultAppPool”
2. “Connection_Abandoned_By_AppPool DefaultAppPool”

Mesmo que você venha utilizar-se do software de debug que a MS tem, sinto muito em lhe avisar, mas será em vão utilizar-se tal ferramenta!
Siga os meus conselhos nas linhas em negrito, aquilo ali pode salvar seu dia. Use um frontend para executar suas querys e ver se não estão ali as saídas.

Ferramenta: http://support.microsoft.com/kb/919792/

Como extrair arquivos RAR (ou do WINRAR) no Ubuntu 10.04 (Lucid Lynx)?

Tuesday, June 29th, 2010

Se você, toda vez que tenta abrir (extrair) um arquivo rar recebe uma mensagem de erro informando que não consegue abrir o pacote, não se preocupe, é coisa simples de se resolver.

Os passos para o erro seguem-se na imagem abaixo:

Para resolver clique em Aplicativos -> Acessórios -> Terminal

No console digite:

sudo apt-get install rar

A saída deverá ser semelhante a isto (em uma plataforma x86):

Lendo listas de pacotes… Pronto
Construindo árvore de dependências
Lendo informação de estado… Pronto
Pacotes sugeridos:
unrar
Os NOVOS pacotes a seguir serão instalados:
rar
0 pacotes atualizados, 1 pacotes novos instalados, 0 a serem removidos e 0 não atualizados.
É preciso baixar 556kB de arquivos.
Depois desta operação, 1192kB adicionais de espaço em disco serão usados.
Obter:1 http://br.archive.ubuntu.com/ubuntu/ lucid/multiverse rar 1:3.9.b2-1 [556kB]
Baixados 556kB em 5s (95,7kB/s)
Selecionando pacote previamente não selecionado rar.
(Lendo banco de dados … 183480 arquivos e diretórios atualmente instalados).
Desempacotando rar (de …/rar_1%3a3.9.b2-1_i386.deb) …
Processando gatilhos para man-db …
Configurando rar (1:3.9.b2-1) …

Pronto, agora basta tentar extrair novamente que não mais ocorrerá o erro.

Abraços.

Error on backups parallels plesk windows Meu windows apresenta erro no parallels plesk no momento do backup

Monday, June 28th, 2010


Este é o erro que está ocorrendo com você?

Error: Runtime error in pmmcli:
(3, ‘GetDiskFreeSpace’, ‘The system cannot find the path specified.’)
Traceback (most recent call last):
File “C:\Program Files\Parallels\Plesk\admin\share\pmmcli\pmmcli.py”, line 1846, in main
data_action_response, errcode_response, error_message = actions.get(sys.argv[1][2:])(parameters)
File “C:\Program Files\Parallels\Plesk\admin\share\pmmcli\pmmcli.py”, line 1721, in make_dump
return ActionRunner(MakeDumpAction, backup_task_description, None).doActivity()
File “C:\Program Files\Parallels\Plesk\admin\share\pmmcli\pmmcli.py”, line 75, in doActivity
result = self.processor.doActivity()
File “C:\Program Files\Parallels\Plesk\admin\share\pmmcli\pmmcli.py”, line 860, in doActivity
if osutil.free_bytes(local_dump_directory) < (long(disk_space_required) * 1048576):
File “C:\Program Files\Parallels\Plesk\admin\lib\python\osutil.py”, line 188, in free_bytes
sectorsPerCluster, bytesPerSector, numFreeClusters, totalNumClusters = GetDiskFreeSpace(os.path.splitdrive(path)[0] + “\\”)
error: (3, ‘GetDiskFreeSpace’, ‘The system cannot find the path specified.’)

Se é, antes de tentar seu backup, atualize o plesk para uma versão mais recente e o problema deverá estar sanado.

Twitter indisponível hoje :(

Wednesday, June 23rd, 2010

Twitter fora do ar :( as 13:15.