Português do Brasil English
Devin no Facebook  Devin no Twitter  RSS do Site 
Linux    

Verificação automática dos sistemas de arquivos (auto-fsck)


Comentários  15
Visualizações  
76.903

Não importa que sistema ou distribuição Linux você esteja usando, sempre há um sistema de arquivos armazenando os seus dados. Há alguns anos atrás, os sistemas de arquivos (ou filesystems, em inglês) não eram tão modernos e precisam de alguns cuidados. Por exemplo: ao usar o sistema de arquivos ext2, se o computador fosse reiniciado ou desligado de forma forçada (o famoso dedoff, ou seja, mete o dedo no botão), logo na inicialização do Linux era feita a verificação de todo o sistema de arquivos, procurando por inconsistências, erros, arquivos e dados perdidos, essas coisas. Dependendo do tamanho do disco, isso poderia demorar vários minutos ou até horas…

Com os sistemas de arquivos mais modernos isso não acontece. Exemplo: ext3, ext4, XFS, ReiserFS, brtfs, entre outros. Todos esses sistemas de arquivos possuem uma funcionalidade muito útil chamada de journaling, uma espécie de meu querido diário. Com o journaling, as operações do sistema de arquivos são gravadas em um log, antes de começar e depois que acabou a operação. Assim, se algo falhar no caminho, o sistema de arquivos lê o log e sabe exatamente como consertar ou refazer (ou não fazer). Isso evita termos que ficar esperando uma verificação completa em todo o sistema de arquivos….

Mas quando acontece algum erro, é hora do fsck entrar em ação. Que tal a gente automatizar ele?

Leia mais

Linux    

O que diabos é o swap no Linux?


Comentários  13
Visualizações  
689.485

No Linux, o swap é a memória virtual (também é conhecido como área de troca). A memória virtual funciona como uma extensão da memória RAM, que fica armazenada no disco. O porquê da memória swap precisar existir é simples: o sistema operacional precisa de memória para funcionar, e se a memória acabar, o sistema falha. O swap fica como uma reserva emergencial caso a memória RAM acabe. A memória swap era bastante útil em tempos passados onde memória RAM era algo mais escasso. Hoje em dia, tanto a RAM quanto espaço em disco estão baratos. É sempre recomendado utilizar swap, mesmo com muita memória RAM.

O swap pode ficar tanto em uma partição, quanto em um arquivo no disco. No caso de ficar numa partição em um disco comum (não-SSD), recomenda-se colocar a partição no início do disco, assim a leitura durante a rotação do disco magnético é mais rápida. No caso de partições em disco SSD, tanto faz pois não há rotações como um disco comum. Algumas distribuições, como Debian e Ubuntu, tem no instalador uma opção para colocar a partição no início do disco.

Leia mais

Programas    

s3cmd: mandando arquivos para a Amazon S3


Comentários  7
Visualizações  
542.225

Quando a computação em nuvem da Amazon Web Services surgiu, um dos primeiros produtos a serem oferecidos foi o S3, que permite armazenar arquivos em um storage distribuído. No S3, cada arquivo é um objeto compartilhado entre vários servidores, distribuindo entre eles cópias de segurança.

Existem algumas maneiras para se manipular um storage S3. A AWS fornece uma interface API para conversar com seus serviços, e é através desta API que diversos programas conversam com o S3. Inclusive, o próprio gerenciador web é feito em cima dessa API principal. Por ser uma API pública, qualquer pessoa pode fazer programas ou interfaces para trabalhar com o S3.

Conheça o s3cmd…

Leia mais

Linux    

Upstart – Scripts Init no Linux – Parte 2


Comentários  10
Visualizações  
524.072

O Upstart foi concedido para resolver as limitações do SystemV init para a distribuição Ubuntu e logo foi adotado por outras distribuições Linux. Seu princípio é ser baseado em eventos: o Upstart cria um ou vários eventos e os serviços podem ser associados à estes eventos. Ele é quem define o que fazer quando um evento começa, muda ou termina (por exemplo: iniciando e parando serviços).

Se vários serviços estão dentro de um evento e ele ocorre, o Upstart pode por exemplo, iniciar todos estes serviços paralelamente. Se um evento tem que ocorrer apenas depois de outro, quando o primeiro evento terminar, ele começa a rodar este outro dependente. Mas vamos ver isso melhor.

Como antes, quando o kernel é iniciado, ele chama o daemon do Upstart, o /sbin/init. Este daemon, quando iniciado, carrega todos os arquivos de configuração do diretório /etc/init. São todos os arquivos que tem extensão .conf. Cada um desses arquivos define um Job. Este Job significa uma tarefa ou serviço. Vale notar também que qualquer alteração nos arquivos vai ser imediatamente lida pelo Upstart, sem precisar recarregar ou algo parecido.

Leia mais

Linux    

Scripts Init no Linux – Parte 1


Comentários  13
Visualizações  
552.186

Os scripts de inicialização do Linux são utilizados desde os primórdios dos tempos (oh!) para não apenas colocar serviços e daemons para rodar na inicialização, mas para controlar os serviços em si no dia-a-dia. Tarefas como: descobrir se o postfix está rodando; iniciar aquele serviço que não subiu direito; reiniciar ou recarregar um daemon que você mudou a configuração; entre outros. E neste quesito, durante anos os scripts init no Linux foram lineares e simples… Entretanto, muita coisa mudou e foram surgindo outras funcionalidades.

Quando falamos em Init, podemos dizer que é o primeiro processo executado pelo Linux. Logo após o kernel ser carregado em memória, ele tem a opção de executar um programa. Este programa é o que chamamos de init. O init geralmente é o responsável por dizer quais os programas e/ou serviços devem ser iniciados logo após o carregamento do kernel e a detecção de hardware da máquina. Curiosamente, se você utilizar o comando ps, verá que o processo de PID número 1 é o sistema de init da sua distribuição.

Leia mais

Linux    

Comandos para Manipulação de Arquivos


Comentários  22
Visualizações  
211.002

Uma das coisas essenciais ao usar um sistema operacional é saber como lidar os arquivos e diretórios dentro dele. Em sistemas operacionais como o Linux, mexer com arquivos é essencialmente tudo o que você vai fazer ao configurar o sistema e seus serviços. Pode parecer simples demais no começo, mas esta série de comandos ajudam muito durante o dia a dia para quem usa o terminal. Ver e listar diretórios e arquivos, filtrá-los, mostrar seus conteúdos, ver de que tipo são, quando foram criados ou atualizados, procurar por eles…

Leia mais