02-23-2008
Mirusnet, you're right, there's no normal way to change this param on UFS.
From the
Sun manual -
Quote:
The maximum number of subdirectories per directory in a UFS file system is 32,767. This limit is predefined and cannot be changed.
Although this is easily avoided by changing your approach to this issue; Unix file systems are not optimised for large numbers of files in directories (although this can be tweaked using tunefs), you will get much better performance by having a deeper structure rather than a flat one. Implement an index layer on top of your existing flat structure, go for a B+ tree type approach.
Hope this helps,
-c
10 More Discussions You Might Find Interesting
1. Linux
I'm sitting here late at night, reading linux from scratch, and I come to this part:
http://lfs.osuosl.org/lfs/view/stable/chapter06/creatingdirs.html
my question to you, the all knowing unix.com'ers is this: what's the difference between using the install command as they do, and using the... (1 Reply)
Discussion started by: thmnetwork
1 Replies
2. Shell Programming and Scripting
Hi,
I look for a script to create 150 directories :
d000
d001
d002
...
...
d149
would you help me please ?
I think it would be
for i
mkdir d$i
Many thanks.
PS :
#uname -a
AIX fserver 3 5 0050691A4C00 (2 Replies)
Discussion started by: big123456
2 Replies
3. Shell Programming and Scripting
I am having trouble using cp and mkdir commands on a small script. The problem is I have spaces what I am trying to mkdir and then copy. Any suggestions on how I can solve this problem? I've tried searching online.
while read linefile
do
echo mkdir -p $CPP$linefile | cut -d / -f 1-5,8-12
... (10 Replies)
Discussion started by: imagiro1
10 Replies
4. Shell Programming and Scripting
Hi, please help me with this small script
#!/bin/sh
curdir=`pwd`
n20=$curdir'/n20/'
msat=$curdir'/n20/msat/'
if
then
mkdir $n20
fi
if
then
mkdir $msat
fi
for a in 30 40 50 60 70 80
do (4 Replies)
Discussion started by: Dark2Bright
4 Replies
5. Shell Programming and Scripting
Dear,
I have the following script:
maak_backup ()
{
echo 'Maken van tijdelijke bestanden, even geduld aub.'
for i in /home/yannick/* ;
do
cp -r $i $i.bac
done
if ;
then
echo 'Backup map = OK!'
echo 'Bezig met kopiëren, even geduld... (9 Replies)
Discussion started by: yadeki
9 Replies
6. Linux
Hi all, i am new to Linux and need some help.
I used the command: mkdir super
Directory super is created
When i try to change to this directory using: cd /super
I get: bash: cd: /super: No such file or directory
when i use: rm super
I get: rm: cannot remove 'super': Is a directory
What... (5 Replies)
Discussion started by: Deside
5 Replies
7. Homework & Coursework Questions
Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted!
1. The problem statement, all variables and given/known data:
Do the procedure, which if there are 5 parameters then it creates 4 directories with names of 4 parameters, in... (2 Replies)
Discussion started by: bolones
2 Replies
8. UNIX for Dummies Questions & Answers
Howdy,
Puttering around in unix, and read this in the mkdir man page:
"The mkdir utility creates the directories named as operands..."
What does this mean, i.e. as operands?
Many thanks,
DN (2 Replies)
Discussion started by: danuke
2 Replies
9. UNIX for Dummies Questions & Answers
Hi, I used "mkdir job{0001..10}" do get directories. Now I want to create directories with a variable, for exemple "mkdir job{0001..$a}". When a=5 I get the directory "job{0001..5}". What have i to change to get job0001,...,job0005 :/
Thx for ur help :) (1 Reply)
Discussion started by: E_taks
1 Replies
10. UNIX for Beginners Questions & Answers
hi linux expert
what is a difference between:
mkdir test and mkdir ./test
and also
if ( -e /test ) then and if ( -e ./test ) then
thanks in advance
Please use icode or code tags next time for your code and data (1 Reply)
Discussion started by: abdossamad2003a
1 Replies
tunefs(1M) System Administration Commands tunefs(1M)
NAME
tunefs - tune an existing UFS file system
SYNOPSIS
tunefs [-a maxcontig] [-d rotdelay] [-e maxbpg] [-m minfree] [-o space | time] special | filesystem
DESCRIPTION
tunefs is designed to change the dynamic parameters of a file system that affect the layout policies. When using tunefs with filesystem,
filesystem must be in /etc/vfstab. The parameters that can be changed are indicated by the options given below.
OPTIONS
The following options are supported:
-a maxcontig
The maximum number of logical blocks, belonging to one file, that is allocated contiguously. The default is calculated as follows:
maxcontig = disk drive maximum transfer size / disk block size
If the disk drive's maximum transfer size cannot be determined, the default value for maxcontig is calculated from kernel parameters as
follows:
If maxphys is less than ufs_maxmaxphys, which is 1 Mbyte, then maxcontig is set to maxphys. Otherwise, maxcontig is set to ufs_maxmax-
phys.
You can set maxcontig to any positive integer value.
The actual value will be the lesser of what has been specified and what the hardware supports.
-d rotdelay
This parameter is obsolete as of the Solaris 10 release. The value is always set to 0, regardless of the input value.
-e maxbpg
Indicates the maximum number of contiguous logical blocks any single file can allocate from a cylinder group before it is forced to
begin allocating blocks from another cylinder group. Typically this value is set to approximately one quarter of the total contiguous
logical blocks in a cylinder group. The intent is to prevent any single file from using up all the blocks in a single cylinder group,
thus degrading access times for all files subsequently allocated in that cylinder group.
The effect of this limit is to cause big files to do long seeks more frequently than if they were allowed to allocate all the blocks in
a cylinder group before seeking elsewhere. For file systems with exclusively large files, this parameter should be set higher.
-m minfree
Specifies the minimum free space threshold, or the percentage of space held back from normal users. This value can be set to 0. How-
ever, up to a factor of three in throughput will be lost over the performance obtained at a 10% threshold. Note: If the value is raised
above the current usage level, users will be unable to allocate files until enough files have been deleted to get under the higher
threshold.
-o space|time
The file system can either be instructed to try to minimize the time spent allocating blocks, or to try to minimize the space fragmen-
tation on the disk. The default is time.
Generally, you should optimize for time unless the file system is over 90% full.
USAGE
See largefile(5) for the description of the behavior of tunefs when encountering files greater than or equal to 2 Gbyte ( 2**31 bytes).
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
SEE ALSO
mkfs_ufs(1M), newfs(1M), attributes(5), largefile(5)
SunOS 5.10 5 Dec 2003 tunefs(1M)