[{"data":1,"prerenderedAt":175},["ShallowReactive",2],{"navigation":3,"latest-changelog-release":42,"\u002Fblog\u002Funderstanding-odoos-filestore-structure-whats-inside-and-why-it-matters":70,"\u002Fblog\u002Funderstanding-odoos-filestore-structure-whats-inside-and-why-it-matters-surround":170},[4],{"title":5,"path":6,"stem":7,"children":8,"page":41},"Blog","\u002Fblog","blog",[9,13,17,21,25,29,33,37],{"title":10,"path":11,"stem":12},"Clean Fix for the ‘Model Not in Registry’ Error in Odoo Addons","\u002Fblog\u002Fclean-fix-for-the-model-not-in-registry-error-in-odoo-addons","blog\u002Fclean-fix-for-the-model-not-in-registry-error-in-odoo-addons",{"title":14,"path":15,"stem":16},"From Sales to Production: The Story of a Connected Manufacturing Workflow in Odoo","\u002Fblog\u002Ffrom-sales-to-production-the-story-of-a-connected-manufacturing-workflow-in-odoo","blog\u002Ffrom-sales-to-production-the-story-of-a-connected-manufacturing-workflow-in-odoo",{"title":18,"path":19,"stem":20},"How to Install Odoo 18 Community Edition on Ubuntu Server","\u002Fblog\u002Fhow-to-install-odoo-18-community-edition-on-ubuntu-server","blog\u002Fhow-to-install-odoo-18-community-edition-on-ubuntu-server",{"title":22,"path":23,"stem":24},"How to Properly Backup Your Odoo Instance (Database + Filestore)","\u002Fblog\u002Fhow-to-properly-backup-your-odoo-instance-database-filestore","blog\u002Fhow-to-properly-backup-your-odoo-instance-database-filestore",{"title":26,"path":27,"stem":28},"Launch Your Odoo MVP in Weeks with MoSCoW Prioritization","\u002Fblog\u002Flaunch-your-odoo-mvp-in-weeks-with-moscow-prioritization","blog\u002Flaunch-your-odoo-mvp-in-weeks-with-moscow-prioritization",{"title":30,"path":31,"stem":32},"Managing Users and Groups on Linux: A Practical Guide","\u002Fblog\u002Fmanaging-users-and-groups-on-linux-a-practical-guide","blog\u002Fmanaging-users-and-groups-on-linux-a-practical-guide",{"title":34,"path":35,"stem":36},"Understanding Odoo's Filestore Structure: What’s Inside and Why It Matters","\u002Fblog\u002Funderstanding-odoos-filestore-structure-whats-inside-and-why-it-matters","blog\u002Funderstanding-odoos-filestore-structure-whats-inside-and-why-it-matters",{"title":38,"path":39,"stem":40},"What Is a BoM and How Does It Affect Product Costs?","\u002Fblog\u002Fwhat-is-a-bom-and-how-does-it-affect-product-costs","blog\u002Fwhat-is-a-bom-and-how-does-it-affect-product-costs",false,{"id":43,"title":44,"added":45,"body":50,"date":57,"description":58,"extension":59,"fixed":60,"image":60,"imageAlt":60,"improved":61,"meta":63,"navigation":64,"path":65,"seo":66,"stem":67,"version":68,"__hash__":69},"changelog\u002Fchangelog\u002Fv0.9.1.md","Current website version",[46,47,48,49],"Homepage introducing Koderstory and its work.","Services page for website, business system, and ERP work.","Blog with practical articles.","About page with company information and approach.",{"type":51,"value":52,"toc":53},"minimark",[],{"title":54,"searchDepth":55,"depth":55,"links":56},"",2,[],"2026-10-17","The current pre-1.0 baseline for the Koderstory website.","md",null,[62],"Replaced the About page company information section with a clearer contact call to action.",{},true,"\u002Fchangelog\u002Fv0.9.1",{"title":44,"description":58},"changelog\u002Fv0.9.1","0.9.1","2BmReZMoo2c1JW3Ek64_ZyALBF8Yx8MR4yi8uQnb8SE",{"id":71,"title":34,"author":72,"body":77,"date":165,"description":166,"extension":59,"image":76,"meta":167,"minRead":55,"navigation":64,"path":35,"seo":168,"stem":36,"__hash__":169},"blog\u002Fblog\u002Funderstanding-odoos-filestore-structure-whats-inside-and-why-it-matters.md",{"name":73,"to":74,"avatar":75},"Koderstory","https:\u002F\u002Fdevlog.koderstory.com",{"src":76,"alt":73},"\u002Fimages\u002Fkoderstory-avatar.png",{"type":51,"value":78,"toc":159},[79,88,93,96,105,112,128,131,142,146,149],[80,81,82,83,87],"p",{},"When exploring an Odoo installation, you may find a path like ",[84,85,86],"code",{},"~\u002F.local\u002Fshare\u002FOdoo\u002Ffilestore\u002Fyourdatabase\u002Faa\u002Fac\u002F...",". The two-letter folders can look random, and a database name that resembles a domain can be confusing. Here is what they mean.",[89,90,92],"h2",{"id":91},"what-is-the-filestore","What is the filestore?",[80,94,95],{},"Odoo keeps uploaded binary files—images, attachments, PDFs, and documents—outside the database in a dedicated filestore directory. This keeps large files separate from structured records. A typical location is:",[97,98,103],"pre",{"className":99,"code":101,"language":102,"meta":54},[100],"language-text","~\u002F.local\u002Fshare\u002FOdoo\u002Ffilestore\u002F\n","text",[84,104,101],{"__ignoreMap":54},[80,106,107,108,111],{},"When Odoo runs as a service, the path may be under the service user's home, such as ",[84,109,110],{},"\u002Fvar\u002Flib\u002Fodoo\u002F.local\u002Fshare\u002FOdoo\u002Ffilestore\u002F",".",[89,113,115,116,119,120,123,124,127],{"id":114},"why-are-there-folders-named-aa-ac-or-dc","Why are there folders named ",[84,117,118],{},"aa",", ",[84,121,122],{},"ac",", or ",[84,125,126],{},"dc","?",[80,129,130],{},"Odoo stores files using hashes and uses the beginning of a hash to place files into subdirectories. This avoids putting thousands of files in one directory and helps keep retrieval manageable as the filestore grows.",[80,132,133,134,137,138,141],{},"The directory immediately under ",[84,135,136],{},"filestore"," is the database name. A folder such as ",[84,139,140],{},"koderstory_com"," appears because the database was named that way; it is not derived automatically from the website domain.",[89,143,145],{"id":144},"what-should-you-back-up","What should you back up?",[80,147,148],{},"Keep the PostgreSQL database backup and the complete matching filestore directory together. Preserving only the database can leave attachment references without their files. Preserve every hashed subdirectory, and test restores in a staging environment so missing files are found before an emergency.",[80,150,151,152,111],{},"Originally published on ",[153,154,158],"a",{"href":155,"rel":156},"https:\u002F\u002Fdevlog.koderstory.com\u002Funderstanding-odoos-filestore-structure-whats-inside-and-why-it-matters",[157],"nofollow","Koderstory Devlog",{"title":54,"searchDepth":55,"depth":55,"links":160},[161,162,164],{"id":91,"depth":55,"text":92},{"id":114,"depth":55,"text":163},"Why are there folders named aa, ac, or dc?",{"id":144,"depth":55,"text":145},"2025-04-20","Learn where Odoo stores uploaded files, why the filestore uses hashed directories, and what to include in backups.",{},{"title":34,"description":166},"ggKBd4c1hMwM7-OO4FE2C6uahEteeaCX4CHnOLB0s0s",[171,173],{"title":30,"path":31,"stem":32,"description":172,"children":-1},"Practical Linux user and group commands for access control, team collaboration, and service isolation.",{"title":38,"path":39,"stem":40,"description":174,"children":-1},"Understand how an Odoo Bill of Materials describes product components and helps calculate manufacturing costs.",1792253291088]