Configurando quota em disco no Linux – p3

No post anterior, nós habilitamos o suporte a quota no /etc/fstab e criamos os arquivos para gerenciamento das quotas. Agora, vamos fazer a instalação do pacote… mas antes de instalar, primeiro vamos checar se o pacote quota não está instalado:

# dpkg -l | grep -i quota

Caso o comando acima não retorne nada, podemos instalar o pacote:

# apt-get install quota
Lendo listas de pacotes… Pronto
Construindo árvore de dependências
Lendo informação de estado… Pronto
Pacotes sugeridos:
libnet-ldap-perl
Os NOVOS pacotes a seguir serão instalados:
quota
0 pacotes atualizados, 1 pacotes novos instalados, 0 a serem removidos e 34 não atualizados.
É preciso baixar 492kB de arquivos.
Depois desta operação, 1327kB adicionais de espaço em disco serão usados.
Obter:1 http://ftp.debian.org stable/main quota 3.16-7 [492kB]
Baixados 492kB em 13s (37,3kB/s)
Pré-configurando pacotes …
Selecionando pacote previamente não selecionado quota.
(Lendo banco de dados … 53343 arquivos e diretórios atualmente instalados).
Desempacotando quota (de …/archives/quota_3.16-7_i386.deb) …
Processando gatilhos para man-db …
Configurando quota (3.16-7) …

Pacote instalado, vamos levantar o módulo referente a versão de quota que desejamos utilizar. Para isso, vamos no diretório do módulos:

# cd /lib/modules/$(uname -r)/kernel/fs/

No comando acima, substituí a versão do kernel por uma variável; o bash é inteligente para interpretar o que tem dentro dos parênteses e me deixar dentro do diretório do kernel que estou usando no momento!

Ahnn, já falei sobre módulos aqui no blog também. Para relembrar sobre eles, leia o post aqui.

Vamos ver o conteúdo desse diretório:

# pwd
/lib/modules/2.6.26-2-686/kernel/fs

# ls
9p    autofs   binfmt_aout.ko  configfs  efs       ext4      gfs2     isofs  jfs         msdos       nfsd   qnx4         romfs  vfat
adfs  autofs4  binfmt_misc.ko  cramfs    exportfs  fat       hfs      jbd    lockd       ncpfs       nls    quota_v1.ko  sysv   xfs
affs  befs     cifs            dlm       ext2      freevxfs  hfsplus  jbd2   mbcache.ko  nfs         ntfs   quota_v2.ko  udf
afs   bfs      coda            ecryptfs  ext3      fuse      hpfs     jffs2  minix       nfs_common  ocfs2  reiserfs     ufs

Se observarem, acima temos todos módulos para todos filesystems (fs) suportados nessa versão de kernel, incluindo as versões de quota.

Já decidimos que iremos usar quota_v2; para habilitar, basta usar o comando modprobe com o nome do módulo sem a extensão .ko:

# modprobe quota_v2

Checando se o módulo foi habilitado:

# lsmod | grep quota
quota_v2                7968  0

Após o módulo estar no ar, temos que remontar a partição onde aplicamos quota. Isso é necessário pois somente editamos o arquivo /etc/fstab; se não remontarmos a partição, a implementação só fica disponível no próximo reboot. Como temos a sorte de usar um sistema que não precisa reiniciar a cada comando executado, vamos remontar a partição…

E aqui fica um lembrete: não remonte a partição houver pessoas utilizando😀. Para remontar a partição:

# mount -o remount,rw /dev/sda6

Não estou bem lembrada, mas acho que caiu uma pergunta sobre remount na LPI também… fica aí a dica para quem estiver estudando, estudar sobre o comando mount e suas opções de montagem😉 !

Após o comando acima, podemos checar se o suporte a quota está habilitado na partição; vamos usar de novo o comando mount:

# mount
/dev/sda6 on /home type ext3 (rw,usrquota,grpquota)

Pela saída do comando mount, o suporte foi habilitado com sucesso. Mas para ter certeza, também podemos usar o comando quotacheck, que é um utilitário para checar, criar e reparar arquivos de quota:

# quotacheck -acugv
quotacheck: Your kernel probably supports journaled quota but you are not using it. Consider switching to journaled quota to avoid running quotacheck after an unclean shutdown.
quotacheck: Scanning /dev/sda6 [/home] done
quotacheck: Checked 8 directories and 23 files

Falando sobre as opções do quotacheck e a saída do comando acima:

a => checar todos sistemas de arquivos que tem quota habilitada.
c => criar novos arquivos de gerenciamento de quota.
u => checa os arquivos dos usuários.
g => checa os arquivos dos grupos.
v => modo falante😀; isto é… verbose para mostrar mais detalhes. Os detalhes indicam qual o diretório que foi aplicado quota e também a quantidade de arquivos e diretórios existentes na partição.

Quando executei o comando quotacheck, apareceu o seguinte warning (aviso):

quotacheck: Your kernel probably supports journaled quota but you are not using it. Consider switching to journaled quota to avoid running quotacheck after an unclean shutdown.

Isso não chega ser um erro, a quota que você definir para os usuários vai funcionar normalmente. “Mas”, é um aviso que não deve ser ignorado, pois está dizendo que o kernel provavelmente tem suporte a quota em journal, mas isso não está sendo usado e que é bacana considerar mudar para quota journal para evitar rodar o quotacheck depois que o sistema desligou inadequadamente.

Mas o que ser isso, Nix!!!! Vamos la decifrar essa mensagem. Na verdade, estamos usando o filesystem ext3 que tem suporte a journaling. O journaling, nada mais é do que uma técnica implementada no filesystem onde, caso haja queda de energia, a checagem de erros na partição é feita mais rapidamente.

Sendo assim, apenas precisamos habilitar o journaling para as quotas também… e não é difícil!  Para isso, vamos editar o fstab para incluir as opções usrjquota (para usuário) e grpjquota (para grupo). Diferença para as opções que já estão no arquivo:

✔ Vamos colocar um j, para indicar journaling, e também falar os nomes dos arquivos aquota.user e aquota.group

✔ Também precisamos especificar que o formato de quota utilizado é quota_v2, com a opção jqfmt (journaling quota format) usando o valor vfsv0.

Atualmente nosso /etc/fstab está assim:

# vim /etc/fstab
/dev/sda6       /home           ext3    defaults,usrquota,grpquota        0       2

Vamos fazer a alteração e a linha acima deve ficar assim:

/dev/sda6 /home ext3 defaults,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 2

Checando se realmente o que fizemos vai funcionar… vamos executar de novo o quotacheck:

# quotacheck -acugv
quotacheck: Scanning /dev/sda6 [/home] done
quotacheck: Checked 8 directories and 23 files

Opa! Sem warning😀 ! Vamos finalmente definir quota para os usuários no próximo post! Até lá!🙂

0 Responses to “Configurando quota em disco no Linux – p3”



  1. Deixe um comentário

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s




Follow Nix on WordPress.com
outubro 2009
S T Q Q S S D
« set   nov »
 1234
567891011
12131415161718
19202122232425
262728293031  

Flickr Photos

Red and Gold

Mais fotos

%d blogueiros gostam disto: