Raid no Linux

Criação de um raid 5 via software:

Instalar:

# apt-get install mdadm

ver discos:

# fdisk -l

Examinar os discos:

deve dizer ” no md superblock detected on /dev/sdX” qualquer coisa estranha a isso pode ser disco com falha

# mdadm -E /dev/sd[b-d]

Particionar os discos (onde X é a unidade de disco):

digite “n” para criar nova partição, va dando entrer para defaults até acabar.

digite “t” para mudar o tipo de partição e então digite “fd” para marcar como tipo Raid

digite “p” para vefiricar se a partição esta correta.

Digite “w” para salvar as mudanças.

# fdisk /dev/sdX

Para examinar os discos( MBR Magic: aa55):

# mdadm -E /dev/sd[b-c]

Criar disco:

#  mdadm -C /dev/md127 -v -l 5 -n 4 /dev/{sdb,sdc,sdd,sde}

Verificar andamento da criação:

# cat /proc/mdstat

Para ficar mostrando a cada 1 segundo:

# watch -n1 cat /proc/mdstat

Depois de criado vericiar raid nos discos:

# mdadm -E /dev/sd[b-d]1

Detalhemento do disco raid(state: celan, sem disco com falha):

# mdadm –detail /dev/md127

Criar sistema de arquivos na partição raid:

# mkfs.ext4 /dev/md127

Criar pasta para montar disco:

# mkdir /mnt/raid5

# mount /dev/md127 /mnt/raid5/

Montar automaticamente no boot:

# nano /etc/fstab :

/dev/md0                /mnt/raid5              ext4    defaults        0 0

Salvar a configuração do raid 5:

# mdadm –detail –scan –verbose >> /etc/mdadm.conf

Pronto só rebootar e ser feliz com o raid 5

 

Comandos mdadm:

salvar configuração feita do mdadm:

# mdadm –examine –scan >> /etc/mdadm/mdadm.conf

montar discos criados:

# mdadm –assemble –scan

Para volume raid:

# mdadm –stop /dev/md0

remover volume raid

# mdadm –remove /dev/md0

limpar super blocos dos discos do raid:

# mdadm –zero-superblock /dev/sda (fazer para todos)

Detalhes do volume raid:

mdadm –detail /dev/md0

Exemplo criar Raid 5:

# mdadm -C /dev/md127 -v -l 5 -n 4 /dev/{sdb,sdc,sdd,sde}

Ver estado dos volumes atuais:

# cat /proc/mdstat

para ver volumes criados:

# mdadm –detail –scan

 

 

Raid no Linux:

Melhor tutorial:

Creating RAID 5 (Striping with Distributed Parity) in Linux – Part 4

Software RAID 5 in Linux Mint / Ubuntu

http://ensinalinux.blogspot.com.br/2012/10/trabalhando-com-raid-via-software-no.html

 

http://www.vivaolinux.com.br/artigo/Instalando-e-configurando-um-sistema-RAID-1-no-Debian-Lenny/?pagina=6

http://www.vivaolinux.com.br/artigo/Como-fazer-RAID-0-com-mdadm-no-Debian?pagina=3

Sistemas Raid:

http://www.hardware.com.br/comunidade/raid5-limite/909527/

http://www.hardware.com.br/termos/raid-5

http://www.youtube.com/watch?v=0QynsHQU1Ec

 

 

Backup Linux

Considero essa forma a mais eficiente e elegante de se fazer um backup. Pois é um backup automático incremental com controle de versão e gera logs para controle/monitoramento.

Utilizo para isso os softwares LIVRES: SSH, CRON, RSYNC. A ideia é ter dois servidores o de produção e o de backup, o servidor de backup deve fazer semanalmente uma copia de varias pastas do servidor da produção. Cada copia deve ser datada e ter um arquivo do log da copia também datado. Essas copias são na verdade copias com hardlink do Linux a ideia é copiar o conteúdo do ultimo backup para um nova pasta com “cp -l ” e depois atualizar ela com o servidor usando o rsync, assim teremos um backup incremental e versionado por data! Sem falar que economizamos muito espaço em disco, banda de rede e tempo de backup com esse procedimento.

ver : http://www.vivaolinux.com.br/artigo/Backups-remotos-com-rSync-e-chaves-SSH

Por partes:

1 – SSH com autenticação via chaves publica/privada:

http://ramonrdm.wordpress.com/2011/08/16/autenticacao-com-chaves-publicaprivada-no-ssh/

2 – Instalação do Rsync:

4 – Criação do script de backup

bkp incremental hardlinks:

#!/usr/bin/env bash
#
# Faz backups incrementais de diretorios em um servidor remoto utilizando rsync e
# hardlinks para economia de banda e espaço em disco.
#
# Por Vinicius Figueiredo <viniciusfs [arroba] gmail.com>
# Dominio Publico
#

SERVER="servidor.com.br"
DIRS_TO_COPY="/var/www /etc"
BACKUP_DIR="/backup"
RETENTION=15

DATE=`date +%Y%m%d`
LOG="${0}_${DATE}.log"

CURRENT_BACKUP="${BACKUP_DIR}/${DATE}"

echo "Iniciando script em `date`" > ${LOG}

if [ -e ${BACKUP_DIR}/last ]; then
    LAST_BACKUP=`cat ${BACKUP_DIR}/last`

    if [ -d ${LAST_BACKUP} ]; then
        echo "Ultimo backup encontrando, linkando arquivos..." >> ${LOG}
        cp -la ${LAST_BACKUP} ${CURRENT_BACKUP} >> ${LOG} 2>&1
    fi
else
    echo "Nenhum backup anterior encontrado, criando diretorio para backup atual..." >> ${LOG}
    mkdir ${CURRENT_BACKUP} >> ${LOG} 2>&1
fi

for dir in ${DIRS_TO_COPY}; do
    echo "Iniciando backup de ${SERVER}:${dir}" >> ${LOG}
    rsync -av --delete ${SERVER}:${dir} ${CURRENT_BACKUP} >> ${LOG} 2>&1
done

echo ${CURRENT_BACKUP} > ${BACKUP_DIR}/last

for dir in `find ${BACKUP_DIR} -maxdepth 1 -type d -mtime +${RETENTION}`; do
    echo "Removendo backup ${dir}" >> ${LOG}
    rm -rf ${dir} >> ${LOG} >> ${LOG} 2>&1
done

5 – Automatizando o backup com o Cron

http://ramonrdm.wordpress.com/2011/09/06/cron-agendando-tarefas/

Usando rsync:

http://servidorlinux.wordpress.com/2008/02/02/backup-com-rsync-sem-senha/

http://www.dicas-l.com.br/arquivo/como_programar_backup_com_rsync_e_cron_de_maneira_rapida_e_simples.php

http://www.vivaolinux.com.br/artigo/Backup-com-Rsync

http://www.vivaolinux.com.br/artigo/Sistema-de-backup-com-rsyncd

Incremental:

http://www.ultrav.com.br/2008/11/11/backup-incremental-com-rsync-e-hardlinks/

http://blog.liquuid.net/2008/05/11/time-machine-no-linux-com-rsync/

outra opcao:

http://www.dicas-l.com.br/arquivo/script_shell_de_backup_incremental.php

http://www.dicas-l.com.br/cantinhodoshell/cantinhodoshell_20070130.php

http://www.vivaolinux.com.br/script/Backup-Remoto-com-rsync-automatico-para-varias-maquinas-sem-senha./

http://www.jveweb.net/en/archives/2011/02/using-rsync-and-cron-to-automate-incremental-backups.html

Acesso root iomega ix4-d200

Oi! A baixo como consegui acesso root a esse equipamento de NAS ix4-d200 da iomega.

Instalei o htop para monitorar a atividade tbm entre outras coisas 🙂

vc pode habilitar o ssh caso não esteja habilitado em?

ip-nas-iomega/diagnostics.html

ou ainda se for uma versão antiga:

ip-nas-iomega/support.html

depois é só acessar via ssh com:

user: root

senha: soho+sua senha admin

exemplo: senha admin=1234, senha root será: soho1234

Fontes:

http://vincesoft.blogspot.com.br/2012/01/how-to-ssh-into-your-iomega-storcenter.html

http://ubuntu4us.corp.eng.br/artigos/configuracao-de-hardware/network-attached-storage/acesso-ssh-ao-iomega-ix2-200-cloud-edition

http://blog.vuksan.com/linux/2010/04/28/customizing-iomega-storcenter-ix4-200d-with-ipkg/

http://vincesoft.blogspot.com.br/2012/01/how-to-install-software-into-your.html

 

 

 

Syncthing compartilhando e sincronizando arquivos

Para quem já usou o BTsync e agora procura uma nova solução gratuita aqui vai o syncthing!

Página oficional:

https://syncthing.net/

Instalar(like deb):

http://apt.syncthing.net/

Start:

Em aplicativos de sessão coloque o comando:

  • Command: /path/to/syncthing/binary -no-browser -home="/home/your_user/.config/syncthing"

fonte: http://docs.syncthing.net/intro/getting-started.html

Caso use um servidor deb para syncar faça isso:

https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-syncthing-to-synchronize-directories-on-ubuntu-14-04

Inicio automático nos derivados do Ubuntu:

http://docs.syncthing.net/users/autostart.html#linux

 

Abraços!

 

Criando um HD inicializavel a partir de uma ISO

descobri a pouco tempo um comando bom pra criar um disco de inicialização pra instalar o linux via um hd ou pendrive.
Os programas só servem pra instalar em pendrive mas eu tava com problema pra botar o ISO num hd pra instalação.

Comando:

$ sudo dd if=/home/usuario/Downloads/linuxmint-17-cinnamon-64bit-v2.iso of=/dev/sdc oflag=direct bs=1048576

o sdc era o meu hd externo, só que ele apaga tudo que ta dentro dele

 

Fonte:

Anselmo Junior

$grep -n 'texto' arquivo -r

grep é um aplicativo para linha de comando de sistemas Unix/Linux que faz buscas no conteúdo dos arquivos

-Wikipedia

Exemplos

Busca simples:

$ grep ‘joao’ arquivo.txt

Recursiva

$ grep ‘texto’ /etc/* -r

Mostrando as linhas:

$ grep -n ‘joao’ arquivo.txt

fontes:

http://www.vivaolinux.com.br/artigo/Usando-grep-e-egrep?pagina=2

http://ndvo.blog.br/pt-br/gnulinux/como-procurar-por-uma-string-em-v%C3%A1rios-arquivos/

Instalando servidor de e-mail postfix, imap, dovecot

Tutorial básico para criar um servidor de e-mails com postfix, imap, pop, mysql, devecot e cliente de e-mails web roundcube.

opção rápida: http://www.iredmail.org

Estou utilizando o GNU/Linux Debian amd64

instalar o postfix:

# apt-get install postfix

Continuar lendo Instalando servidor de e-mail postfix, imap, dovecot

iptables

Uma configuração de iptables

Você pode aprender tudo sobre Iptables aqui: http://www.guiafoca.org/cgs/guia/avancado/ch-fw-iptables.html

Compartilha a rede externa com a interna e liberar as principais portas do servidor:

#!/bin/bash
#################### Inicio Firewall #################################

modprobe ip_nat
modprobe ip_nat_ftp
modprobe ip_queue
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_tables
modprobe iptable_filter
modprobe iptable_nat
modprobe iptable_mangle
modprobe ipt_state
modprobe ipt_limit
modprobe ipt_multiport
modprobe ipt_mac
modprobe ipt_string
## Limpando as Regras existentes #######
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -t filter -F
iptables -X
iptables -Z

## Definindo politica padrão (Nega entrada e permite saida)
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

## Estabelece relação de confiança entre maquinas da rede local eth0(rede local)
iptables -A INPUT -i eth1 -s 10.1.0.0/255.255.255.0 -j ACCEPT
iptables -A INPUT -i eth1 -m state –state NEW -j ACCEPT
iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

############################ Compartilhamento Internet #########################
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward

### SSH
iptables -A INPUT -p tcp –dport 22 -j ACCEPT
### HTTP
iptables -A INPUT -p tcp –dport 80 -j ACCEPT
### HTTPS
iptables -A INPUT -p tcp –dport 443 -j ACCEPT
### SMPT
iptables -A INPUT -p tcp –dport 25 -j ACCEPT
### IMAP
iptables -A INPUT -p tcp –dport 143 -j ACCEPT
### IMAPS
iptables -A INPUT -p tcp –dport 993 -j ACCEPT
### POP
iptables -A INPUT -p tcp –dport 110 -j ACCEPT
### POPS
iptables -A INPUT -p tcp –dport 465 -j ACCEPT
### ???
iptables -A INPUT -p tcp –dport 587 -j ACCEPT
### POPS
iptables -A INPUT -p tcp –dport 995 -j ACCEPT
### ICMP e ping
iptables -A INPUT -p icmp  -j ACCEPT

######################################## Fim ###################################

 

Para salvar no Debian:

# iptables-save > /etc/default/iptables

# iptables-restore < /etc/default/iptables

 

Fontes:

http://www.guiafoca.org/cgs/guia/avancado/ch-fw-iptables.html

http://deangerber.com/blog/2011/09/10/basic-iptables-firewall-configuration/

http://www.rackspace.com/knowledge_center/article/mail-server-opening-ports-in-the-linux-firewall