Como definir cotas de sistema de arquivos (disco) no Ubuntu

Como definir cotas de sistema de arquivos (disco) no Ubuntu

Cota de sistema de arquivos é um recurso interno padrão encontrado no kernel Linux. As cotas determinam a quantidade de espaço que um arquivo deve ter para apoiar as atividades do usuário. As cotas de disco também limitam o número de arquivos que um usuário pode criar no sistema.

Os sistemas de arquivos que suportam o sistema de cotas incluem XFs, ext2, ext4 e ext3 para mencionar alguns. A atribuição de cotas é específica para o sistema de arquivos e para cada usuário. Este artigo leva tudo o que você precisa saber sobre o trabalho com o sistema de arquivos de cota em um multiusuário Ubuntu 18.04 ambiente.

O que você precisa

A suposição aqui é que você está usando Ubuntu 18.04 sistema com um usuário (Tecmint) dados os direitos do sudo. As idéias compartilhadas aqui podem funcionar em qualquer distribuição do Linux, desde que você use a técnica de implementação correta.

Etapa 1: Instalando a cota no Ubuntu

Para que as cotas estejam prontas e utilizáveis, instale a ferramenta de linha de comando da cota usando o comando apt, mas antes disso você precisa atualizar os pacotes de software do sistema.

$ sudo apt update 

Agora use o seguinte comando para instalar contingente pacote ligado Ubuntu.

$ sudo apto de instalação cota 
Instalar cota no Ubuntu

Imprensa Y, e então DIGITAR Para o processo de instalação iniciar.

Confirme a versão de instalação executando o comando abaixo. O número da sua versão pode diferir do que você vê abaixo.

$ cota -versão 
Verifique a versão da cota no Ubuntu

Etapa 2: Instalando o módulo para kernel de cota

Aqueles que executam um sistema virtual baseado em nuvem, o padrão Ubuntu A instalação pode estar faltando os módulos do kernel que suportam o uso da cota. Você deve confirmar o uso da ferramenta Localizar e garantir que os dois módulos, Cota_v1, e Cita _V2, estão dentro do /lib/módulos diretório.

$ find/lib/módulos/'uname -r' -Type f -name '*quota_v*.ko*' 

Este deve ser o resultado do comando acima.

Verifique os módulos de kernel da cota

Não se preocupe com as versões do kernel, desde que os dois módulos estejam presentes. Se não for encontrado, use o seguinte comando para instalar os módulos de kernel de cotas, como mostrado.

$ sudo apt install linux-image-extra-virtual 
Instalar módulos de kernel de cotas

Você receberá os módulos certos que você precisa para a implementação de cotas.

Etapa 3: Atualizando as opções de montagem do sistema de arquivos

Para que as cotas sejam ativas em um sistema específico, ele deve ser montado com opções de cotas relacionadas. Você pode fazer isso atualizando a entrada do sistema de arquivos encontrada no /etc/fstab arquivo.

$ sudo nano /etc /fstab 

Você deve estar pronto para editar o arquivo adequadamente. A diferença entre um arquivo fstab e um desktop é a diferença em como o / ou sistema de arquivo raiz representa todo o espaço em disco. Substitua a linha (/) Isso aponta para o sistema raiz usando as linhas abaixo.

Label = CloudImg-Rootfs / ext4 usrquota, Grpquota 0 0 

As linhas mudarão para permitir o userQuota e Grpquota para ser acessível. Você pode deixar um que não faz parte da configuração final. Se o Fstab tivesse algumas opções, adicione as novas opções no final da linha. Enquanto você anexa, separe os novos itens com uma vírgula, mas sem espaçamento entre eles.

Remonte o sistema de arquivos para que as alterações entrem em vigor.

$ sudo monte -o Remount / 

OBSERVAÇÃO: Confirme que não existem espaços entre as opções no /etc/fstab Para evitar esses erros.

montagem: /etc /fstab: erro de análise 

A verificação do uso de novas opções ao montar o sistema de arquivos no /proc/montar O arquivo é feito através grep. O comando mostra a entrada do sistema de arquivo root no arquivo.

$ sudo gato /proc /montarias | grep ' /' 
Verifique a entrada do sistema de arquivos root no fstab

Da saída, você pode ver as duas opções que configuramos. É hora de ativar o sistema de cotas.

Etapa 4: Ativando cotas de disco no Ubuntu

Primeiro, você deve executar o Quotacheck comando.

$ sudo quotacheck -ugm / 

O comando cria dois arquivos um usuário de cota e um grupo de cotas que têm informações sobre o limite e uso do sistema de arquivos. Esses arquivos precisam estar presentes antes de começar a usar a cota.

Aqui está uma definição dos parâmetros:

  • -você: simboliza um arquivo de cota baseado em usuário será criado.
  • -g: indica que um arquivo de cota baseado em grupo será criado.
  • -M: desativa a remocente do sistema de arquivos como somente leitura e, ao mesmo tempo, fornece resultados precisos em um ambiente em que o usuário continua salvando arquivos. O m a opção não é obrigatória durante a configuração.

Quando não há necessidade de ativar o uso de cotas com base no usuário ou grupo, não há necessidade de executar o Quotacheck opção. Confirme isso listando o diretório raiz usando o comando LS.

$ ls / 
Saída de amostra
Aquota.grupo Bin Dev Home Initrd.img.antigo lib64 mídia opt root sbin srv tmp var vmlluz.velho Aquota.do utilizador inicialização etc. initrd.IMG Lib Lost+Found Mnt Proc Run Snap sys usr vmlluz 

Falha em incluir o você e g parâmetros no Comando Quotacheck, Os arquivos correspondentes estarão faltando.

Agora estamos prontos para ligar a cota na raiz (/) FileSystem com o seguinte comando.

$ sudo cotaon -v / 

Etapa 5: configure cotas para um único usuário

Podemos usar o Edquota e setquota comandos para defini -los para usuários ou grupos.

Usando Edquota

O comandos Edquota edita cotas, por exemplo, podemos editar uma cota pertencente a Tecmint Usuário usando:

$ sudo edquota -u tecmint 

Usando o -você a opção especifica que a cota pertence a um usuário. Use o -g opção se você precisar editar uma cota que pertence a um grupo. O comando abrirá um arquivo usando sua escolha de editor de texto.

Verifique a cota do usuário no disco

A saída lista o nome de usuário, UID, o sistema de arquivos com cotas ativas e o uso de blocos e inodos. Uma cota baseada em inodes limita o número de arquivos e diretórios que os usuários podem criar, independentemente do tamanho que eles usam no disco. A maioria dos administradores prefere o baseado em bloco cota que controla o espaço do disco.

OBSERVAÇÃO: O uso de blocos não mostra como ele pode mudar dependendo de diferentes fatores, como a ferramenta de linha de comando que os relatam. Dentro das cotas de contextos no Ubuntu, podemos assumir que um único bloco é o mesmo que um kilobyte de espaço em disco.

Usando a linha de comando acima, o usuário usará 2032 blocos, o mesmo que 2032kb de espaço no /dev/sda1. O 0 valor desativa os limites suaves e duros.

Cada conjunto de cotas permite a configuração do limite suave e rígido. Um usuário que vai acima do limite suave pode estar sobre sua cota, mas não barrado de usar mais espaços ou inodos. O usuário, nesse caso.

Um limite rígido significa que a criação de novos blocos ou inodos para no momento em que você atinge o limite. Os usuários relatarão ver avisos ou erros ao executar tarefas regulares.

Podemos atualizar a cota de bloco de Tecmint para ter um limite suave de 100 MB e 110 MB para o limite rígido.

Defina o limite de cota do usuário

Após a edição, feche o arquivo e verifique as novas configurações de limite de cota do usuário usando o Comando de cota.

$ sudo cota -vs tecmint 
Verifique o limite da cota do usuário

OBSERVAÇÃO: dar aos usuários a oportunidade de analisar suas cotas sem invocar o Comando sudo, Eles devem ter acesso a arquivos de cota de leitura durante a fase de criação na etapa quatro. Uma maneira fácil de fazê -lo é criar o grupo de um usuário e dar acesso ao grupo para que você possa adicionar usuários a ele.

Usando setquota

setquota Atualiza as informações da cota usando um único comando sem qualquer configuração interativa. O comando requer o nome de usuário e definir os limites suaves e duros que o bloco e o inode usarão. Você também precisará declarar o sistema de arquivos que a cota usará.

$ sudo setquota -u tecmint 200m 220m 0 0 / 

O comando dobra os limites da cota baseada em bloco para 200 megabytes e 220 megabytes. Os dois 0 0 Indique que os limites rígidos e suaves não estão definidos, é um requisito, mesmo quando não há necessidade de definir cotas baseadas em inode.

Como sempre, use o comando de cota para verificar seu progresso.

$ sudo cota -vs tecmint 
Verifique o limite da cota do usuário

Etapa 6: Gerando relatórios de cotas

Gerando um relatório de cota, ele deve indicar uso de todos os usuários. O comando Repquota é usado.

$ sudo repquota -s / 
Gerar relatórios de cotas

A saída acima é um relatório sobre o / sistema de arquivos root. O -s instrui Repquota Para dar resultados em formato legível pelo homem.

O tempo de graça do bloco padrão é 7 dias. A coluna Grace alerta o usuário sobre o número de dias antes da negação de acesso ao disco de recursos.

Etapa 7: Defina os períodos de carência da configuração

O período de carência é o momento em que um usuário obtém permissão para trabalhar além do tempo padrão.

$ sudo setquota -t 864000 864000 / 

O comando instrui o bloco e inode a ter um período de carência de 864000 segundos um equivalente a 10 dias. A configuração afetará todos os usuários, portanto, os valores precisam ser definidos mesmo quando não haverá uso de blocos e inodos. O valor do tempo deve estar em segundos.

Confirme as alterações e veja se entrou em vigor usando o comando:

$ sudo repquota -s / 

Mensagens comuns de erros

Cotas: Não é possível encontrar // aquota.Grupo on/dev/vda1 [/].Usuário on/dev/vda1 [/] 

O erro acima é comum se você tentar ativar as cotas usando o comando Qoutaon antes de uma tentativa de verificar o status de uma cota usando o comando Quotacheck.

Quotaon: Usando // aquota.Grupo on/dev/vda1 [/]: Nenhuma cota de processo: formato de cota não suportado no kernel. Quotaon: Usando // aquota.Usuário on/dev/vda1 [/]: Nenhuma cota de processo: formato de cota não suportado no kernel. 

Este erro diz ao administrador que o kernel não suporta ou você pode ter a versão errada na máquina (temos Cota_v1 e Cota_v2). Para Ubuntu, Esses erros são comuns em um servidor virtual baseado em nuvem.

Corrija o erro instalando o Linux-Imagem-Extra-Virtual pacote usando comando apt.

Cita: Não é possível abrir quotafile // aquota.Usuário: permissão negado cota: não é possível abrir quotafile // aquota.Usuário: permissão negado cota: não é possível abrir a quotafile // cota.Usuário: nenhum arquivo ou diretório 

O erro é notável quando o usuário atual não tem permissão para ler arquivos de cota. Como administrador, você só precisa fazer as alterações corretas de permissão ou usar sudo quando precisar acessar arquivos em um sistema de cotas ou arquivo.

Conclusão

No topo do artigo, começamos com contingente Ferramentas da linha de comando e a verificação da versão do kernel e foram mais longe para explicar como configurar uma cota baseada em bloco para um único usuário e como gerar um relatório em um uso de cota do sistema de arquivos.

O artigo também abrange erros comuns e como evitá -los usando um pacote extra ou verificando a versão do kernel em seu sistema.