quarta-feira, 26 de outubro de 2011

Dimensionando partição superior a 2TB

Bom, tive um problema com discos de 2TB em meu servidor. Eles estavam com RAID, bom e com o fdisk ele informava que tava um erro

Veja
# fdisk -l /dev/sda

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.

WARNING: The size of this disk is 9.3 TB (9345848836096 bytes).
DOS partition table format can not be used on drives for volumes
larger than 2.2 TB (2199023255040 bytes). Use parted(1) and GUID
partition table format (GPT).

Disk /dev/sda: 9345.8 GB, 9345848836096 bytes
255 heads, 63 sectors/track, 1136234 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes


Bom de Cara o fdisk  já me informa pra usar o GNU Parted pois o mesmo não tem suporte a GPT. e ai o que eu fiz foi:

#man parted


e ai as coisas ficaram claras e fiz exatamente assim


# parted /dev/sda

GNU Parted 1.8.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands. 
        (parted) mklabel gpt

Vamos definir a unidade padrão para TB

         (parted) unit TB

 
Vamos criar a partição com os mais de 2TB

         (parted) mkpart primary 0.00TB 9.35TB


 (parted) print
Disk /dev/sda: 9.35TB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start      End      Size & nbsp ;    File system  Name     Flags
1             0.00TB  9.35TB  9.35TB        ;    primary
   


Agora sim


        (parted) quit
Information: Don't forget to update /etc/fstab, if necessary.

Ok, vamos usar o mkfs para formatar:
# mkfs.ext3 /dev/sda1

mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
1140850688 inodes, 2281701367 blocks
114085068 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
69632 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000, 214990848, 512000000, 550731776, 644972544, 1934917632

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information:
This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.


Verificando como ficou:

# fdisk -l /dev/sda
WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.

WARNING: The size of this disk is 9.3 TB (9345848836096 bytes).
DOS partition table format can not be used on drives for volumes
larger than 2.2 TB (2199023255040 bytes). Use parted(1) and GUID
partition table format (GPT).

Disk /dev/sda: 9345.8 GB, 9345848836096 bytes
255 heads, 63 sectors/track, 1136234 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1      267350  2147483647+  ee  EFI GPT


Note como ficou o meu /dev/sda1 no número de blocks.

Agora vamos montar o mesmo:

# mount /dev/sda1 /Backup



Bom agora tenho espaço para Backup de sobra .

quarta-feira, 19 de outubro de 2011

Agenda em Dialog

Uma agenda simples, que solicita nome e telefone em dialog
Na proxima versão esta sendo melhado , para Utilizar Banco MySQL

#!/bin/bash
#
#   Agenda Simples em Dialog
#   Autor: Daniel Lara Souza
#   Versao 0.1
while : ; do
 reposta=$(
    dialog --stdout               \
           --title     ' AGENDA  ' \
           --menu    'Escolha um opcao: ' \
           0 0 0            \
           1 'Adicionar Contato'   \
           2 'Listar Contatos'  \
           3 'Pesquisar Contatos ' \
           4 'Deletar Contatos'       \
           0 'Sair'      \
                   )        
   [ $? -ne 0 ] && break
   
   case "$reposta" in
            
           1) nome=$( dialog --stdout --inputbox 'Digite o nome:' 0 0 )
            
              fone=$( dialog --stdout --inputbox 'Digite o Telefone:' 0 0 )
            
              echo $nome - $fone >> agenda;
           ;;
         
           2)  sort agenda > agenda.tmp
                
               dialog --textbox agenda.tmp 0 0
                
               rm -rf agenda.tmp
           ;;
         
           3)  nome=$( dialog --stdout --inputbox 'Digite o nome:' 0 0 )
                
               cat agenda | grep $nome > agenda.tmp
                
               dialog --textbox agenda.tmp 0 0
 
               rm -rf agenda.tmp
           ;;
         
           4) nome=$( dialog --stdout --inputbox 'Digite o nome:' 0 0 )
 
              mv agenda agenda.tmp
              
              grep -v $nome agenda.tmp > agenda
 
              rpm -rf agenda.tmp
           ;;
    
           0)  break
   
           ;;
esac
done

quinta-feira, 13 de outubro de 2011

Instalando o Bacula-web no CentOS 5.X



Bacula-web é uma ferramenta de código aberto cujo projeto começou em 2004, originalmente escrito por Juan Luis Frances, que se encontra atualmente na versão 5.1.0-ALPHA. Esta ferramenta é escrita em PHP, html, css e javascript, e é liberado sob os termos da licença GPL.

O Bacula-web serve para monitoramento e relatórios do Bacula, onde temos:
  • Quantos clientes configurados;
  • Total de bytes armazenados em seu catálogo;
  • Total de arquivos armazenados em seu catálogo;
  • O tamanho do banco de dados do catálogo.

Também temos em relação aos Jobs:
  • Jobs em execução;
  • Jobs concluídos;
  • Jobs com falha;
  • Jobs cancelados;
  • Jobs em espera.

Temos o status dos Jobs das últimas 24 horas onde informam:
  • Quantos Jobs em execução;
  • Jobs com falha;
  • Jobs concluídos;
  • Jobs em espera.

Quantos posts de Jobs para cada nível (incremental, diferencial e integral):
  • Total de bytes transferidos;
  • Arquivos transferidos.

Instalando e configurando

Após ter o seu Bacula já instalado e funcionando; chegou a hora de você visualizar os relatórios.

Bom, com o Bacula-web não é necessário estar no mesmo servidor do Bacula, pode ser em outra máquina.

Instalando o PHP e Apache:

# yum install httpd php php-gd php-gettext php-mysql php-pear-DB -y

Iniciando o Apache na inicialização:

# chkconfig httpd on

Baixe a versão alpha do Bacula-web:

# wget http://bacula- web.dflc.ch/tl_files/downloads/bacula-web.5.1.0-alpha.tar.gz

Crie o diretorio bacula-web

#mkdir /var/www/html/bacula-web

Após isso, vamos descompactar:

# tar -xzf bacula-web-5.1.0-alpha.tar.gz -C /var/www/html/bacula-web

Vamos ajustar o config.php:

# cd /var/www/html/bacula-web/config
# vim config.php


e deixe como no exemplo abaixo:
 <?php

$config['language'] = 'en_EN';

#MySQL bacula catalog
$config[0]['label'] = 'Backup Server';
$config[0]['host'] = 'IP';
$config[0]['login'] = 'usuario';
$config[0]['password'] = 'senha';
$config[0]['db_name'] = 'bacula';
$config[0]['db_type'] = 'mysql';
$config[0]['db_port'] = '3306';

?>


 Após isso, salve e saia do arquivo.

Ajustando as permissões:

# chown -Rv apache:apache ./bacula-web
# chmod -Rv u=rx,g=rx,o=rx ./bacula-web
# chmod -v ug+w ./bacula-web/templates_c


Reinicie o Apache:

# service httpd restart

E depois acesse:

http://seuip/bacula-web

quinta-feira, 6 de outubro de 2011

Instalando o editor Vim no CentOS 5

Um dica rápida de como instalar o Vim no CentOS.

Baixando e instalando o pacote:

# yum install vim-enhanced -y

Adicionado o alias:

$ echo "alias vi=vim" >> ~/.bashrc

e:

$ source ~/.bashrc

Pronto. Vim instalado!

Para testar:

$ vim