segunda-feira, 23 de novembro de 2009

Utilizando o diskpart.exe da Microsoft para extender partições no Windows.

Esta foi uma necessidade recente onde, em um dos servidores que administro o espaço para o banco de dados do sistema ali hospedado, acabou.
A partição do banco de dados esta em um storage HP.

Acessei o gerenciador do storage e, aumentei o tamanho da partição neste gerenciador, depois disso tive que utilizar o "diskpart.exe" para expandir no windows e fazê-lo reconhecer o novo tamanho.

Esta expansão teve que ser feita pois o tipo da partição do windows esta como "básico". Caso estivesse como dinâmico o mesmo já reconheceria de imediato, após um boot do servidor o novo espaço alocado.

Este texto explicativo foi copiado do site da microsoft, achei meio desnecessário reescrevê-lo. O que importa é a parte prática o restante é apenas introdução.

É possível usar o utilitário Diskpart.exe para gerenciar discos, partições e volumes de uma interface de linha de comando. É possível usar o Diskpart.exe nos discos Básicos e nos Dinâmicos. Se um volume NTFS residir em um contêiner RAID 5 de hardware capaz de adicionar espaço ao contêiner, será possível estender o volume NTFS com o Diskpart.exe enquanto o disco permanece um disco Básico.

Use o comando extend para incorporar o espaço não alocado em um volume existente enquanto preserva os dados.

A seguir estão os requisitos para o comando extend:

* O volume deve ser formatado no sistema de arquivos NTFS.
* Nos volumes básicos, o espaço não alocado para a extensão deve ser o próximo espaço contido no mesmo disco.
* Nos volumes dinâmicos, o espaço não alocado pode ser qualquer espaço vazio em qualquer disco dinâmico do sistema.
* Apenas a extensão de volumes de dados é compatível. Os volumes do sistema ou de inicialização podem ter a extensão bloqueada e a seguinte mensagem de erro pode ser exibida:
O DiskPart não pôde estender o volume. Certifique-se de que o volume seja válido para extensão

Não é possível estender a partição se o arquivo de paginação do sistema estiver localizado na partição. Mova o arquivo de paginação para uma partição que você não deseja estender.

Para estender a partição ou o volume, é necessário primeiro selecionar o volume para manter o foco nele e, então, será possível especificar o quanto deseja aumentar a extensão. Para estender um volume, execute as seguintes etapas:

1. Em um prompt de comando, digite diskpart.exe.
2. Digite list volume para exibir os volumes existentes no computador.
3. Digite Select volume número do volume no qual número do volume é o número do volume que deseja estender.
4. Digite extend [size=n] [disk=n] [noerr] . A seguir estão descritos os parâmetros:
size=n
O espaço, em MB, para adicionar à partição atual. Se você não especificar um tamanho, o disco será estendido até ocupar todo o próximo espaço contíguo não alocado.

disk=n
O disco dinâmico em que o volume será estendido. O espaço igual ao size=n será alocado no disco. Se nenhum disco for especificado, o volume será estendido no atual.

noerr
Apenas para script. Quando um erro é acionado, este parâmetro especifica que o Diskpart continuará a processar os comandos como se o erro não tivesse ocorrido. Sem o parâmetro noerr, um erro faz com que o Diskpart encerre com um código de erro.
5. Digite exit para encerrar o Diskpart.exe.

Quando o comando extend é concluído, uma mensagem de erro, afirmando que o Diskpart estendeu com êxito o volume, é exibida. O novo espaço deve ser adicionado à unidade existente enquanto os dados são mantidos no volume.

A única coisa que esqueci de fazer foi, tirar os prints antes da alteração mas, na próxima vez eu faço isso.

Esta primeira tela (que na verdade seria a última depois da alteração realizada), foi o que aconteceu com a partição que, antes era de 10Gb e agora esta com 25Gb.



Os comandos executados para realizar a operação, são os comandos descritos abaixo:



Nos comandos acima foram apenas para identificar as partições que seriam alteradas e identificar o número do volume.
Um detalhe importante é que após selecionar o volume que se deseja expandir, caso você não coloque a informação "disk=n" o diskpart executa o comando para a partição selecionada então, não há um risco aqui de extender a partição errada. =D
Outra informação importante, o formato do diskpart adicionar ou expandir a partição se dá em MB e não GB então, neste caso, eu tinha uma partição ativa de 10Gb e tive que extendê-la para 25Gb ou seja, apenas 15Gb a mais.

O primeiro print, tem uma mensagem escrita "322 MB - Não alocado", isso foi um erro de cálculo na hora de dimensionar a partição em Gb, para arrumar é só executar o extend novamente, colocando o valor em MB.

O comando ficou conforme abaixo:



Depois de tudo isso feito, o gerenciador acusará o novo tamanho do disco.

É isso, sem mais delongas.. =D
O processo de reduzir a partição também é possível mas, não será abordado.

Deixem suas críticas ou sugestões.

Até a próxima.

quarta-feira, 19 de agosto de 2009

Assunto das antigas...

Texto de junho de 2007...

Esse assunto apareceu uma vez, em uma reunião técnica em uma empresa que trabalhava e, rodando uma agenda antiga
achei o assunto escrito e resolvi postá-lo aqui.

Esse técnico teve a capacidade "técnica" de dizer que firefox é só para linux.
Bom, vou escrever o que acho disso, lembrando que ninguém é obrigado a concordar, muito pelo contrário é minha opinião.

Firefox é só para Linux?

Existem administradores que acham que determinadas ferramentas, aplicações são só para Linux e outras só para windows, e realmente são.

Porém, existem softwares que são OpenSource e não "só para linux" funcionando muito bem em ambos ambientes e até em outras plataformas menos comuns.

Neste caso do firefox, a questão maior é, digamos, compatibilidade de linguagem de programação por que, existem coisas que só rodam em IE e estas mesmas coisas não rodam em Firefox, porém, o Firefox procura seguir todos os padrões de programação para web definida por orgãos que regulamentam isso na internet, coisa que o IE não segue muito bem pelo que podemos ver no dia a dia.

Bom, como este post é uma coisa bem antiga, muita coisa mudo e a cabeça de muito técnico também deve ter mudado (tomará), e outra, muitas matérias e reportagens já foram escritas por pessoas que tem um conhecimento muito maior que o meu sobre este assunto.

Para finalizar, software é software não importa o sistema operacional, o que importa é se ele é livre ou pago desde que funcione de acordo com o que precisamos.

Poderia escrever muitas coisas aqui mas, não vou perder tempo.

Abraço a todos e que Deus abençoe.

Configurando admuser.cgi

Para que não caia mais no meu esquecimento, fiz esse tutorial mais do que simples, mais do que já conhecido por todos que um dia utilizaram, mais do que já postado na net porém, para não ficar procurando um monte, fiz do jeito que me atendeu e escrevi, hehe.

Espero que se alguém precisar, possa ser útil.


Download do site
http://sarg.sourceforge.net/

# wget http://sarg.sourceforge.net/admuser-2.3.2.tar.gz

Descompacte o pacote para compilar e instalar.

# tar -xzvf admuser-2.3.2.tar.gz
# cd admuser-2.3.2

Compilando de forma geral, outras opções podem ser encontradas com: ./configure --help

# ./configure --prefix=/etc/squid/admuser --enable-language=Brazilian_Portuguese --enable-cgidir=/var/www/cgi-bin/admuser
# make && make install

Obs: Caso ocorra um erro durante o configure apontando falha na localização de bibliotecas de compilação instale o
pacote build-essential

# aptitude install build-essential
Depois disso rode os comando novamente a partir do ./configure.

Entre no diretório /etc/squid/admuser e edite o arquivo admuser.conf.
A primeira linha: password_file dever apontar onde fica o arquivo que aponta para o arquivo de senhas:

password_file /etc/squid/pwd_file

Agora crie este arquivo, pwd_file, e coloque o seguinte conteúdo no mesmo:

/etc/squid3/password_users;Senhas do proxy

Este caminho aponta para o arquivos de senhas que será criado pelo aplicativo htpasswd que integra o apache*
Este arquivo password_users deve conter a permissão do usuário que roda o apache2 neste caso www-data, para que o cgi consiga escrever
nele.

# cd /etc/squid3
# chown www-data.www-data password_users

Agora, acesse o diretório onde estão os arquivos cgi.
A pasta /var/www/cgi-bin/admuser deve conter permissão do usuário que roda o apache2 para poder ser executado por ele, assim como
o arquivo admuser.cgi.

# cd /var/www/cgi-bin
# chown -R www-data.www-data admuser/

Feito isto, agora é só acessar o diretório:

http://ip.do.server/cgi-bin/admuser/admuser.cgi


Configurações no apache.


Com o apache2 devidamente instalado, acesse o arquivo referente ao domínio interno que deve se encontrar em sites-available e realize a seguinte inclusão:
Levando em conta que o diretório do cgi-bin é /var/www/cgi-bin/

ScriptAlias /cgi-bin/ /var/www/cgi-bin/
ScriptAlias /admuser/ /var/www/cgi-bin/admuser/

AllowOverride None
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all


Através do ScriptAlias, é possível acessar direto a pasta onde está o arquivo cgi.

http://ip.do.server/admuser/admuser.cgi

Para bloquear o acesso a este administrador via web, apenas aos administradores, proceda da seguinte forma:

# cd /var/www/cgi-bin/admuser

Crie o arquivo, .htaccess dentro deste pasta e coloque o seguinte conteúdo:

AuthName "Administrador do Proxy"
AuthType Basic
AuthUserFile /var/www/cgi-bin/.senha
Require valid-user

Saia e salve, :wq

Agora execute o comando para criar o usuário:

# htpasswd -c .senha admin
New password:
Re-type new password:
Adding password for user admin

Agora no apache2.conf, localize a linha:

AccessFileName .htaccess

e coloque logo abaixo:


Options Indexes FollowSymLinks Includes
AllowOverride AuthConfig
AuthName "Acesso Restrito"
AuthType Basic
AuthUserFile /var/www/cgi-bin/admuser/.senha
require valid-user
Order allow,deny
Allow from all


Feito isso, reinicie /etc/init.d/apache2 reload e acesse o endereço novamente:

http://ip.do.server/admuser/admuser.cgi

Espero ter ajudado e, críticas ou sugestões são bem vindas.

Abraço a todos e que Deus abençoe.

sexta-feira, 27 de março de 2009

Após longa data, volto neste "maravilhoso" blog... para postar mais umas coisinhas do mundo linux.

CRIANDO VLANS NO DEBIAN, INTEGRANDO COM DHCP.


1º Definir as redes a serem utilizadas.
2º Baixar os pacotes necessários para rodar a vlan e dhcpd
3º Configurar o dhcpd, interfaces e carregar o módulo vlan

Os pacotes que são necessários para instalar a vlan e configurar o dhcp
aptitude search

- vlan
- dhcp3-server

Certifique-se de que as placas de rede estão com os módulos carregados:
lsmod

Para iniciar, vamos utilizar apenas 3 redes, que serão definidas da seguinte forma:

Tag ID - Vlan correspondente
1681 - vlan 1
1682 - vlan 2
1683 - vlan 3

Todas as redes serão 192.168.xxx.xxx/24
A tag ID pode ser definida conforme o gosto do cliente.

1ª Rede
192.168.1.0/24
192.168.1.1 gw
192.168.1.2 dhcp server
255.255.255.0 netmask
192.168.1.255 broadcast

2ª Rede
192.168.2.0/24
192.168.2.1 gw
192.168.2.2 dhcp server
255.255.255.0 netmask
192.168.2.255 broadcast

3ª Rede
192.168.3.0/24
192.168.3.1 gw
192.168.3.2 dhcpd server
255.255.255.0 netmask
192.168.3.255 broadcast

Depois de instalado o dhcp-server, vamos editá-lo para configurar as redes.
Em caso de uma rede muito grande, é importante fazer uma boa configuração para melhor entendimento.
O arquivo de configuração padrão ficou da seguinte forma:

cd /etc/dhcp3/
vim dhcpd.conf

ddns-update-style none;
default-lease-time 600;
max-lease-time 7200;
#authoritative;
log-facility local7;

include /etc/dhcp3/lab1/dhcpd.conf
include /etc/dhcp3/lab2/dhcpd.conf
include /etc/dhcp3/lab3/dhcpd.conf
:wq

A configuração de acima inclui a parte global para todas as redes e o include apontando para cada rede em específica.
Feito isto, cada rede tem sua própria configuração de dhcpd.conf mas, nada impede de
remover a configuração global settings do arquivos principal (/etc/dhcp3/dhcpd.conf) e configurar um para cada rede,
dentro de cada arquivo dhcpd.conf.


cd /etc/dhcp3/secretaria
vim dhcpd.conf

subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.254;
option broadcast-address 192.168.1.255
option routers 192.168.1.1;
option domain-name-servers 172.16.0.2, 172.16.0.3;
option netbios-name-servers 172.16.0.33;
}
:wq

cd /etc/dhcp3/administracao
vim dhcpd.conf

subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.10 192.168.2.254;
option broadcast-address 192.168.2.255
option routers 192.168.2.1;
option domain-name-servers 172.16.0.2, 172.16.0.3;
option netbios-name-servers 172.16.0.33;
}
:wq

cd /etc/dhcp3/gerencia
vim dhcpd.conf

subnet 192.168.3.0 netmask 255.255.255.0 {
range 192.168.3.10 192.168.3.254;
option broadcast-address 192.168.3.255
option routers 192.168.3.1;
option domain-name-servers 172.16.0.2, 172.16.0.3;
option netbios-name-servers 172.16.0.33;
}
:wq

Ok, feito esta configuração a próxima etapa seria a configuração da interfaces.
Este servidor DHCP para Vlan servirá redes diferentes portanto, deve possuir no mínimo duas placas de rede.

eth0 - internet
eth1 - rede interna/vlan

Para a interface eth1 não é necessário colocar IP.

cd /etc/network
vim interfaces

auto eth0
iface eth0 inet static
address 172.16.1.1
netmask 255.255.0.0
# broadcast 172.16.1.255
gateway 172.16.1.254

auto eth1.1681
iface eth1.1681 inet static
address 192.168.11.2
netmask 255.255.255.0
broadcast 192.168.11.255
gateway 192.168.11.1

auto eth1.1682
iface eth1.1682 inet static
address 192.168.12.2
netmask 255.255.255.0
broadcast 192.168.12.255
gateway 192.168.12.1

auto eth1.1683
iface eth1.1683 inet static
address 192.168.13.2
netmask 255.255.255.0
broadcast 192.168.13.255
gateway 192.168.13.1


Configure agora o arquivo dhcp3-server dentro de defaults

cd /etc/defaults/
vim dhcp3-server
INTERFACES="eth1.1681 eth1.1682 eth1.1683"
:wq

Adicione todos os alias para as vlans que serão disponibilizadas nesta linha.

Reinicie os serviços: networking, dhcp3-server

Na seqüência, postarei aqui como configurar os switchs para receber os ips através das vlans e, se tudo der certo postarei como criar essas vlans também no slackware.

Por enquanto obrigado e apreciem...!!
Obs: como de praxe, críticas e sugestões são bem vindas.. obrigado