Restringir tamanho do diretório

Restringir tamanho do diretório

Estou instalando um programa no meu servidor Linux e ele armazena dados localmente por uma semana. No entanto, às vezes pode ocorrer um erro que impede a exclusão dos dados.

Para me proteger contra isso, quando o instalei em um servidor Unix, acabei de criar um novo sistema de arquivos com o tamanho especificado. No entanto, o sistema de arquivos no meu servidor Linux foi criado para ter a partição completa. Existe alguma maneira de definir o tamanho máximo de um diretório?

Além disso, se houvesse espaço livre na partição, seria melhor criar um novo sistema de arquivos ou usar as restrições acima.

Obrigado, Alex

Responder1

Não tenho certeza de como limitar o tamanho de um único diretório. Você poderia criar um novo usuário, atribuir uma cota a ele e, em seguida, executar o processo com esse usuário, mas acho que não é isso que você procura.

Como você sugeriu, você pode criar um sistema de arquivos como um "arquivo" e montá-lo como o diretório de saída deste aplicativo. Isso garantiria que ele nunca se espalhasse para o seu sistema de arquivos normal:

dd if=/dev/zero of=~/disk_image_file count=$size_in_blocks
mkfs -t ext3 -q ~/disk_image_file
mkdir -p ~/mnt/app1/log
mount -o loop=/dev/loop0 ~/disk_image_file ~/mnt/app1/log

Responder2

Você está procurando cotas. Sim, é inteiramente possível implementar cotas na maioria, senão em todos os sistemas de arquivos unix.

Aqui está o que você deve ler:http://www.faqs.org/docs/Linux-mini/Quota.html Você não deveria precisar fazer nenhuma configuração do kernel. Qualquer sistema vagamente moderno provavelmente já terá isso habilitado pela distribuição.

Volte se tiver problemas.

informação relacionada