jun 222018
 

INTRODUÇÃO

Pretendo abordar nesse tutorial a migração das máquinas virtuais do Citrix XenServer para o ProxMox. Por mais que a versão 6.2 do Citrix XenServer tenha se tornado 100% opensource, nunca fiquei 100% satisfeito com o XenCenter (ferramenta de gerenciamento do Citrix XenServer) ser disponibilizado apenas para Windows. Com isso,  fui obrigado a ter uma máquina virtual com Windows apenas para gerenciar os servidores Citrix Xen. Assim, surgiu o interesse em migrar para o KVM (Kernel-based Virtual Machine) que possui várias ferramentas de gerenciamento. Por considerar mais prática e intuitiva, a escolha feita foi pelo ProxMox VE.

 

EXPORTANDO A VM DO XENSERVER

É inegável que  XenCenter seja muito intuitivo. Mas na maioria das vezes, o procedimento de exportação de VM (Menu: VM>Export) não funciona corretamente:
citrix-export-error

Continue reading »

jun 192018
 

ESTRUTURA DA TABELA E INSERÇÃO DE REGISTROS

O intuito deste artigo é compartilhar um pouco da minha experiência com migração de arquivos BLOB em um banco de dados Oracle para sistema de arquivos utilizando Python.

Antes de efetivamente partirmos para o código de migração, vamos ver os dados de acesso e como será a estrutura da tabela.

Utilizo os seguintes dados de acesso para o esquema no Oracle:

  • user: desv
  • pass: 123456
  • service name: xe
  • IP do host onde está o SGBD do Oracle: 192.168.1.131

Vamos utilizar a estrutura da tabela a seguir:

CREATE TABLE TB_ARQUIVO (
	COD_ARQUIVO           NUMBER PRIMARY KEY,
	DTHINCLUSAO           DATE NOT NULL,
	ARQUIVO               BLOB,
	DS_ARQUIVO            VARCHAR2(50 BYTE),
	DS_PATH_ARQUIVO       VARCHAR2(255 BYTE)
);

Continue reading »

Migração de Samba para Active Directory

 Clusterweb, ClusterWeb, Desktop, Leitura Recomendada, Redes, Segurança, Windows  Comentários desativados em Migração de Samba para Active Directory
maio 312018
 

Conseguimos provar em Laboratório que é possível realizar uma migração de um diretório baseado em Linux (Samba) para Active Directory, sem desenvolver nenhum tipo de script para importar as informações de um ambiente para o outro. E melhor, sem gerar impactos para o usuário!

 

Utilizando a ferramenta ADMT 3.0 conseguimos migrar todos os objetos para o Active Directory, baseado em Windows Server 2003.

 

Nota: Não conseguimos sucesso na utilização da versão 3.1 da ferramenta ADMT para migrar os objetos do Samba para um Active Directory baseado em Windows Server 2008. Portanto, crie um AD baseado na versão Windows 2003 e use o ADMT 3.0. Após a finalização da migração e término da convivência dos ambientes Samba e AD, atualize o AD para a versão 2008.

 

Considerações importantes para uma migração aonde o domínio de origem é um Samba emulando um PDC NT:

 

Continue reading »

COMO REALIZAR MIGRAÇÃO DE WINDOWS PARA LINUX EM UMA EMPRESA

 Backup, Clusterweb, ClusterWeb, Debian, Desktop, Leitura Recomendada, Linux, Redes, Segurança, Sistemas de Armazenamento, Windows  Comentários desativados em COMO REALIZAR MIGRAÇÃO DE WINDOWS PARA LINUX EM UMA EMPRESA
abr 032017
 

FAZENDO A MIGRAÇÃO DO SISTEMA PROPRIETÁRIO PARA O LINUX

 

PLATAFORMA DO SOFTWARE PROPRIETÁRIO (WINDOWS)

O parque de máquinas da empresa usa o sistema operacional Windows, porém, grande parte do parque de máquinas não possui licenças do sistema, foi detectada a necessidade de adotar um sistema operacional livre para gerar economia para a empresa na compra de licenças e, também, trazer mais segurança para a rede de computadores da empresa, pois a maioria dos softwares maliciosos, conhecidos como vírus, foram desenvolvidos para os sistemas operacionais proprietários.

 

DISTRIBUIÇÃO LINUX UTILIZADA

A distribuição escolhida para implantação foi o Debian 8, codinome Jessie, com a interface gráfica LXDE. A distribuição Debian é conhecida mundialmente por sua estabilidade, cada pacote do sistema passa por diversos testes. Após 2 anos de testes, é lançada uma nova versão do sistema operacional estável para download. A distribuição Debian tem um ótimo suporte, pois possui uma comunidade de usuários e mantenedores grande.
Continue reading »

Migrar do WordPress para Joomla

 Banco de Dados, Leitura Recomendada  Comentários desativados em Migrar do WordPress para Joomla
mar 052014
 

Embora WordPress seja um sistema poderoso de gerenciamento de conteúdo, particularmente para usado em blogs, Joomla tem vantagens em muitas áreas, oferecendo páginas mais completas com seções estilizadas. Caso queira migrar do WordPress para Joomla, é possível fazê-lo com a extensão “JConverter”, um plug-in grátis para Joomla. Caso não tenha os detalhes em sua “database” do WordPress, os obtenha através da configuração de acesso a arquivos “FTP”.

 

Instruções

  1. 1

    Visite a página de extensão “JConverter” e clique no botão “Download” para salvá-lo em seu computador.

  2. 2

    Entre na área de administração Joomla. Essa deve ser uma instalação recente, com os arquivos de exemplo deletados. Clique em “Extensões,” depois “Instalar ; Desinstalar.” Clique em “Navegador”, vá até o arquivo “JConverter”, então clique em “Upload Arquivo e Instale”.

  3. 3

    Clique em “Extensões,” “JConverter,” e “Configuração global.”. No campo de texto que aparecerá, digite os detalhes de seu banco de dados WordPress. Isso inclui o seu “hostame”, nome do “database”, usuário, senha e prefixo do “database” (geralmente “wp_”). Caso não possua essa informação, entre em sua conta “FTP” e navegue até a pasta de instalação de seu blog. Abra “config.php” e procure a informação no alto do arquivo com o cabeçalho “Minhas configurações SQL.”

  4. 4

    Selecione a opção que você queira utilizando o “Configurações Globais” que fica no cabeçalho. Perceba que não será necessário selecionar “Importar comentários do JomComment?” a não ser que já tenha instalado a extensão “JomComments”. Isso é necessário somente se você quiser importar os comentários de seu blog.

  5. 5

    Clique em “Salvar,” então clique no botão “Iniciar conversação.”

  6. 6

    Vá para a área de “Gerenciamento de arquivos” em seu Joomla e tenha certeza que as informações foram importadas corretamente. Examine cada publicação e corrija os erros, tal como parágrafos faltantes ou carácteres especiais.

  7. 7

    Verifique a seção “Gerenciamento de categoria” na área de administração do Joomla. Em Joomla 1.5, categorias podem ser alinhadas com apenas duas camadas de profundidades – “Seções” e “Categorias”. Porém, na versão 1.6, hierarquias mais complexas são permitidas. Verifique as categorias importadas e tenha certeza que a estrutura esteja orreta. Caso não seja possível importar as hierarquias do WordPress, é possível ou utilizar uma camada a partir de agora, ou fazer uma lista de links no módulo que irá mostrá-las na estrutura desejada.

  8. 8

    Vá para a seção “Gerenciamento de usuário” e tenha certeza que os usuários e endereços de e-mail foram importados corretamente. Caso não tenham sido, faça as correções necessárias.

Migrando Servidores Zimbra

 Clusterweb, Leitura Recomendada, Linux, Servidor de E-mail  Comentários desativados em Migrando Servidores Zimbra
maio 082013
 

O Zimbra é um servidor de colaboração completo, o “lindo” nome é porque ele foi criado pela empresa Zimbra e depois comprado pelo Yahoo e finalmente pela VMware mas como o nome já estava consolidado ficou :-P . Ele é um concorrente direto do Exchange da Microsoft e como ele tem: Email, agenda colaborativa, interface de administração completa, Porta Arquivos e gerenciamento de recursos, possui cliente integrado de Email (Exchange tem o Outlook ele tem o Zimbra Desktop), etc…

Pode ser comprado com Licença de suporte e uso, pode também ser utilizado em sua versão Open Source que conta com todas as funcionalidades principais. Possui muita documentação (wiki.zimbra.com) e integra com LDAP, Active Directory, etc.

Mas eu vou falar hoje sobre migração entre servidores Zimbra, já trabalho com ele há alguns anos e em alguns clientes chegou a hora de atualizar a versão. É uma tarefa simples, dá um pouco de trabalho mas é simples, basta ter um servidor novo instalado e funcionando(basta seguir alguns dos muitos tutoriais que existem por aí para isso :-) ) e fazer a migração.

Já migrei de Zimbra 5.0.9 para 7, de 6 para 8 e de 7 para 8. Esse procedimento funcionou em todas as migrações que fiz para a versão 8 do Zimbra, que é a mais nova e muito mais rápida. Portanto faça em uma ambiente de teste, confira se há igualdade nas contas dos servidores e depois pode fazer a migração. Lembre-se que não é atualizar o software, é migrar para outro servidor com versão mais nova do software.

Esse procedimento não altera nada no servidor de produção, ou seja, pode fazer que continua tudo funcionando.

 

Vamos à migração.

Com os dois servidores na mesma rede, vamos de 192.168.1.250 produção e 192.168.1.251 migração, vamos começar o processo.

Primeiro sincronizamos as contas, podem ser todas ou apenas algumas, no caso faremos com todas. No servidor de migração faremos o serviços através de linha de comando, mas não se preocupe farei um pequeno tutorial sobra a função na interface de administração posteriormente :-) .

Se você tem 10 ou 20 usuários crie de novo e deixe de preguiça :-P , mas se tem 200, 400, 1500, 2500… Faça com scripts que é muito melhor :-)

Primeiro vamos obter uma lista das contas e dados básicos dos usuários com o seguinte procedimento:

Logue no servidor de produção como root e mude para usuário zimbra:
# su – zimbra

Entre no diretório /tmp e crie um diretório contas:
$ cd /tmp
$ mkdir contas

Crie o seguinte script no /tmp que irá obter os dados(nome completo(displayName, primeiro nome(givenName), sobrenome(sn),senha(userPassword) dos usuários e gravá-los nos diretório contas:

vi obtem-contas-zimbra.sh
#!/bin/bash
# Obtemos uma lista de todas as contas do servidor
ZMPROV="/opt/zimbra/bin/zmprov"
for MAIL in $($ZMPROV -l gaa | sort); 	do
		DNOME=$($ZMPROV -l ga $MAIL displayName | grep displayName | awk -F " " '{print $2" "$3" "$4" "$5}')
		PNOME=$($ZMPROV -l ga $MAIL givenName | grep givenName | awk -F " " '{print $2}')
		SNOME=$($ZMPROV -l ga $MAIL sn | grep sn | awk -F " " '{print $2}')
		SENHA=$($ZMPROV -l ga $MAIL userPassword | grep userPassword | awk -F " " '{print $2}')

   		echo "Conta: $MAIL" > contas/dados-$MAIL
   		echo "Display: $DNOME" >> contas/dados-$MAIL
		echo "Nome: $PNOME" >> contas/dados-$MAIL
		echo "Sobrenome: $SNOME" >> contas/dados-$MAIL
		echo "Senha: $SENHA" >> contas/dados-$MAIL
done

Esse script irá criar um arquivo no diretório contas com o nome dados-EMAIL_DA_PESSOA com os dados necessários.

Execute o script da seguinte forma:

$ chmod 755 obtem-contas-zimbra.sh
$ ./obtem-contas-zimbra.sh

Agora basta copiar esse diretório para o servidor de migração(ftp, ssh, rsync, pendrive, cd-rom … use seu recurso preferido).

No servidor de migração logue como root, mude para o usuário zimbra e copie o diretório contas para o /tmp :

# su – zimbra
$ cd /tmp

Agora crie o seguinte script para criar os usuários:

vi cria-contas.sh

#!/bin/bash
# Cria as contas no Zimbra
ZMPROV="/opt/zimbra/bin/zmprov"
for DADOS in $(ls contas); do

	EMAIL=$(grep Conta contas/$DADOS | awk -F " " '{print $2}')
	DNAME=$(grep Display contas/$DADOS | awk -F " " '{print $2" "$3" "$4" "$5}')
	PNAME=$(grep Nome contas/$DADOS | awk -F " " '{print $2}')
	SNAME=$(grep Sobrenome contas/$DADOS | awk -F " " '{print $2}')
	SENHA=$(grep Senha contas/$DADOS | awk -F " " '{print $2}')

	$ZMPROV ca "$EMAIL" "$SENHA" displayName "$DNAME" givenName "$PNAME" sn "$SNAME"
	done

Esse script lê todos os arquivos do diretório contas, transforma os dados que obtivemos no servidor de produção e cria as contas, caso algum dados não exista(displayName, givenName, sn) ele cria com valor padrão do nome da conta. Não podem estar vazios EMAIL e SENHA.

Execute o script da seguinte forma:

$ chmod 755 cria-contas.sh
$ ./cria-contas.sh

Pronto, com os usuários criados vamos aos emails, se pudermos parar o servidor de produção podemos criar exportar as mensagens conta a conta e depois importar no servidor de migração, mas se não pudermos temos um script de sincronia chamado imapsync, que pode nos ajudar.

Vou colocar aqui os dois métodos utilizados para que vocês possam escolher.

O primeiro método iremos parar o recebimento de email, pode ser desligando o acesso externo, pode ser bloqueando as portas de leitura/recebimento, bem você é quem sabe. Vamos ao procedimento:

No servidor de produção, faça o seguinte:

# su – zimbra
$ cd /tmp
$ mkdir mensagens

Agora vamos usar o seguinte script para importar as caixas:

vi obtem-mensagens.sh
#!/bin/bash
# Obtemos uma lista de todas as contas do servidor
ZMPROV="/opt/zimbra/bin/zmprov"
ZMMAILBOX="/opt/zimbra/bin/zmmailbox"
for MAIL in $($ZMPROV -l gaa | sort); 	do
		$ZMMAILBOX -z -m $MAIL getRestURL "//?fmt=tgz" > mensagens/$MAIL.tgz
done

Execute o script da seguinte forma:

$ chmod 755 obtem-mensagens.sh
$ ./obtem-mensagens.sh

Com esse script criamos um arquivos chamado, emaildousuario@dominio.com.br.tgz dentro do diretório mensagens, agora basta compartilhar esse diretório(copiar pode ser inviável se for muito grande, eu lidei com diretórios com mais de 200GB e sei disso :-) ), pode compartilhar via NFS, SMB, CIFS, GlusterFS, o que você desejar, desde que compartilhe com o servidor de migração.

No servidor de migração entre no diretório onde as mensagens foram compartilhadas e faça o seguinte como usuário zimbra(ele tem que ter direito de leitura/escrita no diretório para criar o script e para ler os arquivos. Ex: /mnt/mensagens

# su – zimbra
$ cd /mnt/

Crie o seguinte script:

vi importa-mensagens.sh

#!/bin/bash
# Obtemos uma lista de todas as contas do servidor
ZMPROV="/opt/zimbra/bin/zmprov"
ZMMAILBOX="/opt/zimbra/bin/zmmailbox"
for MAIL in $($ZMPROV -l gaa | sort); 	do
                $ZMMAILBOX -z -m $MAIL postRestURL "//?fmt=tgz&resolve=reset" mensagens/$MAIL.tgz 
done

Execute o script da seguinte forma:

$ chmod 755 importa-mensagens.sh
$ ./importa-mensagens.sh

Pronto, todas as mensagens estão importadas, agora basta conferir e habilitar o servidor novo para receber e enviar as mensagens.

Mas se você não pode parar o servidor para exportar/importar as mensagens pode usar o script imasync para fazer a sincronia com os servidores online.

Utilizei a versão 1.3.15, as anteriores deram erro.

Já estando com as contas criadas lembre de liberar o login em texto plano (para a migração apenas), crie no servidor de migração o seguinte script:

vi migra-mensagens.sh
#!/bin/bash
ZMPROV="/opt/zimbra/bin/zmprov"
for USER in $($ZMPROV -l gaa); do

imapsync --nosyncacls --host1 192.168.1.250 --host2 192.168.1.251 --authmech1 PLAIN --authmech2 PLAIN --ssl1 --user1 $USER --authuser1 admin@dominio.com.br --password1 'senha_do_admin_zimbra_producao' --ssl2 --user2 $USER --authuser2 admin@dominio.com.br --password2 'senha_do_admin_zimbra_migracao'

done

Agora execute:

$ chmod 755 migra-mensagens.sh
$ ./migra-mensagens.sh

Pronto, contas e mensagens criadas. Se o servidor não for entrar em produção no dia, basta repetir o script que ele atualiza as mensagens que ainda não estão no servidor de migração.

Migrando do PHP 4 para o PHP 5

 Clusterweb  Comentários desativados em Migrando do PHP 4 para o PHP 5
ago 212012
 

Essa sessão de faq ajudará a você migrar do PHP 4 para o PHP 5.

Migrando do PHP 4 para o PHP 5
Apesar do PHP 5 oferecer muitas vantagens novas, ele foi feito para ser o mais compatível possível com as versões anteriores com poucas funcionalidades sendo perdidas no processo.

Leia o apêndice de migração para o PHP 5 deste manual pois ele contêm ainda mais informações no tópico de migração para o PHP 5.

O MySQL funciona no PHP 5? Ele parece ter desaperecido.
MySQL é suportado com apenas a modificação de não ser mais habilitado por default in PHP 5. Isso essencialmente significa que o PHP não inclui a opção –with-mysql na linha configure então você deve fazer isso manualmente quando compilando o PHP. Usuários do Windows editarão php.ini e habilitarão a DLL php_mysql.dll já que no PHP 4 essa DLL não existia, era simplesmente montada no seus binários do PHP para o Windows.

Além disso, as bibliotecas de cliente do MySQL não são mais bundled com o PHP. Mais detalhes nesse tópico são abrangidas no seguinte FAQ e leia também a seção MySQL para detalhes sobre instalação do MySQL. Um exemplo de linha de configure seria –with-mysql=/usr enquanto usuários do Windows precisarão do arquivo libmySQL.dll disponível no sistema.

Eu ouvi que o PHP 5 tem um modelo de POO inteiramente novo, o meu código em POO já existente funcionará? Onde eu acho informação sobre essas novas caracterísicas de POO?
A principal mudança no PHP 5 é o modelo de POO já que o PHP 5 agora usa o Zend Engine 2.0. A diretiva zend.ze1_compatibility_mode permite compatibilidade com o Zend Engine 1.0 (PHP 4).

O novo modelo de POO está documentado nas seções OOP language reference e OOP migration appendix.

Então, além do novo modelo de POO, o que mais foi alterado no PHP 5? Além disso, existe numa versão específica do manual do PHP para a versão 5?
Algumas poucos modificações exitem, veja o apêndice 5 de migração para detalhes. Não haverá uma versão específica do manual do PHP para a versão 5 já que o cerne do PHP ainda é o mesmo.