Skip to content
Snippets Groups Projects
Select Git revision
  • main default protected
1 result

quota.rst

Blame
  • quota.rst 11.54 KiB

    Quota

    Cada usuário possui um limite de armazenamento de arquivos nos sistemas computacionais do Departamento de Informática. A quota básica máxima é de:

    Diretório raiz Espaço em disco máximo Número de arquivos máximo Cópia de segurança
    /home 2GB (2 · 109 bytes) 30 000 arquivos Diária
    /nobackup 2GB (2 · 109 bytes) Não tem limite Não tem

    Isso significa que cada usuário possui, se bem gerenciado, 4GB disponíveis para utilização de propósito geral. É responsabilidade de cada usuário gerenciar a sua própria quota, e o descuido pode levar a impossibilidade de receber e-mails e a impossibilidade de utilizar os computadores do laboratório de um modo geral. Os seus diretórios pessoais são mapeados para as seguintes quotas:

    Diretório Propósito Quota
    /home/{grupo}/{usuário} Arquivos importantes /home
    /home/html/inf/{usuario} Página pessoal web /home
    /nobackup/{grupo}/usuário Não importante e que pode ser criado, baixado de novo /nobackup

    Tip

    /home/{grupo}/{usuário} é o diretório para onde você vai quando faz cd. Use o comando pwd para descobrir o diretório onde você está. Exemplo:

    $ cd
    $ pwd
    /home/bcc/usr99

    /home/bcc/usr99 é o diretório de um usuário que é aluno de curso de Bacharelado em Ciência da Computação que fica no grupo bcc e tem nome de usuário usr99.

    A primeira quota é a do diretório /home. Isso engloba também a sua página web pessoal, pois ela se encontra em um subdiretório /home/html. Todos os dias, de madrugada, é feito uma cópia de segurança (ou backup) deste diretório. Isso significa que é possível :ref:`recuperar um arquivo ou diretório <recuperacao>`.

    Se você possui algo que precise de muitos arquivos mas que não ocupam muito espaço (por exemplo um diretório node_modules, ou um clone de um repositório gigante), você pode utilizar o diretório /nobackup. Note que como o nome diz, não são feitas cópias de segurança neste diretório, e qualquer arquivo que seja apagado acidentalmente é irrecuperável.

    Para descobrir o quanto você tem de quota, utilize o comando quota -s:

    $ quota -s
    Disk quotas for user:
         Filesystem   space   quota   limit   grace   files   quota   limit   grace
    urquell.home:/home
                       634M   1954M   2149M            5084   30000   30000
    urquell.home:/nobackup
                       367M   1954M   2149M           11992       0       0

    O -s serve apenas para que os números apresentados sejam mais legíveis para humanos, com K para kilobyte, M para megabyte e G para gigabyte. Neste exemplo, o usuário possui 634M de espaço utilizado na quota /home e 367M de espaço utilizado na quota /nobackup. Além disso, são 5084 arquivos (ou diretórios, que também são arquivos) no /home e 11992 arquivos no /nobackup. Este usuário está gerenciando bem a sua quota e não estourou nenhum limite. A quota de um usuário estourado possui uma estrelinha * perto do limite excedido, como em:

    $ quota -s
    Disk quotas for user:
         Filesystem   space   quota   limit   grace   files   quota   limit   grace
    urquell.home:/home
                      2149M*  1954M   2149M   7days    5086   30000   30000
    urquell.home:/nobackup
                       367M   1954M   2149M           11992       0       0

    Caso este seja o seu caso, continue lendo.

    Não consigo logar na minha conta

    Você pode fazer login via SSH ou utilizar o modo texto nos laboratórios do DINF. O modo texto pode ser ativado pressionando Ctrl + Alt + F1, e lá será pedido o seu nome de usuário e senha para entrar no sistema, como se fosse uma sessão SSH.

    Com acesso ao sistema, agora você pode limpar a sua conta, se atentando aos vilões da quota.

    Vilões da quota

    .cache, .local, .vscode, .npm, ...

    Os principais vilões são 'invisíveis', e são diretórios de trabalho de programas que abusam do espaço em disco para funcionar. Os principais encontrados são:

    Diretório Descrição O que fazer
    ~/.cache
    Navegadores web, programas
    gráficos usam para melhorar o
    desempenho.
    Pode apagar sem problemas.
    Se apagar, ele cria de novo.
    Ocupa muito espaço.
    Coloque no /nobackup.
    ~/.local/lib/python*
    Bibliotecas Python instaladas
    pelo pip.
    Pode usar muitos arquivos pequenos.
    Recomendado colocar no /nobackup.
    ~/.local/share/Trash
    Lixeira da área de trabalho
    Vale a pena manter no /home.
    ~/.vscode
    Configuração e extensões
    do VS Code.
    Ocupa muito espaço.
    Coloque no /nobackup.
    ~/.npm
    Cache do npm, usado para
    melhorar o desempenho
    Pode usar muitos arquivos pequenos.
    Coloque no /nobackup
    ~/.eclipse
    Configurações do Eclipse
    Pode usar muitos arquivos pequenos.
    Coloque no /nobackup
    ~/.arduino*
    Configurações e bibliotecas
    do Arduino
    Pode usar muitos arquivos pequenos.
    Coloque no /nobackup
    ~/.mozilla
    Perfil do navegador com
    configurações, histórico,
    extensões e sessões salvas
    Vale a pena manter no /home.

    Um script em bash para colocar alguns diretórios no /nobackup é o que segue:

    LINK_TO_NOBACKUP=.cache .local .npm
    for directory in $LINK_TO_NOBACKUP; do
       mv ${HOME}/${directory} /nobackup/$(id -gn)/${USER}/${directory}
       ln -s /nobackup/$(id -gn)/${USER}/${directory} ${HOME}/${directory}
    done;

    Ele move o diretório para o /nobackup e daí faz um link simbólico para lá. Isso significa que se você tentar acessar o diretório, o sistema operacional vai 'redirecionar' você para lá.

    Mailbox

    A sua caixa de e-mail fica em ~/Mailbox. Dependendo da quantidade de e-mails que você recebe e os anexos destes e-mails, a sua caixa de entrada pode ficar com um tamanho considerável. Algo recomendado é entrar no Roundcube Webmail e pesquisar pelos e-mails com anexos e então apagá-los, porque eles são os que mais ocupam espaço.

    Quaisquer outros arquivos

    Se você ainda não souber exatamente onde estão os arquivos que estão ocupando o espaço no seu disco, use o comando du:

    $ cd
    $ du -had 1 | sort -h
    0    ./.cache
    4,0K ./.bash_history
    4,0K ./.bash_logout
    4,0K ./.profile
    4,0K ./.python_history
    8,0K ./.linuxmint
    32K  ./.ssh
    52K  ./dev
    104K ./.cinnamon
    148K ./.java
    256K ./.config
    880K ./Mail
    1,1M ./.local
    1,8M ./slides.pdf
    39M  ./Mailbox
    60M  ./soft
    122M ./.mozilla
    371M ./Downloads
    634M .

    Podemos ver neste exemplo que o diretório de Downloads e o perfil do Firefox no .mozilla ocupam a maior parte do espaço, e devem ser o maior alvo de limpeza. Este usuário colocou o .cache no /nobackup, então ele aparece com 0 bytes.

    Caso você queira manter um certo arquivo ou diretório, mas fazer com que ele use menos espaço, uma opção é comprimí-lo. Você pode utilizar o comando tar ou o comando zip para realizar tal ação, mas note que a compressão não vai ajudar com arquivos já bem comprimidos como imagens (como JPG e PNG), vídeos (como MP4, WEBM) e áudio (como MP3, OGG).

    Recuperar um arquivo ou diretório

    Warning

    Se você criou e deletou o arquivo que você quer recuperar no mesmo dia, pode não ser possível que ele seja recuperado, pois as cópias de segurança são feitas uma vez por dia de madrugada.

    Para recuperar um arquivo que você perdeu, mande um e-mail para suporte@inf.ufpr.br com assunto 'Recuperação de arquivo' e as seguintes informações no corpo:

    • Seu nome completo, grafado corretamente e SEM abreviaturas;
    • Seu nome de usuário;
    • O caminho completo do arquivo ou diretório perdido;
    • A data e a hora em que o arquivo foi apagado.

    Funcionamento da quota

    Quando se roda o comando quota -s pode se observar que existe tanto uma coluna quota, quanto uma coluna limit, e elas significam coisas diferentes. Vamos experimentar criando um arquivo de tamanho grande o suficiente para exceder a quota, mas não o limit:

    $ head -c 1400MB /dev/zero >test
    $ quota -s
    Disk quotas for user:
         Filesystem   space   quota   limit   grace   files   quota   limit   grace
    urquell.home:/home
                      1970M*  1954M   2149M   7days    5086   30000   30000
    urquell.home:/nobackup
                       367M   1954M   2149M           11992       0       0
    $ touch test-file
    $ echo oi >test-file
    $ mkdir test-dir

    Note que estamos com a quota estourada mas não somos impedidos de criar arquivos ou diretórios. Vamos substituir exceder o limit então para ver o que acontece:

    $ head -c 2000M /dev/zero >test
    head: erro de escrita de 'standard output': Cota da disco excedida
    $ quota -s
    Disk quotas for user:
         Filesystem   space   quota   limit   grace   files   quota   limit   grace
    urquell.home:/home
                      2149M*  1954M   2149M   7days    5086   30000   30000
    urquell.home:/nobackup
                       367M   1954M   2149M           11992       0       0
    $ touch test-file
    $ echo oi >test-file
    -bash: echo: erro de escrita: Cota da disco excedida
    $ mkdir test-dir
    mkdir: não foi possível criar o diretório “test-dir”: Cota da disco excedida

    Observe que depois de exceder o limit, não é possível mais escrever no disco.

    Essa janela que existe entre o space e o quota é o tempo de avisar as aplicações que a quota foi excedida para que elas parem de escrever, porque quando chegar no limit, o sistema simplesmente vai parar de funcionar completamente até que o espaço seja liberado de novo. De forma análoga isso acontece com a quota de número de arquivos, mas como os dois valores são iguais, ao chegar em 30 mil arquivos, o sistema vai simplesmente parar de permitir a criação de novos arquivos.