Subject: [PATCH] doc: Suggest decreasing bytes per inode.

From: Mohammed Sadiq <[email-masked]>
Date: Fri, 29 Sep 2017 08:59:17 +0530 (IST)

This may not be optimal. But I believe this might be good.

On my system (with 21 GiB root partition), I was always getting
"No space left on device" error while `df -h' was reporting 7 GiB
of free space. After further investigation I found that the inode
space was filled (df -i).

From 9b44896352f63f1417e241a193267a6ffdb72017 Mon Sep 17 00:00:00 2001
From: Mohammed Sadiq <[email-masked]>
Date: Fri, 29 Sep 2017 08:52:02 +0530
Subject: [PATCH] doc: Suggest decreasing bytes per inode.

By default bytes per inode is 16KiB. As the store files can be really
small the inode space may get filled and errors regarding no empty space
begins to appear.

Reducing the size to 8KiB has an overhead of about 16MiB per GiB
reserved for inode, better than having lots of cannot be used partition
space.

* doc/guix.texi (Disk Partitioning): Suggest to decrease bytes per inode
for small partitions.
---
 doc/guix.texi | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/doc/guix.texi b/doc/guix.texi
index 1b329d255..a150fa024 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -7998,6 +7998,17 @@ partition lives at @file{/dev/sda1}, a file system with the label
 mkfs.ext4 -L my-root /dev/sda1
 @end example
 
+As the store (@pxref{The Store}) shall be having lots of directories,
+symbolic links, and small files, the inode space may run out before
+the disk space is filled, especially if the partition size is small.
+Decreasing the bytes per inode shall be better to avoid related issues.
+So, with partition @file{/dev/sda1}, and with a label @code{my-root},
+bytes per inode can be set with:
+
+@example
+mkfs.ext4 -L my-root -i 8192 /dev/sda1
+@end example
+
 @cindex encrypted disk
 If you are instead planning to encrypt the root partition, you can use
 the Cryptsetup/LUKS utilities to do that (see @inlinefmtifelse{html,
-- 
2.14.1