Se isso é apenas para fins de teste, sugiro que você crie um pequeno sistema de arquivos de loopback e montá-lo no local em que deseja testar discos completos.
Eu sei que posso usar quota
para limitar a quantidade de espaço em disco por usuário. No entanto eu estou querendo saber se há alguma maneira no Linux para limitar o uso do disco de um diretório? Idealmente eu gostaria de algo como
limit_space -n 100M ./path/to/directory
E qualquer tentativa de criar um arquivo ou gravar em um arquivo que faria mais de 100 MB falharia com um erro semelhante, como se você tentasse gravar em um disco inteiro.
Eu sei que fica complicado por causa de links simbólicos e hardlinks e tamanhos de blocos e outras coisas.
O motivo pelo qual estou perguntando é que tenho um programa que baixa arquivos para um diretório temporário e quero testar se ele faz a coisa certa se não puder gravar o arquivo. Simular um disco inteiro seria uma das formas. Se houver uma frase simples como essa, posso testar isso facilmente.
Se isso é apenas para fins de teste, sugiro que você crie um pequeno sistema de arquivos de loopback e montá-lo no local em que deseja testar discos completos.
Você já pensou em usar o lvm para ter flexibilidade em ter vários volumes virtuais (com a vantagem adicional de backups quentes, etc.)?
(sistemas de arquivos de loopback são limitados em número)
Tags linux filesystems