Search code examples
garbage-collectionipfs

How can I completely clean IPFS repo?


After running following command, related: How do I unpin and remove all IPFS content from my machine?:

# unpin and remove all IPFS content from my machine
ipfs pin ls --type recursive | cut -d' ' -f1 | ifne xargs -n1 ipfs pin rm
ipfs repo gc

Size of the .ipfs repo still remains as it is:

$ du -sh ~/.ipfs
1.4G    .ipfs

I can do rm -rf ~/.ipfs && ipfs init but my IPFS id is re-initialized where I want to keep my original peer identity without removing it.

I want to completely clean content of the IPFS repo. How can I achieve it? I observe that after removing pinned objects still size of the ~/.ipfs is not changed.


Solution

  • removing pinned objects do not change repo size. Blocks will be deleted during GC later if they are not used by anything else like MFS.

    If you are using flatfs datastore, then storage space will be freed. In badgerds they will be overwritten by newer content but usually not freed.