<html><body><p><font size="2" face="Arial">Hi,</font><br><br><font size="2" face="Arial">>> How can I prove that data of a small file is stored in the inode (and not on a data nsd)?<br></font><br><font size="2" face="Arial">You may use </font><font size="2" face="Arial">echo "inode file_inode_number" | tsdbfs fs_device | grep indirectionLevel and if it points to INODE, then the file is stored in the inodes</font><br><br><i><font size="2" color="#0000FF" face="Arial"># 4K Inode Size</font></i><br><i><font size="2" color="#0000FF" face="Arial"># mmlsfs gpfs3a | grep 'Inode size'</font></i><br><i><font size="2" color="#0000FF" face="Arial"> -i                 4096                     </font></i><b><i><font size="2" color="#0000FF" face="Arial">Inode size</font></i></b><i><font size="2" color="#0000FF" face="Arial"> in bytes</font></i><br><br><i><font size="2" color="#0000FF" face="Arial"># Small file </font></i><br><i><font size="2" color="#0000FF" face="Arial"># ls -l /mnt/gpfs3a/hello.txt </font></i><br><i><font size="2" color="#0000FF" face="Arial">-rw-r--r-- 1 root root 6 Jul 17 08:32 /mnt/gpfs3a/hello.txt</font></i><br><br><i><font size="2" color="#0000FF" face="Arial"># ls -i /mnt/gpfs3a/hello.txt </font></i><br><i><font size="2" color="#0000FF" face="Arial">91649 /mnt/gpfs3a/hello.txt</font></i><br><br><i><font size="2" color="#0000FF" face="Arial">#File is inlined within Inode</font></i><br><i><font size="2" color="#0000FF" face="Arial"># echo "inode 91649" | tsdbfs gpfs3a | grep indirectionLevel</font></i><br><i><font size="2" color="#0000FF" face="Arial"> </font></i><b><i><font size="2" color="#0000FF" face="Arial"> </font></i></b><b><i><font size="2" color="#0000FF" face="Arial">indirectionLevel</font></i></b><b><i><font size="2" color="#0000FF" face="Arial">=INODE</font></i></b><i><font size="2" color="#0000FF" face="Arial"> status=USERFILE</font></i><br><br><font size="2" face="Arial">Regards,</font><br><font size="2" face="Arial">-Kums</font><br><br><br><br><img width="16" height="16" src="cid:1__=8FBB0EA9DFD778458f9e8a93df938690918c8FB@" border="0" alt="Inactive hide details for "Billich  Heinrich Rainer (ID SD)" ---07/17/2019 07:49:56 AM---Hello, How can I prove that data of a "><font size="2" color="#424282">"Billich  Heinrich Rainer (ID SD)" ---07/17/2019 07:49:56 AM---Hello, How can I prove that data of a small file is stored in the inode (and not on a data nsd)?</font><br><br><font size="2" color="#5F5F5F">From:        </font><font size="2">"Billich  Heinrich Rainer (ID SD)" <heinrich.billich@id.ethz.ch></font><br><font size="2" color="#5F5F5F">To:        </font><font size="2">gpfsug main discussion list <gpfsug-discuss@spectrumscale.org></font><br><font size="2" color="#5F5F5F">Date:        </font><font size="2">07/17/2019 07:49 AM</font><br><font size="2" color="#5F5F5F">Subject:        </font><font size="2">[EXTERNAL] [gpfsug-discuss] How to prove that data is in inode</font><br><font size="2" color="#5F5F5F">Sent by:        </font><font size="2">gpfsug-discuss-bounces@spectrumscale.org</font><br><hr width="100%" size="2" align="left" noshade style="color:#8091A5; "><br><br><br><tt><font size="2">Hello,<br><br>How can I prove that data of a small file is stored in the inode (and not on a data nsd)?<br><br>We have a filesystem with 4k inodes on Scale 5.0.2 , but it seems there is no file data in the inodes?<br><br>I would expect that 'stat' reports 'Blocks: 0'  for a small file, but I see 'Blocks:1'.<br><br>Cheers,<br><br>Heiner<br><br>I tried<br><br>[]# rm -f test; echo hello > test<br>[]# ls -ls test<br>1 -rw-r--r-- 1 root root 6 Jul 17 13:11 test<br>[root@testnas13ems01 test]# stat test<br>  File: ‘test’<br>  Size: 6                          Blocks: 1          IO Block: 1048576 regular file<br>Device: 2dh/45d                 Inode: 353314      Links: 1<br>Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)<br>Access: 2019-07-17 13:11:03.037049000 +0200<br>Modify: 2019-07-17 13:11:03.037331000 +0200<br>Change: 2019-07-17 13:11:03.037259319 +0200<br> Birth: -<br>[root@testnas13ems01 test]# du test<br>1                 test<br>[root@testnas13ems01 test]# du -b test<br>6                 test<br>[root@testnas13ems01 test]#<br><br>Filesystem<br><br># mmlsfs f****<br>flag                value                    description<br>------------------- ------------------------ -----------------------------------<br> -f                 32768                    Minimum fragment (subblock) size in bytes<br> -i                 4096                     Inode size in bytes<br> -I                 32768                    Indirect block size in bytes<br> -m                 1                        Default number of metadata replicas<br> -M                 2                        Maximum number of metadata replicas<br> -r                 1                        Default number of data replicas<br> -R                 2                        Maximum number of data replicas<br> -j                 cluster                  Block allocation type<br> -D                 nfs4                     File locking semantics in effect<br> -k                 nfs4                     ACL semantics in effect<br> -n                 32                       Estimated number of nodes that will mount file system<br> -B                 1048576                  Block size<br> -Q                 user;group;fileset       Quotas accounting enabled<br>                    user;group;fileset       Quotas enforced<br>                    user;group;fileset       Default quotas enabled<br> --perfileset-quota Yes                      Per-fileset quota enforcement<br> --filesetdf        Yes                      Fileset df enabled?<br> -V                 20.01 (5.0.2.0)          Current file system version<br>                    15.01 (4.2.0.0)          Original file system version<br> --create-time      ***** 2017 File system creation time<br> -z                 No                       Is DMAPI enabled?<br> -L                 33554432                 Logfile size<br> -E                 Yes                      Exact mtime mount option<br> -S                 relatime                 Suppress atime mount option<br> -K                 whenpossible             Strict replica allocation option<br> --fastea           Yes                      Fast external attributes enabled?<br> --encryption       No                       Encryption enabled?<br> --inode-limit      1294592                  Maximum number of inodes in all inode spaces<br> --log-replicas     0                        Number of log replicas<br> --is4KAligned      Yes                      is4KAligned?<br> --rapid-repair     Yes                      rapidRepair enabled?<br> --write-cache-threshold 0                   HAWC Threshold (max 65536)<br> --subblocks-per-full-block 32               Number of subblocks per full block<br> -P                 system;data              Disk storage pools in file system<br> --file-audit-log   No                       File Audit Logging enabled?<br> --maintenance-mode No                       Maintenance Mode enabled?<br> -d                 ******<br>-A                 yes                      Automatic mount option<br> -o                 nfssync,nodev            Additional mount options<br> -T                 /****                  Default mount point<br> --mount-priority   0                        Mount priority<br><br>-- <br>=======================<br>Heinrich Billich<br>ETH Zürich<br>Informatikdienste<br>Tel.: +41 44 632 72 56<br>heinrich.billich@id.ethz.ch<br>========================<br> <br> <br><br>_______________________________________________<br>gpfsug-discuss mailing list<br>gpfsug-discuss at spectrumscale.org<br></font></tt><tt><font size="2"><a href="http://gpfsug.org/mailman/listinfo/gpfsug-discuss">http://gpfsug.org/mailman/listinfo/gpfsug-discuss</a></font></tt><tt><font size="2"> <br><br></font></tt><br><br><BR>
</body></html>