Portál AbcLinuxu, 7. května 2025 03:29
Filesystem Size Used Avail Use% Mounted on /dev/sdb2 109G 107G 0 100% /když se ale podívám na obsazení disku, vidím, že by měl být prázdný:
du -h --max-depth=1 / --exclude=mnt --exclude=proc --exclude=srv | sort -rh 4.6G / 3.3G /usr 1.1G /var 222M /boot 30M /opt 6.9M /etc 2.2M /run 836K /root 16K /lost+found 8.0K /media 8.0K /.cache 4.0K /home 4.0K /exportZkusil jsem bez úspěchu různé varianty
prune
, nakonec jsem kompletně smazal vše co souviselo s dockerem (zastavit v systemd, rm -rf /var/lib/docker
), ale místo na disku se stále neuvolnilo.
Nevíte někdo, jak to místo uvolnit?
mkdir /mnt/temproot mount --bind / /mnt/temproot cd /mnt/temproot du -h --max-depth=1 ./ | sort -rh
Nevíte někdo, jak to místo uvolnit?
Jedno vysvětlení, které mě tady napadá: Když smažeš soubor, ale nějaký proces ho má stále otevřený, smaže se sice z adresářových struktur (proto se ta funkce jmenuje unlink()
), ale inode, metadata i data souboru tam pořád jsou, dokud se ten soubor nezavře. Teprve pak zmizí úplně a teprve pak se dá místo po něm uvolnit.
Jinými slovy: V době mezi tím smazáním všeho z Dockeru a hledáním volného místa, restartoval jsi to, pro jistotu? Restartování by nemělo být nutné, samozřejmě, pokud jsi si zcela jistý, že tam není
losetup
a spol.), který taky dokáže smazaný soubor držet při životě, dokonce bez „zjevného“ userspace procesu,mount
neukazuje nikde žádné pozůstatky overlay filesystémů, které by se třeba nedařilo odmountovat kvůli zapomenutým procesům, atd. atp.Snapshoty (jak už tu bylo řečeno) příčinou nebudou, protože Ext4 nic takového neumí. Leda že by tam snad byly „snapshoty“ na úrovni LVM (tedy na jiné úrovni abstrakce, kde nemají být, ale občas se takové věci bohužel stále ještě vidí).
Škoda, no.
Sice Ext4 nepoužívám, ale fakt by mě zajímalo, co přesně to mohlo být, jestli by se to stalo i s jiným FS a podobně.
Mrzí mě, že mě nenapadlo navrhnout spustit na tom fsck
, i když třeba dmesg
nehlásil žádný problém a normálně se to mountovalo, čistě pro jistotu… Samozřejmě jsou stavy, ze kterých fsck
nepomůže, ale pokud šlo „jenom“ o nějakou drobnou nesrovnalost kolem volného místa, kdoví, třeba by to bývalo pomohlo (nebo aspoň odhalilo případný problém).
du -h --max-depth=1 / --exclude=mnt --exclude=proc --exclude=srv | sort -rhAk sa ti tam nieco malo mountnut, ale nemountlo a potom sa tam nasypali data...
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.