SLES11 ext3 partitions can only store 50% of the files that can be stored on SLES10
This document (7009075) is provided subject to the disclaimer at the end of this document.
Environment
SUSE Linux Enterprise Server 11
SUSE Linux Enterprise Desktop 11
SUSE Linux Enterprise Desktop 11 Service Pack 1
SUSE Linux Enterprise Server 11 Service Pack 1
SUSE Linux Enterprise Server 11 Service Pack 2
SUSE Linux Enterprise Desktop 11 Service Pack 2
SUSE Linux Enterprise Server 11 Service Pack 3
SUSE Linux Enterprise Desktop 11 Service Pack 3
Situation
If you create new ext3 partitions on SLES11, where you want to store a large number of files (>1 Million) you need to make them bigger than on SLES10.
Resolution
Prerequisites
ext3 is able to store them in the inode, but an 128-byte inode has very little spare space to store those data. With 256-byte inodes there are about 120 bytes free in the inode so ACL's mostly fit there and the access is faster.
In order to address the increased inode size, the defaults for inode_ratio have been changed on SLES11 to 16384.
Resolution
If you don't use extended attributes or ACLs on your ext3 file system, you can restore the SLES10 behaviour by editing the file:
/etc/mke2fs.confand setting the default inode_size to 128 and the inode_ratio to 8192.
You can also do this on the fly when creating an ext3 file system by passing the bytes-per-inode parameter (-i) and the inode size parameter (-I) to the mkfs.ext3 command, e.g.:
mkfs.ext3 -i 8192 -I 128 /dev/sda1
During a SLES11 installation, you can set the bytes per inode ratio to 8192 and inode size to 128 for ext3 in the File System Options.
In an autoyast profile, you can use the fs_options tag therefore, for example:
<partitioning config:type="list">
<drive>
<device>/dev/sda</device>
<initialize config:type="boolean">true</initialize>
<partitions config:type="list">
<partition>
<filesystem config:type="symbol">ext3</filesystem>
<format config:type="boolean">true</format>
<fs_options>
<opt_bytes_per_inode>
<option_str>-i</option_str>
<option_value>8192</option_value>
</opt_bytes_per_inode>
<opt_inode_density>
<option_str>-I</option_str>
<option_value>128</option_value>
</opt_inode_density>
</fs_options>
<mount>/</mount>
<partition_id config:type="integer">131</partition_id>
<partition_type>primary</partition_type>
<size>25G</size>
</partition>
Be aware that the number of inodes on a file system cannot be changed after it has been created, unless the file system gets extended.
Disclaimer
This Support Knowledgebase provides a valuable tool for SUSE customers and parties interested in our products and solutions to acquire information, ideas and learn from one another. Materials are provided for informational, personal or non-commercial use within your organization and are presented "AS IS" WITHOUT WARRANTY OF ANY KIND.
- Document ID:7009075
- Creation Date: 29-Jul-2011
- Modified Date:03-Mar-2020
-
- SUSE Linux Enterprise Server
For questions or concerns with the SUSE Knowledgebase please contact: tidfeedback[at]suse.com