A compressão de dados é o ato de reduzir o espaço ocupado por dados num determinado dispositivo. Essa operação é realizada através de diversos algoritmos de compressão, reduzindo a quantidade de Bytes para representar um dado, sendo esse dado uma imagem, um texto, ou um arquivo (ficheiro) qualquer.
Comprimir dados destina-se também a retirar a redundância, baseando-se que muitos dados contêm informações redundantes que podem ou precisam ser eliminadas de alguma forma. Essa forma é através de uma regra, chamada de código ou protocolo, que, quando seguida, elimina os bits redundantes de informações, de modo a diminuir seu tamanho nos arquivos. Por exemplo, a sequência “AAAAAA” que ocupa 6 bytes, poderia ser representada pela sequência “6A”, que ocupa 2 bytes, economizando 67% de espaço. Alguns compactadores de arquivos:
TAR
MIME: application/x-tar
TAR ou tar (abreviatura de T ape AR chive), é um formato de arquivamento de arquivos (ficheiros). Apesar do nome “tar” ser derivado de “tape archive”, o seu uso não se restringe a fitas magnéticas. Ele se tornou largamente usado para armazenar vários arquivos em um único, preservando informações como datas e permissões. Normalmente é produzido pelo comando “tar”. Algumas das opções mais frequentes:
- -c - cria um novo arquivo tar;
- -M - cria, lista ou extrai um arquivo multivolume;
- -p - mantém as permissões originais do(s) arquivo(s);
- -r - acrescenta arquivos a um arquivo tar;
- -t - exibe o conteúdo de um arquivo tar;
- -v - exibe detalhes da operação;
- -w - pede confirmação antes de cada ação;
- -x - extrai arquivos de um arquivo tar;
- -z - comprime ou extrai arquivos tar resultante com o gzip;
- -j - comprime ou extrai arquivos tar resultante com o bz2;
- -f - especifica o arquivo tar a ser usado;
- -C - especifica o diretório dos arquivos a serem armazenados.
GZIP
Gzip é a abreviação de GNU z ip, um Software Livre de compressão sem perda de dados, criado por Jean-loup Gailly e Mark Adler. O programa é baseado no algoritmo DEFLATE. A extensão gerada pelo gzip é o .gz, e seu formato contém apenas um arquivo comprimido. Em sistemas UNIX é comum gerar um arquivo contendo diversos outros arquivos com o programa tar, e depois comprimi-lo com o gzip, gerando um arquivo .tar.gz. Não confundir com o formato ZIP.
TAR.BZ2
Formato de compactação de arquivos, muito utilizado em sistemas Unix-Like.
COMPACTAÇÃO
Compactando arquivos .tar
tar -cf arquivo.tar [arquivo ou pasta]
Criando arquivos gzip(depois de ter criado o tar primeiro):
gzip arquivo.tar
Compactando arquivos tar.gz (TAR com gzip de uma só vez):
tar -zcvf arquivos.tar.gz [arquivo ou pasta]
Compactando arquivos no formato tar.bz2:
tar -jcvf arquivos.tar.bz2 [arquivo ou pasta]
Compactando arquivos tar de uma outra forma:
tar -c [arquivo ou pasta] > arquivo.tar
Compactando outros formatos (rar, zip e afins)
Instale o suporte
apt-get install rar unrar p7zip
rar a arquivo.rar [arquivo ou pasta]
zip -r arquivo.zip [arquivo ou pasta]
DESCOMPACTAÇÃO
Descompactando arquivos .tar
tar -xf arquivo.tar [arquivo ou pasta]
Descompactando arquivos gzip(depois de ter criado o tar primeiro):
gzip -d arquivo.tar.gz
Descompactando arquivos tar.gz (TAR com gzip de uma só vez):
tar -zxvf arquivos.tar.gz
Descompactando arquivos no formato tar.bz2:
tar -jxvf arquivos.tar.bz2 [arquivo ou pasta]
Descompactando outros formatos(rar, zip e afins)
Instale o suporte
apt-get install rar unrar p7zip
rar -e arquivo.rar
ou
unrar x arquivo.rar
unzip arquivo.zip
O comando dd (para Backup)
O comando dd é um clássico dos ambientes Unix-Like, com ele você pode fazer uma cópia exata de um arquivo, ou seja uma cópia bit a bit.
Sintaxe básica
dd if=origem of=destino
Exemplos
Cópia do HD para um arquivo
dd if=/dev/sda of=~/backup_hd.img
Será feita uma cópia exata do HD dentro do diretório do root com o nome “backup_hd.img”. Se quiser restaurar o “backp_hd.img” no /dev/sda2 (lembre que o sda2 deve ter pelo menos o mesmo tamanho do arquivo “backup.hd” se não os resultados poderão ser desastrosos)
dd if=backup_hd.img of=/dev/sda2
Cópia de partição para o partição
dd if=/dev/sda9 of=/dev/sda11
Será feita cópia da partição /dev/sda9 para a /dev/sda11. Fazendo uma cópia do HD para um arquivo compactado:
dd if=/dev/sda1 | gzip > backup_hd.img.gz
e para descompactar
gzip -d -c backup_hd.img.gz | dd of=/dev/sda2
O comando acima está descompactando o arquivo beckup_hd.img.gz no HD em /dev/sda2.
Criar uma imagem ISO
dd if=diretorio of=iso_do_diretorio.iso
Para visualizar progresso de cópia de arquivos, vá em outro terminal e execute
watch df -h
Para converter todos as letras maiúsculas de um documento para letras minúsculas
dd if=ficheiro1 of=ficheiro2 conv=lcase
Se quisermos converter todas as letras do ficheiro2 para maiúsculas
dd if=ficheiro2 of=ficheiro3 conv=ucase
Para zerar (formatar) o seu HD (use com cuidado!)
dd if=/dev/zero of=/dev/hda
Gerar senhas de forma (pseudo) aleatória
dd if=/dev/random bs=2 count=6 | base64 -
r2KWFW83e9nTniVR
6+0 registros de entrada
6+0 registros de saída
12 bytes (12 B) copiados, 0,000100641 s, 119 kB/s
Para automatizar tarefas, você pode utilizar o Cron e Crontab.