Armazenamento e Quota
Cada conta pode armazenar informações de uma forma similar a um disco de computador. Este armazenamento está disponível o tempo todo em praticamente todas as máquinas do departamento mediante acesso do usuário. Existem servidores responsáveis apenas pelo armazenamento das informações dos usuários e cada vez que um usuário faz qualquer interação com o seu “disco”, estes servidores são contatados para obter arquivos do “disco” ou fazer alterações. Para transferir arquivos de dentro para fora ou vice-versa, copie via SSH.
Na prática, isso significa que todos os computadores são sincronizados. Se você entrar mais de uma vez na mesma conta em computadores diferentes do laboratório, eles compartilharão todos os arquivos colocados no “disco”. Isso pode ser a fonte de conflitos: Se você tentar rodar um navegador por exemplo em uma máquina e depois tentar rodar o navegador novamente em outra máquina, você receberá um aviso de que já existe uma instância deste navegador rodando.
Cada usuário possui um limite de armazenamento de arquivos. Este limite é chamado de quota, e é gerenciado por um programa também chamado quota
. A quota básica é de:
Diretório raiz |
Espaço em disco máximo |
Número de arquivos máximo |
Cópia de segurança |
---|---|---|---|
/home |
10GB (10 · 109 bytes) |
Não tem limite |
Duas vezes ao dia |
/nobackup |
10GB (10 · 109 bytes) |
Não tem limite |
Não tem |
Isso significa que cada usuário possui, se bem gerenciado, 20GB 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} |
/home |
|
/nobackup/{grupo}/usuário |
Não importante e que pode ser criado, baixado de novo |
/nobackup |
Dica
/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 recuperar um arquivo ou diretório.
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 9766M 9766M 5084 0 0
urquell.home:/nobackup
367M 9766M 9766M 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* 9766M 9766M 5086 0 0
urquell.home:/nobackup
367M 9766M 9766M 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 o conteúdo sem problema.
Se apagar, os softwares criam 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 paramelhorar 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
Aviso
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.
Arquivos e diretórios sem cópia de segurança
Alguns arquivos e diretórios NÃO TEM cópia de segurança. Estes são padrões de --exclude
do rsync, e por exemplo tudo abaixo de ~/nobkp e de ~/a/nobkp também é excluído:
backup/
[cC]ache4
[cC]ache
.[cC]ache
.mozilla/**/Cache*
.opera/opcache/*
*/*/.openoffice.org2/**/*cache
*/*/.jpi_cache/*
favicon_cache/*
nobk/*
nobkp/*
nobackup/*
swap
GNUstep/*
msn/*
.xsession-errors
amsn/*
.amsn/*
.amsn*/*
*/*/.amsn/*
*/*/.opera/acpo/*
*/*/.fontconfig/*
.xMule/*
.[ax]Mule/*
.azureus/*
.gaim/*
.dbus/*
.kde/*
.metacity/sessions/*.ms
.fontconfig/*
.themes/*
.thumbnails/*
.macromedia/*
.wine/*
raw/*
*.raw
*.qcow2
.Trash*/***
Trash*/***
trash*/***
.dropbox.cache/***
.nfs*
lost+found