
Se eu executar sudo df -h
o comando, obtive a saída abaixo:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 12G 9.5G 1.1G 91% /
/dev/sda4 3.8G 1.5G 2.1G 41% /home
/dev/sda1 99M 75M 20M 80% /boot
tmpfs 3.9G 0 3.9G 0% /dev/shm
/dev/sdc1 51G 2.6G 46G 6% /u000
Mas como saberei a lista de diretórios em /sda2
? Por exemplo, se eu executar ls /
o comando, colocarei todos os diretórios na raiz.
$ ls /
bin cdunix dev etc lib lost+found misc mnt1 mtp net PatchInstall root selinux sys tmp usr
boot cron_4058 esm home lib64 media mnt mnt2 NB_DIR opt proc sbin srv tftpboot u000 var
- Mas existe algum comando ou maneira pela qual eu também possa listar seu sistema de arquivos?
- Desde então, há muito menos espaço restante em
/dev/sda2/
. Como posso desocupar mais espaço desta partição?
Responder1
Se você está procurando diretórios que estão ocupando espaço e não estão em uma partição diferente, então você deseja du -hx --max-depth=1 /
. O -x
instrui a não descer para diretórios que estejam em outros sistemas de arquivos (partições). O --max-depth=1
pedido é para imprimir apenas uma linha (listando o espaço total desse diretório e todos os subdiretórios) para cada diretório, /
em vez de para cada subdiretório.
Você pode então começar a detalhar os subdiretórios maiores para descobrir o que está ocupando espaço.
Responder2
Se estou lendo esta pergunta corretamente, existe um programa chamado tree
. Isso listaria todos os diretórios em uma estrutura semelhante a uma árvore. Com ele instalado, você pode fazer algo como:
tree -x
Onde -x
Stay apenas no sistema de arquivos atual. Ala encontre -xdev.
ATUALIZAÇÃO: Eu tentei tree -P /dev/xvda
e parecia ter mostrado diretórios nesse sistema de arquivos. O -P
comando significa padrão. Portanto, para responder à sua pergunta, você poderá usá-lo para listar diretórios em sistemas de arquivos.
Para listar os primeiros níveis no /
diretório, tente o comando:
tree -LP 1 /dev/xvda
onde L
é o nível Profundidade máxima de exibição da árvore de diretórios.
Consulte as páginas de manualaqui
Responder3
Mas como saberei a lista de diretórios em /sda2?
Não há diretórios em /dev/sda2, /dev/sda2 é uma partição no disco (sda é o disco e 2 é o número da partição).
Mas existe algum comando ou maneira pela qual eu também possa listar seu sistema de arquivos?
Como você tem apenas um sistema de arquivos montado, todos eles estão em /fs.
A melhor maneira de ver uma lista de sistemas de arquivos montados é usar mount:
$ sudo mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,relatime,size=10240k,nr_inodes=2018106,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,relatime,size=3232436k,mode=755)
/dev/sda5 on / type ext4 (rw,noatime,errors=remount-ro,data=ordered)
Para ver a quantidade de armazenamento usada por uma pasta você pode usar o du
comando, por exemplo:
~/tmp$ du -sh
752K .
du
tem muitas opções completas de uso. Uma opção realmente boa ao rastrear pastas grandes é --max-depth=1
limitar a profundidade da saída:
du -h --max-depth=1 /
7,9M /sbin
702M /lib
Você receberá muitas mensagens de erro se executar isso em/sem ser root.
du
pode ajudá-lo a descobrir quais arquivos excluir para liberar mais espaço. Se você não conseguir excluir nenhum arquivo, será necessário redimensionar a partição ou mover alguns dados para uma partição diferente.