Livro: Técnicas Avançadas na Administração GNU/Linux

A FTA – Free Technology Academy, lançou este excelente livro com técnicas avançadas na administração GNU/Linux.

São 545 páginas com os seguintes tópicos:

– Introdução ao sistema operacional GNU/Linux
– Migração e coexistência com sistemas não-Linux
– Ferramentas básicas para o administrador –
– O kernel
– Administração local
– Administração de rede
– Administração de servidor
– Administração de Dados
– Administração de Segurança
– Ajustes da Configuração e otimização
– Clustering

  • Authors: Remo Suppi Boldrito e Josep Jorba Esteve
  • Licença: GNU Free Documentation License, Creative Commons Attribute ShareAlike License
  • Informações: 545 páginas; 18.8 Mb
  • Idioma: inglês

    Opções de Download:
    ftacademy.org (tem que preencher um formulário)
    Download Direto

Script de Backup (dump) SVN – Subversion

Continuando a série de scripts de backup, hoje iremos ver como realizar o backup de versionamentos SVN (subversion).

Podemos começar este poste com as palavras de um sábio:

“Existem dois tipos de pessoas, aquelas que fazem backup regularmente e aquelas que nunca tiveram uma falha do disco rígido”

Existem uma série de cenários e estratégias de backup. A maioria delas sugerem uma cópia de segurança, uma vez por dia, geralmente nas primeiras horas. Este, porém, pode não funcionar bem com um ambiente com mudanças rápidas onde os dados muda várias vezes por hora. Este tipo de ambiente é geralmente em desenvolvimento de software, visto que o código pode se modificar completamente várias vezes em questão de horas, e muitas vezes um único backup diário pode não funcionar.

#!/bin/sh
################################################
#
# Backup Completo dos repositorios SVN
#
# @author Jonas Ferreira
# @email jonas [at] jf [dot] eti [dot] br
# @version v0.01
# @reldate 2012-04-09
################################################

# data
# ——————–
bakdate=$(date +%Y%m%d%H%M)
echo “——————————–”
echo “Rodando o script de Backup – SVN – $bakdate”
echo “——————————–\n”

# Local onde estao os repositorios
# —————————
svnrepos=”/srv/svnrepos”

# Local onde sera gerado o DUMP
# ————————
bakdest=”/home/username/SVN-BACKUPS”

# Local onde os dumps serao tranferidos, apos o DUMP
# —————————————-
baktousb=”/media/USB/Extra-BACKUP”

# Entrando na pasta dos repositorios
cd $svnrepos

# Certificando se tem acesso de escrita na pasta de destino
if [ -d “$bakdest” ] && [ -w “$bakdest” ] ; then

for repo in *; do
# gerando um dump para cada projeto
echo “Executando: svnadmin dump $repo > $bakdest/$repo-$bakdate.svn.dump \n”
# Finalizando o backup
svnadmin dump $repo > $bakdest/$repo-$bakdate.svn.dump

# copiando os arquivos para a unidade remota
if [ -d “$baktousb” ] && [ -w “$baktousb” ] ; then
echo “Copiando para $baktousb …\n”
cp $bakdest/$repo-$bakdate.svn.dump $baktousb
fi
done
else
echo “Nao eh possivel continuar o processo de backup”
echo “$bakdest *NAO* eh um diretorio gravavel.”
fi

# Finalizando o script de backup
echo “\n\n=================================”
echo ” – Backup Completo :-]”

Anexo aqui o script personalizado por mim, onde faz-se o backup Full e transfere-se para um servidor na rede por meio de cifs. (Servidor SVN rodando no CentOS 6.2).
Download do Script

Para restaurar o dump, é só executar:
$ svnadmin load /var/www/svn/repos < repos-backup Fontes: - Instalação do SVN no CentOS
http://www.niden.net/
(exemplos de backup incremental)
http://www.hossainkhan.info/content/shell-script-backup-all-your-svn-repositories

Script de Backup (dump) Postgresql – Com bancos a escolher

Depois que publiquei o artigo Script de Backup (dump) Postgresql – Múltiplos bancos em arquivos separados, onde por meio de um script shell, é gerados dumps de todos os bancos existentes no servidor, cada banco um arquivo separado e compactado, me perguntaram se era possível, com a mesma idéia fazer um script que ao invés de realizar o dump de todas as bases, fosse possível definir quais bancos seriam backupiados.

Pois bem, é bem simples de fazer isso, vejamos:

[shell]
#!/bin/bash
#
# Um simples script de backup
# Autor: Jonas Ferreira

# db_array – lista dos bancos que se deseja fazer o dump
db_array=”banco1 banco2 banco3 banco4″

# logfile – arquivo que grava o log de cada execucao do script
logfile=”/tmp/pgsql-backup.log”

#Diretorio de destino do arquivos
DIR=/tmp/backup

for db in $db_array
do
/usr/bin/pg_dump $db > “$DIR/$db.sql” 1>> $logfile 2>> $logfile
tar zcvf “$DIR/$db.tgz” “$DIR/$db.sql”
rm -rf “$DIR/$db.sql”
done
[/shell]

Simples assim!

Resolvendo problemas da placa eth0 ao clonar máquinas virtuais CentOS no VMware ESX

Após a clonagem de uma máquina virtual pelo VMWare a placa de rede do eth0 do Linux CentOS é renomeada como eth1, e não pega IP. isto é devido ao duplicamento de endereço MAC. Para corrigir este problema deve se efetuar a seguinte os seguintes comandos:

[shell]
# cd /etc/udev/rules.d
# cp 70-persistent-net.rules /root/
# rm 70-persistent-net.rules
# reboot
[/shell]

Este arquivo é gerado automaticamente pelo /lib/udev/write_net_rules program, e pode ser removido sem problemas. Para verificar se o problema foi corrigido, execute:

[shell]# /sbin/ifconfig | grep “^eth”[/shell]

Terá como resposta, algo assim:

[shell]eth1 Link encap:Ethernet HWaddr 00:0C:29:F3:E4:1E[/shell]

Você precisa trocar o endereço MAC da placa atual em /etc/sysconfig/networking-scripts/ifcfg-eth0, colocando o MAC exibido na acima, na linha HWADDR:

[shell]
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
[/shell]

Salve tudo e reinicie os serviços de rede

[shell]
# service network restart
# reboot
[/shell]

Para verificar se realmente funcionou, execute os seguintes comandos:

[shell]
# /sbin/ifconfig -a
# route -n
[/shell]

Verá que agora a referência é a eth0.

Referências:

Como zerar todas as regras de IPTables

Howto: Script Shel para eliminar as regras do Firewall Iptable local.

É algo útil para economizar tempo, sem a necessidade de ter que digitar cada linha na console, toda vezes que se deseja limpar as regras.

Sistema Operacional: Debian e derivados.

Dentro do diretório /scripts cremos um arquivo chamado limpa_iptables.sh com o seguinte conteúdo:

[shell]

#!/bin/sh
echo “Limpando todas as regras e liberando todo o tráfego…”
/sbin/iptables -P INPUT ACCEPT
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -t nat -F
/sbin/iptables -t nat -X
/sbin/iptables -t mangle -F
/sbin/iptables -t mangle -X
/sbin/iptables -L -n
[/shell]

Agora é só tornar o script executável e pronto, já poderemos rapidamente dar um flush nas regras de iptable, com apenas um comando:

[shell]
root@srv:~# chmod +x /scripts/limpa_iptables.sh
root@srv:~# ./scripts/limpa_iptables.sh

Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
[/shell]

Howto: Como utilizar mais de 4GB de memoria RAM em um sistema de 32bits?

Howto: Como utilizar mais de 4GB de memoria RAM em um Sistema Operacional de 32bits?
================================================================

Este é um problema bastante comum, veja só a situação:

Você configurou seu servidor, tudo perfeito e o mesmo esta funcionando 100%, depois de um tempo percebe que irá precisar colocar mais memória, seja por qual for o motivo (instalou o Tomcat, Jboos… e afins… ), e ao adicionar novos pentes de RAM nota que o Sistema Operacional não reconhece as novas memórias, ou seja, você esta utilizando um S.O de 32bits.

O que fazer? Bem, passei por isso esses dias, e o administração da rede simplesmente disse: “faz outra máquina com S.O de 64 bits”.

Não vou dizer que ele esteja errado, porque pode ser a oportunidade de renovar o S.O e tudo mais, porém é chato ter que configurar tudo novamente, serviços, crons… e etc. Felizmente há uma solução.

Basta instalar o Kernel com suporte para PAE (Physical Address Extension):

Para Linux Debian Squeeze ou Wheeze:

Versões estáveis e testadas:
# aptitude install linux-image-2.6-686-bigmem

Para Debian Sid:
# aptitude install linux-image-686-pae

Para CentOS e RedHat derivados:

# yum install kernel-PAE

Após isso é só dar um Reboot e as novas memórias serão reconhecidas.

Há, também é possível fazer isso em Windows 7, basta instalar este Pach:

Windows 7 32bit 4GB Ram Patch (2.3 MiB)
Instruções: http://www.howorks.com/

TurnKey Linux – Repositório de Máquinas Virtuais para Servidores

TurnKey Linux é um repositório de máquinas virtuais opensource destinadas a servidores.  O núcleo do Linux Turnkey é Ubuntu 10.04.1 e sobre ele é instalado os aplicativos e componentes mínimos para que possa executar determinado produto. Isso resulta em um servidor leve e enxuto, aumentando a eficiência e reduzindo os riscos de segurança.

As máquinas virtuais disponíveis para download estão em formato .ISO, com isso pode-se facilmente serem implantadas utilizando VMWare, Virtual Box, Parallels, Xen e em cloud. Todas as máquinas possuem administração baseada em ambiente web de fácil entendimento.

As máquinas virtuais disponíveis para download estão divididas em grupos como:

Não deixe de conhecer também o TurnKey Hub, que é o serviço oferecido por levantar qualquer uma dessas máquinas diretamente no servidor Cloud deles na Amazon, pagando uma ninharia, e tendo acesso total a máquina. Ideal para aplicações que necessite de alta escalabilidade e disponibilidade.

Valeu Frankley Francalino!