From: Paul Coray (paul.coray@unibas.ch)
Date: Thu Feb 22 2007 - 11:25:58 EST
Hi all,
First, thanks to G. Bakalarski, Brad Morrison, Darren Dunham and Rainer
Heilke for helping me to sort this out.
Short answer: This limitation (minimal number of bytes per inode 1048576
for UFS bigger than 1TB) is a design decision by Sun, that cannot be
overridden - it is hardcoded in newfs and mkfs, and is due to the time
it would take for fsck and other recovery options on big volumes with
lots of small files.
In times where UFS-logging is a must in any situation and the default
since Solaris 10, this decision is questionable. There is a pending RFE
(5015643 Remove or reduce the nbpi restriction from *mkfs_ufs* for UFS
mtb filesystems) and patches for OpenSolaris-newfs available - see
http://groups.google.com/group/comp.unix.solaris/browse_thread/thread/ac5fb4607ab7677b
So the only options in this kind of situation are:
1. Decrease the size of the slice/FS to <1TB
2. Use patched version of newfs
3. Use ZFS
In my situation, talking of a highly productive system that holds all
user data, I surely won't go for 2. I'd like to give ZFS a shot, but
having little experience with it, could lead me to 1.
Again, thanks to the ones who helped me out, and to all who contribute
to the wonderful amount of expertise on this list.
Paul
Original post:
Hello all,
System: Solaris 10 6/06 (Sparc), fully patched.
I need to transfer all our homedirectories with lots of small files to a
new volume (ST6140 RAID 5, 1.3TB). Default number of bytes per inode
results in way too few inodes.
So I want to lower the nbpi with the -i option of newfs. Using 8192 or
any lower number for nbpi does not have any effect on the number of
inodes in the resulting FS, as to see in the output of mkfs -m
/dev/rdsk/cXtXdXsX... What is going wrong?
Below, first the result of newfs with no options (default nbpi 1048576
for FS greater than 1TB, according to manpage), second newfs -i 8192 -
both produce nbpi of 997778 !
Thanks in advance for assistance.
Paul
---------------------------------------------------------------
# newfs /dev/rdsk/c4t600A0B800026AD600000075945ADB77Ed0s0
newfs: /dev/rdsk/c4t600A0B800026AD600000075945ADB77Ed0s0 last mounted as
/mnt
newfs: construct a new file system
/dev/rdsk/c4t600A0B800026AD600000075945ADB77Ed0s0: (y/n)? y
Warning: 896 sector(s) in last cylinder unallocated
/dev/rdsk/c4t600A0B800026AD600000075945ADB77Ed0s0: 2926896256
sectors in 476383 cylinders of 48 tracks, 128 sectors
1429148.5MB in 3332 cyl groups (143 c/g, 429.00MB/g, 448 i/g)
super-block backups (for fsck -F ufs -o b=#) at:
32, 878752, 1757472, 2636192, 3514912, 4393632, 5272352, 6151072, 7029792,
7908512,
Initializing cylinder groups:
..................................................................
super-block backups for last 10 cylinder groups at:
2918690080, 2919568800, 2920447520, 2921326240, 2922204960, 2923083680,
2923954208, 2924832928, 2925711648, 2926590368
# mkfs -m /dev/rdsk/c4t600A0B800026AD600000075945ADB77Ed0s0
mkfs -F ufs -o
nsect=128,ntrack=48,bsize=8192,fragsize=8192,cgsize=143,free=1,rps=1,nbpi=997778,opt=t,apc=0,gap=0,nrpos=1,maxcontig=128,mtb=y
/dev/rdsk/c4t600A0B800026AD600000075945ADB77Ed0s0 2926896256
---------------------------------------------------------------
# newfs -i 8192 /dev/rdsk/c4t600A0B800026AD600000075945ADB77Ed0s0
newfs: construct a new file system
/dev/rdsk/c4t600A0B800026AD600000075945ADB77Ed0s0: (y/n)? y
Warning: 896 sector(s) in last cylinder unallocated
/dev/rdsk/c4t600A0B800026AD600000075945ADB77Ed0s0: 2926896256
sectors in 476383 cylinders of 48 tracks, 128 sectors
1429148.5MB in 3332 cyl groups (143 c/g, 429.00MB/g, 448 i/g)
super-block backups (for fsck -F ufs -o b=#) at:
32, 878752, 1757472, 2636192, 3514912, 4393632, 5272352, 6151072, 7029792,
7908512,
Initializing cylinder groups:
..................................................................
super-block backups for last 10 cylinder groups at:
2918690080, 2919568800, 2920447520, 2921326240, 2922204960, 2923083680,
2923954208, 2924832928, 2925711648, 2926590368
# mkfs -m /dev/rdsk/c4t600A0B800026AD600000075945ADB77Ed0s0
mkfs -F ufs -o
nsect=128,ntrack=48,bsize=8192,fragsize=8192,cgsize=143,free=1,rps=1,nbpi=997778,opt=t,apc=0,gap=0,nrpos=1,maxcontig=128,mtb=y
/dev/rdsk/c4t600A0B800026AD600000075945ADB77Ed0s0 2926896256
-- Paul Coray Administrator Server und Netzwerk Oeffentliche Bibliothek der Universitaet Basel EDV-Abteilung Schoenbeinstrasse 18-20 CH-4056 Basel Tel: +41 61 267 05 13 Fax: +41 61 267 31 03 mailto:paul.coray@unibas.ch http://www.ub.unibas.ch _______________________________________________ sunmanagers mailing list sunmanagers@sunmanagers.org http://www.sunmanagers.org/mailman/listinfo/sunmanagers
This archive was generated by hypermail 2.1.7 : Wed Apr 09 2008 - 23:41:41 EDT